This interface defines the API for an
object that can convert a JAR file to an output stream in Pack200 (or
gzipped Pack200) format. Obtain a Packer object
with the Pack200.newPacker( ) factory method.
Configure the packer before using it by setting properties in the
Map returned by the properties(
) method. The constants defined by this class represent the
names (and in some cases values) of properties that can be set. Pack
a JAR file by passing JarFile or
JarInputStream to a pack( )
method along with the byte output stream to which the packed
representation should be written. You can monitor the progress of the
packer engine by querying the PROGRESS property in
the properties( ) map. The value is the completion
percentage as an integer between 0 and 100 (or -1 to indicate a stall
or error.) If you want to be notified of changes to the
PROGRESS property, register a
java.beans.PropertyChangeListener with
addPropertyChangeListener( ). See also the
pack200 command in Chapter 8.
public interface
Pack200.Packer {
// Public Constants
public static final String
CLASS_ATTRIBUTE_PFX ; ="pack.class.attribute."
public static final String
CODE_ATTRIBUTE_PFX ; ="pack.code.attribute."
public static final String
DEFLATE_HINT ; ="pack.deflate.hint"
public static final String
EFFORT ; ="pack.effort"
public static final String
ERROR ; ="error"
public static final String
FALSE ; ="false"
public static final String
FIELD_ATTRIBUTE_PFX ; ="pack.field.attribute."
public static final String
KEEP ; ="keep"
public static final String
KEEP_FILE_ORDER ; ="pack.keep.file.order"
public static final String
LATEST ; ="latest"
public static final String
METHOD_ATTRIBUTE_PFX ; ="pack.method.attribute."
public static final String
MODIFICATION_TIME ; ="pack.modification.time"
public static final String
PASS ; ="pass"
public static final String
PASS_FILE_PFX ; ="pack.pass.file."
public static final String
PROGRESS ; ="pack.progress"
public static final String
SEGMENT_LIMIT ; ="pack.segment.limit"
public static final String
STRIP ; ="strip"
public static final String
TRUE ; ="true"
public static final String
UNKNOWN_ATTRIBUTE ; ="pack.unknown.attribute"
// Event Registration Methods (by event name)
void
addPropertyChangeListener (java.beans.PropertyChangeListener
listener );
void
removePropertyChangeListener (java.beans.PropertyChangeListener
listener );
// Public Instance Methods
void
pack (JarInputStream
in , java.io.OutputStream
out ) throws java.io.IOException;
void
pack (JarFile
in , java.io.OutputStream
out ) throws java.io.IOException;
java.util.SortedMap<String,String>
properties ( );
}