Skip to content

Most visited

Recently visited

navigation
added in API level 1

Pack200.Unpacker

public static interface Pack200.Unpacker

java.util.jar.Pack200.Unpacker


The unpacker engine converts the packed stream to a JAR file. An instance of the engine can be obtained using newUnpacker().

Every JAR file produced by this engine will include the string "PACK200" as a zip file comment. This allows a deployer to detect if a JAR archive was packed and unpacked.

Note: Unless otherwise noted, passing a null argument to a constructor or method in this class will cause a NullPointerException to be thrown.

This version of the unpacker is compatible with all previous versions.

Summary

Constants

String DEFLATE_HINT

Property indicating that the unpacker should ignore all transmitted values for DEFLATE_HINT, replacing them by the given value, TRUE or FALSE.

String FALSE

The string "false", a possible value for certain properties.

String KEEP

The string "keep", a possible value for certain properties.

String PROGRESS

The unpacker's progress as a percentage, as periodically updated by the unpacker.

String TRUE

The string "true", a possible value for certain properties.

Public methods

default void addPropertyChangeListener(PropertyChangeListener listener)

This method was deprecated in API level 26. The dependency on PropertyChangeListener creates a significant impediment to future modularization of the Java platform. This method will be removed in a future release. Applications that need to monitor progress of the unpacker can poll the value of the PROGRESS property instead.

abstract SortedMap<StringString> properties()

Get the set of this engine's properties.

default void removePropertyChangeListener(PropertyChangeListener listener)

This method was deprecated in API level 26. The dependency on PropertyChangeListener creates a significant impediment to future modularization of the Java platform. This method will be removed in a future release.

abstract void unpack(InputStream in, JarOutputStream out)

Read a Pack200 archive, and write the encoded JAR to a JarOutputStream.

abstract void unpack(File in, JarOutputStream out)

Read a Pack200 archive, and write the encoded JAR to a JarOutputStream.

Constants

DEFLATE_HINT

added in API level 1
String DEFLATE_HINT

Property indicating that the unpacker should ignore all transmitted values for DEFLATE_HINT, replacing them by the given value, TRUE or FALSE. The default value is the special string KEEP, which asks the unpacker to preserve all transmitted deflation hints.

Constant Value: "unpack.deflate.hint"

FALSE

added in API level 1
String FALSE

The string "false", a possible value for certain properties.

See also:

Constant Value: "false"

KEEP

added in API level 1
String KEEP

The string "keep", a possible value for certain properties.

See also:

Constant Value: "keep"

PROGRESS

added in API level 1
String PROGRESS

The unpacker's progress as a percentage, as periodically updated by the unpacker. Values of 0 - 100 are normal, and -1 indicates a stall. Progress can be monitored by polling the value of this property.

At a minimum, the unpacker must set progress to 0 at the beginning of a packing operation, and to 100 at the end.

Constant Value: "unpack.progress"

TRUE

added in API level 1
String TRUE

The string "true", a possible value for certain properties.

See also:

Constant Value: "true"

Public methods

addPropertyChangeListener

added in API level 3
void addPropertyChangeListener (PropertyChangeListener listener)

This method was deprecated in API level 26.
The dependency on PropertyChangeListener creates a significant impediment to future modularization of the Java platform. This method will be removed in a future release. Applications that need to monitor progress of the unpacker can poll the value of the PROGRESS property instead.

Registers a listener for PropertyChange events on the properties map. This is typically used by applications to update a progress bar.

The default implementation of this method does nothing and has no side-effects.

WARNING: This method is omitted from the interface declaration in all subset Profiles of Java SE that do not include the java.beans package.

Parameters
listener PropertyChangeListener: An object to be invoked when a property is changed.

See also:

properties

added in API level 1
SortedMap<StringString> properties ()

Get the set of this engine's properties. This set is a "live view", so that changing its contents immediately affects the Packer engine, and changes from the engine (such as progress indications) are immediately visible in the map.

The property map may contain pre-defined implementation specific and default properties. Users are encouraged to read the information and fully understand the implications, before modifying pre-existing properties.

Implementation specific properties are prefixed with a package name associated with the implementor, beginning with com. or a similar prefix. All property names beginning with pack. and unpack. are reserved for use by this API.

Unknown properties may be ignored or rejected with an unspecified error, and invalid entries may cause an unspecified error to be thrown.

Returns
SortedMap<StringString> A sorted association of option key strings to option values.

removePropertyChangeListener

added in API level 3
void removePropertyChangeListener (PropertyChangeListener listener)

This method was deprecated in API level 26.
The dependency on PropertyChangeListener creates a significant impediment to future modularization of the Java platform. This method will be removed in a future release.

Remove a listener for PropertyChange events, added by the addPropertyChangeListener(PropertyChangeListener).

The default implementation of this method does nothing and has no side-effects.

WARNING: This method is omitted from the interface declaration in all subset Profiles of Java SE that do not include the java.beans package.

Parameters
listener PropertyChangeListener: The PropertyChange listener to be removed.

See also:

unpack

added in API level 1
void unpack (InputStream in, 
                JarOutputStream out)

Read a Pack200 archive, and write the encoded JAR to a JarOutputStream. The entire contents of the input stream will be read. It may be more efficient to read the Pack200 archive to a file and pass the File object, using the alternate method described below.

Closes its input but not its output. (The output can accumulate more elements.)

Parameters
in InputStream: an InputStream.

out JarOutputStream: a JarOutputStream.

Throws
IOException if an error is encountered.

unpack

added in API level 1
void unpack (File in, 
                JarOutputStream out)

Read a Pack200 archive, and write the encoded JAR to a JarOutputStream.

Does not close its output. (The output can accumulate more elements.)

Parameters
in File: a File.

out JarOutputStream: a JarOutputStream.

Throws
IOException if an error is encountered.
This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience.
(Sep 2017 survey)