public class Manifest extends Object implements Cloneable
The Manifest class is used to maintain Manifest entry names and their associated Attributes. There are main Manifest Attributes as well as per-entry Attributes. For information on the Manifest format, please see the Manifest format specification.
Attributes
public Manifest()
Constructs a new, empty Manifest.
public Manifest(InputStream is) throws IOException
Constructs a new Manifest from the specified input stream.
is
- the input stream containing manifest dataIOException
- if an I/O error has occurredpublic Manifest(Manifest man)
Constructs a new Manifest that is a copy of the specified Manifest.
man
- the Manifest to copypublic Attributes getMainAttributes()
Returns the main Attributes for the Manifest.
public Map<String,Attributes> getEntries()
Returns a Map of the entries contained in this Manifest. Each entry is represented by a String name (key) and associated Attributes (value). The Map permits the null
key, but no entry with a null key is created by read(java.io.InputStream)
, nor is such an entry written by using write(java.io.OutputStream)
.
public Attributes getAttributes(String name)
Returns the Attributes for the specified entry name. This method is defined as:
return (Attributes)getEntries().get(name)Though
null
is a valid name
, when getAttributes(null)
is invoked on a Manifest
obtained from a jar file, null
will be returned. While jar files themselves do not allow null
-named attributes, it is possible to invoke getEntries()
on a Manifest
, and on that result, invoke put
with a null key and an arbitrary value. Subsequent invocations of getAttributes(null)
will return the just-put
value.
Note that this method does not return the manifest's main attributes; see getMainAttributes()
.
name
- entry namepublic void clear()
Clears the main Attributes as well as the entries in this Manifest.
public void write(OutputStream out) throws IOException
Writes the Manifest to the specified OutputStream. Attributes.Name.MANIFEST_VERSION must be set in MainAttributes prior to invoking this method.
out
- the output streamIOException
- if an I/O error has occurredgetMainAttributes()
public void read(InputStream is) throws IOException
Reads the Manifest from the specified InputStream. The entry names and attributes read will be merged in with the current manifest entries.
is
- the input streamIOException
- if an I/O error has occurredpublic boolean equals(Object o)
Returns true if the specified Object is also a Manifest and has the same main Attributes and entries.
equals
in class Object
o
- the object to be comparedObject.hashCode()
, HashMap
public int hashCode()
Returns the hash code for this Manifest.
hashCode
in class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public Object clone()
Returns a shallow copy of this Manifest. The shallow copy is implemented as follows:
public Object clone() { return new Manifest(this); }
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.