Java Program to Implement JobStateReasons API

This Java program Implements JobStateReasons API.Class JobStateReasons is a printing attribute class, a set of enumeration values, that provides additional information about the job’s current state, i.e., information that augments the value of the job’s JobState attribute.

Here is the source code of the Java Program to Implement JobStateReasons API.The Java program is successfully compiled and run on a Linux system. The program output is also shown below.

import java.util.Collection;
import javax.print.attribute.Attribute;
import javax.print.attribute.standard.JobStateReason;
import javax.print.attribute.standard.JobStateReasons;
 
public class JobStateReasonsImpl
{
    private JobStateReasons jobStateReasons;
 
    /**
     * Construct a new, empty job state reasons attribute; the underlying hash
     * set has the default initial capacity and load factor.
    **/
    public JobStateReasonsImpl()
    {
        jobStateReasons = new JobStateReasons();
    }
 
    /**
     * Construct a new job state reasons attribute that contains the same
     * JobStateReason objects as the given collection.
    **/
    public JobStateReasonsImpl(Collection<JobStateReason> collection)
    {
        jobStateReasons = new JobStateReasons(collection);
    }
 
    /**
     * Construct a new, empty job state reasons attribute; the underlying hash
     * set has the given initial capacity and the default load factor.
    **/
    public JobStateReasonsImpl(int initialCapacity)
    {
        jobStateReasons = new JobStateReasons(initialCapacity);
    }
 
    /**
     * Construct a new, empty job state reasons attribute; the underlying hash
     * set has the given initial capacity and load factor.
     **/
    public JobStateReasonsImpl(int initialCapacity, float loadFactor)
    {
        jobStateReasons = new JobStateReasons(initialCapacity, loadFactor);
    }
 
    /**
     * Adds the specified element to this job state reasons attribute if it is
     * not already present.
    **/
    public boolean add(JobStateReason o)
    {
        return jobStateReasons.add(o);
    }
 
    /**
     * Get the printing attribute class which is to be used as the "category"
     * for this printing attribute value.
    **/
    public Class<? extends Attribute> getCategory()
    {
        return jobStateReasons.getCategory();
    }
 
    /**
     * Get the name of the category of which this attribute value is an
     * instance.
     **/
    public String getName()
    {
        return jobStateReasons.getName();
    }
 
    /** return true if this set contains the specified element **/
    public boolean contains(Object obj)
    {
        return jobStateReasons.contains(obj);
    }
 
    /** returns true if the set is empty **/
    public boolean isEmpty()
    {
        return jobStateReasons.isEmpty();
    }
 
    /** removes the specified element from this set if present **/
    public boolean remove(Object obj)
    {
        return jobStateReasons.remove(obj);
    }
 
    /** returns the number of elements in set **/
    public int size()
    {
        return jobStateReasons.size();
    }
 
    /** removes all elements from this set **/
    public void clear()
    {
        jobStateReasons.clear();
    }
 
    /** Returns an array containing all of the elements in this set. **/
    public Object[] toArray() 
    {
        return jobStateReasons.toArray();
    }
 
    public static void main(String... arg)
    {
        JobStateReasonsImpl jobStateReasons = new JobStateReasonsImpl();
        jobStateReasons.add(JobStateReason.COMPRESSION_ERROR);
        jobStateReasons.add(JobStateReason.JOB_CANCELED_BY_USER);
        jobStateReasons.add(JobStateReason.JOB_COMPLETED_WITH_WARNINGS);
        jobStateReasons.add(JobStateReason.DOCUMENT_FORMAT_ERROR);
 
        System.out.println("the name of category " + jobStateReasons.getName());
        System.out.println("the jobStateReason are");
        Object[] array = (Object[]) jobStateReasons.toArray();
        for (int i = 0; i < array.length; i++)
        {
            System.out.print(array[i] + "\t");
        }
        System.out.println();
 
        jobStateReasons.clear();
        System.out.println("jobStateReasons cleared");
        if (jobStateReasons.isEmpty())
            System.out.println("jobStateReasons is empty");
        else
            System.out.println("jobStateReasons is not empty");
    }
}
$ javac JobStateReasonsImpl.java
$ java JobStateReasonsImpl
the name of category job-state-reasons
the jobStateReason are
compression-error	document-format-error	job-completed-with-warnings	job-canceled-by-user	
jobStateReasons cleared
jobStateReasons is not empty

Related posts:

Guide to Java OutputStream
OAuth2.0 and Dynamic Client Registration
Java Program to subtract two large numbers using Linked Lists
Java Program to Perform Partition of an Integer in All Possible Ways
Java Program to Check Whether Topological Sorting can be Performed in a Graph
Java Program to Implement Sorted Circular Doubly Linked List
Java Program to Implement Karatsuba Multiplication Algorithm
Multipart Upload with HttpClient 4
A Quick Guide to Spring Cloud Consul
Java Program to Check if a Given Set of Three Points Lie on a Single Line or Not
Java Program to Find the GCD and LCM of two Numbers
Java Program to Implement Find all Cross Edges in a Graph
Sử dụng CountDownLatch trong Java
Serialize Only Fields that meet a Custom Criteria with Jackson
Spring Boot - Bootstrapping
Changing Annotation Parameters At Runtime
Setting the Java Version in Maven
Custom JUnit 4 Test Runners
Working With Maps Using Streams
Java Program to Implement a Binary Search Algorithm for a Specific Search Sequence
Wrapper Classes in Java
Check if there is mail waiting
4 tính chất của lập trình hướng đối tượng trong Java
Java Program to Implement Efficient O(log n) Fibonacci generator
Thực thi nhiều tác vụ cùng lúc như thế nào trong Java?
Hướng dẫn Java Design Pattern – Builder
Java Program to implement Circular Buffer
Java Program to Check if an UnDirected Graph is a Tree or Not Using DFS
Giới thiệu Design Patterns
Static Content in Spring WebFlux
Guide to Escaping Characters in Java RegExps
Spring Security Logout