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 Pack200.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,   | 
    
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   | 
  
        abstract
        
        
        
        
        SortedMap<String, String>
     | 
  
    
      
      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   | 
  
        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
public static final 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
public static final String FALSE
The string "false", a possible value for certain properties.
See also:
Constant Value: "false"
KEEP
public static final String KEEP
The string "keep", a possible value for certain properties.
See also:
Constant Value: "keep"
PROGRESS
public static final 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
public static final String TRUE
The string "true", a possible value for certain properties.
See also:
Constant Value: "true"
Public methods
addPropertyChangeListener
public 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
public abstract SortedMap<String, String> 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<String, String> | 
        A sorted association of option key strings to option values. | 
removePropertyChangeListener
public 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. | 
      
unpack
public abstract 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
public abstract 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. |