JavaTM 2 Platform
Standard Ed. 6

javax.print.attribute.standard
類別 PrinterStateReasons

java.lang.Object
  繼承者 java.util.AbstractMap<K,V>
      繼承者 java.util.HashMap<PrinterStateReason,Severity>
          繼承者 javax.print.attribute.standard.PrinterStateReasons
所有已實作的介面:
Serializable, Cloneable, Map<PrinterStateReason,Severity>, Attribute, PrintServiceAttribute

public final class PrinterStateReasons
extends HashMap<PrinterStateReason,Severity>
implements PrintServiceAttribute

PrinterStateReasons 類別是列印屬性類別,它是一組列舉值集合,提供了有關印表機當前狀態的附加資訊,即擴充了印表機 PrinterState 屬性值的資訊。

PrinterStateReason 的實例不會直接出現在 Print Service 的屬性集中。而 PrinterStateReasons 屬性則會出現在 Print Service 的屬性集中。PrinterStateReasons 屬性包括零、一個或多個與 Print Service 的狀態相關的 PrinterStateReason 物件,並且每個 PrinterStateReason 物件都與 REPORT(不太嚴重)、WARNING 或 ERROR(最嚴重)的 Severity 級別相關聯。當相應的條件變成了印表機的真實條件時,印表機將把 PrinterStateReason 物件添加到 Print Service 的 PrinterStateReasons 屬性中,而當相應的條件變成虛假條件時,無論 Print Service 的總體 PrinterState 是否也已更改,印表機都將再次移除 PrinterStateReason 物件。

類別 PrinterStateReasons 從類別 java.util.HashMap 中繼承了其實作。映射中的每一項都包括映射到 Severity 物件(值)的 PrinterStateReason 物件(鍵):

與大部分一旦建構就不可改變的列印屬性不同,類別 PrinterStateReasons 設計為可變的;您可以將 PrinterStateReason 物件添加到現有的 PrinterStateReasons 物件中,並可將它們移除。不過,與類別 java.util.HashMap 一樣,類別 PrinterStateReasons 具有 bot 多執行緒安全性。如果 PrinterStateReasons 物件將由多執行緒使用,則一定要同步其操作(例如,使用從類別 java.util.Collections 中獲取的已同步映射視圖)。

IPP 相容性:字元串值由每個 PrinterStateReason 物件和相關的 Severity 物件的 toString() 方法返回,它們之間用連字號 ("-") 連接,該值提供了 IPP 關鍵字值。由 getName() 返回的類別別名稱提供了 IPP 屬性名稱。

另請參見:
序列化表格

巢狀類別摘要
 
從類別 java.util.AbstractMap 繼承的巢狀類別/介面
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>
 
建構子摘要
PrinterStateReasons()
          建構一個新的空 PrinterStateReasons 屬性;底層雜湊映射具有預設的初始容量和載入因子。
PrinterStateReasons(int initialCapacity)
          建構一個新的空 PrinterStateReasons 屬性;底層雜湊映射具有給定的初始容量和預設的載入因子。
PrinterStateReasons(int initialCapacity, float loadFactor)
          建構一個新的空 PrinterStateReasons 屬性;底層雜湊映射具有給定的初始容量和載入因子。
PrinterStateReasons(Map<PrinterStateReason,Severity> map)
          建構一個新的 PrinterStateReasons 屬性,它包括與給定映射相同的 PrinterStateReasonSeverity 映射關係。
 
方法摘要
 Class<? extends Attribute> getCategory()
          獲取將用作此列印屬性值的“類別別”的列印屬性類別。
 String getName()
          獲取類別別的名稱,此屬性值是該類別別的一個實例。
 Set<PrinterStateReason> printerStateReasonSet(Severity severity)
          在此 PrinterStateReasons 中,獲得在給定的嚴重性級別每個 PrinterStateReasons 屬性的不可修改的視圖集。
 Severity put(PrinterStateReason reason, Severity severity)
          根據給定的嚴重性級別,將給定的印表機狀態原因添加到此 PrinterStateReasons 屬性中。
 
從類別 java.util.HashMap 繼承的方法
clear, clone, containsKey, containsValue, entrySet, get, isEmpty, keySet, putAll, remove, size, values
 
從類別 java.util.AbstractMap 繼承的方法
equals, hashCode, toString
 
從類別 java.lang.Object 繼承的方法
finalize, getClass, notify, notifyAll, wait, wait, wait
 
從介面 java.util.Map 繼承的方法
equals, hashCode
 

建構子詳細資訊

PrinterStateReasons

public PrinterStateReasons()
建構一個新的空 PrinterStateReasons 屬性;底層雜湊映射具有預設的初始容量和載入因子。


PrinterStateReasons

public PrinterStateReasons(int initialCapacity)
建構一個新的空 PrinterStateReasons 屬性;底層雜湊映射具有給定的初始容量和預設的載入因子。

參數:
initialCapacity - 初始容量。
拋出:
IllegalArgumentException - 如果初始容量小於零。

PrinterStateReasons

public PrinterStateReasons(int initialCapacity,
                           float loadFactor)
建構一個新的空 PrinterStateReasons 屬性;底層雜湊映射具有給定的初始容量和載入因子。

參數:
initialCapacity - 初始容量。
loadFactor - 載入因子。
拋出:
IllegalArgumentException - 如果初始容量小於零。

PrinterStateReasons

public PrinterStateReasons(Map<PrinterStateReason,Severity> map)
建構一個新的 PrinterStateReasons 屬性,它包括與給定映射相同的 PrinterStateReasonSeverity 映射關係。底層雜湊映射的初始容量和載入因子與在父級類別建構子 HashMap(Map) 中指定的相同。

參數:
map - 要複製的映射。
拋出:
NullPointerException - (未經檢查的異常)如果 map 為 null,或者 map 中的任何鍵或值為 null。
ClassCastException - (未經檢查的異常)如果 map 中的任何鍵不是類別 PrinterStateReason 的一個實例,或者 map 中的任何值不是類別 Severity 一個實例。
方法詳細資訊

put

public Severity put(PrinterStateReason reason,
                    Severity severity)
根據給定的嚴重性級別,將給定的印表機狀態原因添加到此 PrinterStateReasons 屬性中。如果此 PrinterStateReasons 屬性以前包含了給定印表機狀態原因的映射關係,則取代原來的值。

指定者:
介面 Map<PrinterStateReason,Severity> 中的 put
覆寫:
類別 HashMap<PrinterStateReason,Severity> 中的 put
參數:
reason - 印表機狀態原因。這必須是類別 PrinterStateReason 的一個實例。
severity - 印表機狀態原因的嚴重性。這必須是類別 Severity 的一個實例。
返回:
以前與給定印表機狀態原因相關聯的嚴重性,如果給定的印表機狀態原因不存在,則返回 null
拋出:
NullPointerException - (未經檢查的異常)如果 reason 為 null,或者 severity 為 null。
ClassCastException - (未經檢查的異常)如果 reason 不是類別 PrinterStateReason 的一個實例,或者 severity 不是類別 Severity 的一個實例。
從以下版本開始:
1.5

getCategory

public final Class<? extends Attribute> getCategory()
獲取將用作此列印屬性值的“類別別”的列印屬性類別。

對於類別 PrinterStateReasons,該類別別就是類別 PrinterStateReasons 本身。

指定者:
介面 Attribute 中的 getCategory
返回:
列印屬性類別(類別別),這是類別 java.lang.Class 的一個實例。

getName

public final String getName()
獲取類別別的名稱,此屬性值是該類別別的一個實例。

對於類別 PrinterStateReasons,類別別名稱是 "printer-state-reasons"

指定者:
介面 Attribute 中的 getName
返回:
屬性類別別名稱。

printerStateReasonSet

public Set<PrinterStateReason> printerStateReasonSet(Severity severity)
在此 PrinterStateReasons 中,獲得在給定的嚴重性級別每個 PrinterStateReasons 屬性的不可修改的視圖集。該視圖集中的每個元素都是一個 PrinterStateReason 物件。視圖集中僅有的元素是映射到給定嚴重性值的 PrinterStateReason 物件。該視圖集受此 PrinterStateReasons 屬性支持,因此,對此 PrinterStateReasons 屬性的更改會在視圖集中反映出來。該視圖集不支持元素插入或移除。視圖集的迭代器不支持元素移除。

參數:
severity - 嚴重性級別。
返回:
在給定 Severity 級別每個 PrinterStateReason 屬性的視圖集。
拋出:
NullPointerException - (未經檢查的異常)如果 severity 為 null。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only