Module java.base
Package java.util.jar

Interface Pack200.Unpacker

Enclosing class:
Pack200

@Deprecated(since="11",
            forRemoval=true)
public static interface Pack200.Unpacker
Deprecated, for removal: This API element is subject to removal in a future version.
This interface is deprecated, and is planned for removal in a future release.
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.

Since:
1.5
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static String DEFLATE_HINT
    Deprecated, for removal: This API element is subject to removal in a future version.
    Property indicating that the unpacker should ignore all transmitted values for DEFLATE_HINT, replacing them by the given value, TRUE or FALSE.
    static String FALSE
    Deprecated, for removal: This API element is subject to removal in a future version.
    The string "false", a possible value for certain properties.
    static String KEEP
    Deprecated, for removal: This API element is subject to removal in a future version.
    The string "keep", a possible value for certain properties.
    static String PROGRESS
    Deprecated, for removal: This API element is subject to removal in a future version.
    The unpacker's progress as a percentage, as periodically updated by the unpacker.
    static String TRUE
    Deprecated, for removal: This API element is subject to removal in a future version.
    The string "true", a possible value for certain properties.
  • Method Summary

    Modifier and Type Method Description
    SortedMap<String,​String> properties()
    Deprecated, for removal: This API element is subject to removal in a future version.
    Get the set of this engine's properties.
    void unpack​(File in, JarOutputStream out)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Read a Pack200 archive, and write the encoded JAR to a JarOutputStream.
    void unpack​(InputStream in, JarOutputStream out)
    Deprecated, for removal: This API element is subject to removal in a future version.
    Read a Pack200 archive, and write the encoded JAR to a JarOutputStream.
  • Field Details

    • KEEP

      static final String KEEP
      Deprecated, for removal: This API element is subject to removal in a future version.
      The string "keep", a possible value for certain properties.
      See Also:
      DEFLATE_HINT, Constant Field Values
    • TRUE

      static final String TRUE
      Deprecated, for removal: This API element is subject to removal in a future version.
      The string "true", a possible value for certain properties.
      See Also:
      DEFLATE_HINT, Constant Field Values
    • FALSE

      static final String FALSE
      Deprecated, for removal: This API element is subject to removal in a future version.
      The string "false", a possible value for certain properties.
      See Also:
      DEFLATE_HINT, Constant Field Values
    • DEFLATE_HINT

      static final String DEFLATE_HINT
      Deprecated, for removal: This API element is subject to removal in a future version.
      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.
      See Also:
      Constant Field Values
    • PROGRESS

      static final String PROGRESS
      Deprecated, for removal: This API element is subject to removal in a future version.
      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 an unpacking operation, and to 100 at the end.

      See Also:
      Constant Field Values
  • Method Details

    • properties

      SortedMap<String,​String> properties()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Get the set of this engine's properties. This set is a "live view", so that changing its contents immediately affects the Unpacker 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:
      A sorted association of option key strings to option values.
    • unpack

      void unpack​(InputStream in, JarOutputStream out) throws IOException
      Deprecated, for removal: This API element is subject to removal in a future version.
      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 - an InputStream.
      out - a JarOutputStream.
      Throws:
      IOException - if an error is encountered.
    • unpack

      void unpack​(File in, JarOutputStream out) throws IOException
      Deprecated, for removal: This API element is subject to removal in a future version.
      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 - a File.
      out - a JarOutputStream.
      Throws:
      IOException - if an error is encountered.