The Attributes class maps Manifest attribute names to associated string values. Valid attribute names are case-insensitive, are restricted to the ASCII characters in the set [0-9a-zA-Z_-], and cannot exceed 70 characters in length. Attribute values can contain any characters and will be UTF8-encoded when written to the output stream. See the JAR File Specification for more information about valid attribute names and values.
See Also
Nested Class Summary
class | Attributes.Name | The Attributes.Name class represents an attribute name stored in this Map. |
Field Summary
protected Map<Object, Object> | map | The attribute name-value mappings. |
Public Constructor Summary
Attributes()
Constructs a new, empty Attributes object with default size.
|
|
Attributes(int size)
Constructs a new, empty Attributes object with the specified
initial size.
|
|
Attributes(Attributes attr)
Constructs a new Attributes object with the same attribute name-value
mappings as in the specified Attributes.
|
Public Method Summary
void |
clear()
Removes all attributes from this Map.
|
Object |
clone()
Returns a copy of the Attributes, implemented as follows:
public Object clone() { return new Attributes(this); } |
boolean | |
boolean |
containsValue(Object value)
Returns true if this Map maps one or more attribute names (keys)
to the specified value.
|
Set<Entry<Object, Object>> |
entrySet()
Returns a Collection view of the attribute name-value mappings
contained in this Map.
|
boolean | |
Object | |
String | |
String |
getValue(Attributes.Name name)
Returns the value of the specified Attributes.Name, or null if the
attribute was not found.
|
int |
hashCode()
Returns the hash code value for this Map.
|
boolean |
isEmpty()
Returns true if this Map contains no attributes.
|
Set<Object> |
keySet()
Returns a Set view of the attribute names (keys) contained in this Map.
|
Object | |
void | |
String | |
Object | |
int |
size()
Returns the number of attributes in this Map.
|
Collection<Object> |
values()
Returns a Collection view of the attribute values contained in this Map.
|
Inherited Method Summary
Fields
Public Constructors
public Attributes ()
Constructs a new, empty Attributes object with default size.
public Attributes (int size)
Constructs a new, empty Attributes object with the specified initial size.
Parameters
size | the initial number of attributes |
---|
public Attributes (Attributes attr)
Constructs a new Attributes object with the same attribute name-value mappings as in the specified Attributes.
Parameters
attr | the specified Attributes |
---|
Public Methods
public void clear ()
Removes all attributes from this Map.
public Object clone ()
Returns a copy of the Attributes, implemented as follows:
public Object clone() { return new Attributes(this); }
Returns
- a copy of this object.
public boolean containsKey (Object name)
Returns true if this Map contains the specified attribute name (key).
Parameters
name | the attribute name |
---|
Returns
- true if this Map contains the specified attribute name
public boolean containsValue (Object value)
Returns true if this Map maps one or more attribute names (keys) to the specified value.
Parameters
value | the attribute value |
---|
Returns
- true if this Map maps one or more attribute names to the specified value
public Set<Entry<Object, Object>> entrySet ()
Returns a Collection view of the attribute name-value mappings contained in this Map.
Returns
- a set view of the mappings contained in this map
public boolean equals (Object o)
Compares the specified Attributes object with this Map for equality. Returns true if the given object is also an instance of Attributes and the two Attributes objects represent the same mappings.
Parameters
o | the Object to be compared |
---|
Returns
- true if the specified Object is equal to this Map
public Object get (Object name)
Returns the value of the specified attribute name, or null if the attribute name was not found.
Parameters
name | the attribute name |
---|
Returns
- the value of the specified attribute name, or null if not found.
public String getValue (String name)
Returns the value of the specified attribute name, specified as a string, or null if the attribute was not found. The attribute name is case-insensitive.
This method is defined as:
return (String)get(new Attributes.Name((String)name));
Parameters
name | the attribute name as a string |
---|
Returns
- the String value of the specified attribute name, or null if not found.
Throws
IllegalArgumentException | if the attribute name is invalid |
---|
public String getValue (Attributes.Name name)
Returns the value of the specified Attributes.Name, or null if the attribute was not found.
This method is defined as:
return (String)get(name);
Parameters
name | the Attributes.Name object |
---|
Returns
- the String value of the specified Attribute.Name, or null if not found.
public int hashCode ()
Returns the hash code value for this Map.
Returns
- this object's hash code.
public boolean isEmpty ()
Returns true if this Map contains no attributes.
Returns
true
if this map contains no key-value mappings
public Set<Object> keySet ()
Returns a Set view of the attribute names (keys) contained in this Map.
Returns
- a set view of the keys contained in this map
public Object put (Object name, Object value)
Associates the specified value with the specified attribute name (key) in this Map. If the Map previously contained a mapping for the attribute name, the old value is replaced.
Parameters
name | the attribute name |
---|---|
value | the attribute value |
Returns
- the previous value of the attribute, or null if none
Throws
ClassCastException | if the name is not a Attributes.Name or the value is not a String |
---|
public void putAll (Map<?, ?> attr)
Copies all of the attribute name-value mappings from the specified Attributes to this Map. Duplicate mappings will be replaced.
Parameters
attr | the Attributes to be stored in this map |
---|
Throws
ClassCastException | if attr is not an Attributes |
---|
public String putValue (String name, String value)
Associates the specified value with the specified attribute name, specified as a String. The attributes name is case-insensitive. If the Map previously contained a mapping for the attribute name, the old value is replaced.
This method is defined as:
return (String)put(new Attributes.Name(name), value);
Parameters
name | the attribute name as a string |
---|---|
value | the attribute value |
Returns
- the previous value of the attribute, or null if none
Throws
IllegalArgumentException | if the attribute name is invalid |
---|
public Object remove (Object name)
Removes the attribute with the specified name (key) from this Map. Returns the previous attribute value, or null if none.
Parameters
name | attribute name |
---|
Returns
- the previous value of the attribute, or null if none
public int size ()
Returns the number of attributes in this Map.
Returns
- the number of key-value mappings in this map
public Collection<Object> values ()
Returns a Collection view of the attribute values contained in this Map.
Returns
- a collection view of the values contained in this map