classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cp-patches] FYI: Added missing stuff to JobStateReasons and PrinterStat


From: Wolfgang Baer
Subject: [cp-patches] FYI: Added missing stuff to JobStateReasons and PrinterStateReasons
Date: Mon, 19 Dec 2005 10:30:48 +0100
User-agent: Debian Thunderbird 1.0.7 (X11/20051017)

Hi,

this add the missing methods / constructors too javax.print.attribute.standard.JobStateReasons and
javax.print.attribute.standard.PrinterStateReasons.

Regards,
Wolfgang

2005-12-19  Wolfgang Baer  <address@hidden>

        * javax/print/attribute/standard/JobStateReasons.java:
        Added and updated javadocs to class and methods.
        (JobStateReasons): New constructor.
        (JobStateReasons): Likewise.
        (JobStateReasons): Likewise.
        (JobStateReasons): Likewise.
        (add): New overridden method.
        * javax/print/attribute/standard/PrinterStateReasons.java:
        Added and updated javadocs to class and methods.
        (PrinterStateReasons): New constructor.
        (PrinterStateReasons): Likewise.
        (PrinterStateReasons): Likewise.
        (PrinterStateReasons): Likewise.
        (printerStateReasonSet): New method.
        (put): New overridden method.   
Index: javax/print/attribute/standard/JobStateReasons.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/javax/print/attribute/standard/JobStateReasons.java,v
retrieving revision 1.4
diff -u -r1.4 JobStateReasons.java
--- javax/print/attribute/standard/JobStateReasons.java 2 Jul 2005 20:32:46 
-0000       1.4
+++ javax/print/attribute/standard/JobStateReasons.java 19 Dec 2005 09:28:14 
-0000
@@ -1,5 +1,5 @@
 /* JobStateReasons.java --
-   Copyright (C) 2004 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -38,12 +38,23 @@
 
 package javax.print.attribute.standard;
 
+import java.util.Collection;
 import java.util.HashSet;
+import java.util.Iterator;
 
 import javax.print.attribute.PrintJobAttribute;
 
 /**
+ * The <code>JobStateReasons</code> attribute provides the set of 
+ * additional informations available about the current state of a print job. 
+ * <p>
+ * <b>IPP Compatibility:</b> JobStateReasons is an IPP 1.1 attribute.
+ * </p>
+ * @see javax.print.attribute.standard.JobState
+ * @see javax.print.attribute.standard.JobStateReason
+ * 
  * @author Michael Koch (address@hidden)
+ * @author Wolfgang Baer (address@hidden)
  */
 public final class JobStateReasons extends HashSet
   implements PrintJobAttribute
@@ -51,9 +62,82 @@
   private static final long serialVersionUID = 8849088261264331812L;
 
   /**
+   * Constructs an empty <code>JobStateReasons</code> attribute.
+   */  
+  public JobStateReasons()
+  {
+    super();
+  }
+
+  /**
+   * Constructs an empty <code>JobStateReasons</code> attribute
+   * with the given initial capacity and load factor.
+   * 
+   * @param initialCapacity the intial capacity.
+   * @param loadFactor the load factor of the underlying HashSet.
+   * 
+   * @throws IllegalArgumentException if initialCapacity &lt; 0
+   * @throws IllegalArgumentException if initialCapacity or loadFactor &lt; 0
+   */
+  public JobStateReasons(int initialCapacity, float loadFactor)
+  {
+    super(initialCapacity, loadFactor);
+  }
+
+  /**
+   * Constructs an empty <code>JobStateReasons</code> attribute
+   * with the given initial capacity and the default load factor.
+   * 
+   * @param initialCapacity the intial capacity.
+   * 
+   * @throws IllegalArgumentException if initialCapacity &lt; 0
+   */
+  public JobStateReasons(int initialCapacity)
+  {
+    super(initialCapacity);
+  }
+
+  /**
+   * Constructs a <code>JobStateReasons</code> attribute
+   * with the content of the given collection.
+   * 
+   * @param collection the collection for the initial values.
+   * 
+   * @throws NullPointerException if collection or any value is 
+   * <code>null</code>.
+   * @throws ClassCastException if values of collection are not of type 
+   * <code>JobStateReason</code>.
+   */
+  public JobStateReasons(Collection collection)
+  {
+    super(collection.size(), 0.75f);
+    Iterator it = collection.iterator();
+    while (it.hasNext())
+      add(it.next());
+  }
+
+  /**
+   * Adds the given job state reason object to the set.
+   * 
+   * @param o the reason of type <code>JobStateReason</code>.
+   * @return <code>true</code> if set changed, <code>false</code> otherwise.
+   * 
+   * @throws NullPointerException if given object is <code>null</code>.
+   * @throws ClassCastException if given object is not an instance of
+   * <code>JobStateReason</code>.
+   */
+  public boolean add(Object o)
+  {
+    if (o == null)
+      throw new NullPointerException("reason is null");  
+    
+    return add((JobStateReason) o);
+  }
+  
+  /**
    * Returns category of this class.
    *
-   * @return the class <code>ColorSupported</code> itself
+   * @return The class <code>JobStateReasons</code> itself.
    */
   public Class getCategory()
   {
@@ -63,7 +147,7 @@
   /**
    * Returns the name of this attribute.
    *
-   * @return the name
+   * @return The name "job-state-reasons".
    */
   public String getName()
   {
Index: javax/print/attribute/standard/PrinterStateReasons.java
===================================================================
RCS file: 
/cvsroot/classpath/classpath/javax/print/attribute/standard/PrinterStateReasons.java,v
retrieving revision 1.4
diff -u -r1.4 PrinterStateReasons.java
--- javax/print/attribute/standard/PrinterStateReasons.java     2 Jul 2005 
20:32:46 -0000       1.4
+++ javax/print/attribute/standard/PrinterStateReasons.java     19 Dec 2005 
09:28:14 -0000
@@ -1,5 +1,5 @@
 /* PrinterStateReasons.java --
-   Copyright (C) 2004 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -38,12 +38,35 @@
 
 package javax.print.attribute.standard;
 
+import java.util.Collections;
 import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Set;
 
 import javax.print.attribute.PrintServiceAttribute;
 
 /**
+ * The <code>PrinterStateReasons</code> attribute provides the set of 
+ * additional informations available about the current state of the printer 
+ * device.
+ * <p>
+ * The attribute is basically a map with <code>PrinterStateReason</code>
+ * objects as keys associated with their severity level as 
+ * <code>Severity</code> instances. The IPP keyword value can be 
+ * constructed as follows: <br>
+ * <code>reason.toString() + '-' + severity.toString()</code> 
+ * </p>
+ * <p>
+ * <b>IPP Compatibility:</b> PrinterStateReasons is an IPP 1.1 attribute.
+ * </p>
+ * @see javax.print.attribute.standard.PrinterState
+ * @see javax.print.attribute.standard.PrinterStateReason
+ * @see javax.print.attribute.standard.Severity
+ * 
  * @author Michael Koch (address@hidden)
+ * @author Wolfgang Baer (address@hidden)
  */
 public final class PrinterStateReasons extends HashMap
   implements PrintServiceAttribute
@@ -51,9 +74,117 @@
   private static final long serialVersionUID = -3731791085163619457L;
 
   /**
+   * Constructs an empty <code>PrinterStateReasons</code> attribute.
+   */  
+  public PrinterStateReasons()
+  {
+    super();
+  }
+
+  /**
+   * Constructs an empty <code>PrinterStateReasons</code> attribute
+   * with the given initial capacity and load factor.
+   * 
+   * @param initialCapacity the intial capacity.
+   * @param loadFactor the load factor of the underlying HashMap.
+   * 
+   * @throws IllegalArgumentException if initialCapacity &lt; 0
+   * @throws IllegalArgumentException if initialCapacity or loadFactor &lt; 0
+   */
+  public PrinterStateReasons(int initialCapacity, float loadFactor)
+  {
+    super(initialCapacity, loadFactor);
+  }
+
+  /**
+   * Constructs an empty <code>PrinterStateReasons</code> attribute
+   * with the given initial capacity and the default load factor.
+   * 
+   * @param initialCapacity the intial capacity.
+   * 
+   * @throws IllegalArgumentException if initialCapacity &lt; 0
+   */
+  public PrinterStateReasons(int initialCapacity)
+  {
+    super(initialCapacity);
+  }
+
+  /**
+   * Constructs a <code>PrinterStateReasons</code> attribute
+   * with the given content of the map.
+   * 
+   * @param map the map for the initial values with the same 
+   * <code>PrinterStateReason</code> to <code>Severity</code> mappings.
+   * 
+   * @throws NullPointerException if map or any key/value is <code>null</code>.
+   * @throws ClassCastException if values of map are not of type 
+   * <code>PrinterStateReason</code> and keys are not of type 
+   * <code>Severity</code>.
+   */
+  public PrinterStateReasons(Map map)
+  {
+    super(map.size(), 0.75f);
+    Iterator it = map.entrySet().iterator();
+    while (it.hasNext())
+      {
+        Map.Entry entry = (Map.Entry) it.next();
+        put(entry.getKey(), entry.getValue());
+      }
+  }
+
+  /**
+   * Constructs an unmodifiable view of the contained printer state reasons
+   * associated with the given severity level.
+   * 
+   * @param severity the severity level for the constructed set.
+   * @return The set of printer state reasons.
+   */
+  public Set printerStateReasonSet(Severity severity)
+  {
+    if (severity == null)
+      throw new NullPointerException("severity is null");
+    
+    HashSet set = new HashSet();
+    Iterator it = entrySet().iterator();
+    while (it.hasNext())
+      {
+        Map.Entry entry = (Map.Entry) it.next();
+        if (entry.getValue().equals(severity))
+          set.add(entry.getKey());
+      }
+    
+    return Collections.unmodifiableSet(set);
+  }
+  
+  /**
+   * Puts the given reason object associated with the given severity object
+   * into the set.
+   * 
+   * @param reason the reason of type <code>PrinterStateReason</code>.
+   * @param severity the severity of the reason of type <code>Severity</code>.
+   * 
+   * @return The previously associated severity of the reason or 
+   * <code>null</code> if the reason object was not in the map before.
+   * 
+   * @throws NullPointerException if any of the values is <code>null</code>.
+   * @throws ClassCastException if reason is not a 
+   * <code>PrinterStateReason</code> and severity is not a 
+   * <code>Severity</code> instance.
+   */
+  public Object put(Object reason, Object severity)
+  {
+    if (reason == null)
+      throw new NullPointerException("reason is null");    
+    if (severity == null)
+      throw new NullPointerException("severity is null");
+    
+    return put((PrinterStateReason) reason, (Severity) severity);
+  }   
+  
+  /**
    * Returns category of this class.
    *
-   * @return the class <code>PrintStateReasons</code> itself
+   * @return The class <code>PrintStateReasons</code> itself.
    */
   public Class getCategory()
   {
@@ -61,9 +192,9 @@
   }
 
   /**
-   * Returns name of this class.
+   * Returns the name of this attribute.
    *
-   * @return the string "printer-state-reasons"
+   * @return The name "printer-state-reasons".
    */
   public String getName()
   {

reply via email to

[Prev in Thread] Current Thread [Next in Thread]