public static interface Pack200.Unpacker
java.util.jar.Pack200.Unpacker |
解包器引擎将打包流转换为JAR文件。 引擎的一个实例可以使用newUnpacker()
获得。
此引擎生成的每个JAR文件都将包含字符串“ PACK200 ”作为zip文件注释。 这允许部署人员检测JAR归档是否被打包和解包。
注意:除非另有说明,否则将 null参数传递给 此类中的构造函数或方法将导致引发 NullPointerException
。
该版本的解包器与以前的所有版本兼容。
Constants |
|
---|---|
String |
DEFLATE_HINT |
String |
FALSE 字符串“false”,某些属性的可能值。 |
String |
KEEP 字符串“keep”,某些属性的可能值。 |
String |
PROGRESS 解包器的进度百分比,由解包器定期更新。 |
String |
TRUE 字符串“true”,某些属性的可能值。 |
Public methods |
|
---|---|
abstract void |
addPropertyChangeListener(PropertyChangeListener listener) 在属性图上注册PropertyChange事件的侦听器。 |
abstract SortedMap<String, String> |
properties() 获取该引擎的属性集。 |
abstract void |
removePropertyChangeListener(PropertyChangeListener listener) 移除PropertyChange事件的监听器,由 |
abstract void |
unpack(InputStream in, JarOutputStream out) 阅读Pack200存档,并将编码的JAR写入JarOutputStream。 |
abstract void |
unpack(File in, JarOutputStream out) 阅读Pack200存档,并将编码的JAR写入JarOutputStream。 |
String DEFLATE_HINT
指示解包器应忽略DEFLATE_HINT的所有传输值的属性,将其替换为给定值TRUE
或FALSE
。 默认值是特殊字符串KEEP
,它要求解包器保存所有传输的通货紧缩提示。
常量值:“unpack.deflate.hint”
String PROGRESS
解包器的进度百分比,由解包器定期更新。 0 - 100的值正常,-1表示失速。 使用PropertyChangeListener
观察此属性。
打包机必须至少在包装操作开始时将进度设置为0,最后设置为100。
常量值:“unpack.progress”
void addPropertyChangeListener (PropertyChangeListener listener)
在属性图上注册PropertyChange事件的侦听器。 这通常由应用程序用来更新进度栏。
Parameters | |
---|---|
listener |
PropertyChangeListener : An object to be invoked when a property is changed. |
也可以看看:
SortedMap<String, String> properties ()
获取该引擎的属性集。 该集合是一个“实时视图”,因此更改其内容将立即影响Packer引擎,并且引擎中的更改(例如进度指示)会立即在地图中可见。
属性图可能包含预定义的实现特定属性和默认属性。 鼓励用户在修改预先存在的属性之前阅读信息并充分理解其含义。
特定于实现的属性以与实现者关联的包名为前缀,以com.或类似的前缀开头。 所有以pack.和unpack.开头的属性名称都保留供此API使用。
未知属性可能会被忽略或拒绝,并且出现未指定的错误,并且无效条目可能会导致未指定的错误被抛出。
Returns | |
---|---|
SortedMap<String, String> |
A sorted association of option key strings to option values. |
void removePropertyChangeListener (PropertyChangeListener listener)
移除PropertyChange事件的监听器,由 addPropertyChangeListener(PropertyChangeListener)
添加。
Parameters | |
---|---|
listener |
PropertyChangeListener : The PropertyChange listener to be removed. |
void unpack (InputStream in, JarOutputStream out)
阅读Pack200存档,并将编码的JAR写入JarOutputStream。 输入流的全部内容将被读取。 使用下面描述的替代方法将Pack200压缩文件读取到文件并传递File对象可能更有效。
关闭输入,但不输出。 (输出可以累积更多元素。)
Parameters | |
---|---|
in |
InputStream : an InputStream. |
out |
JarOutputStream : a JarOutputStream. |
Throws | |
---|---|
IOException |
if an error is encountered. |
void unpack (File in, JarOutputStream out)
阅读Pack200存档,并将编码的JAR写入JarOutputStream。
不关闭它的输出。 (输出可以累积更多元素。)
Parameters | |
---|---|
in |
File : a File. |
out |
JarOutputStream : a JarOutputStream. |
Throws | |
---|---|
IOException |
if an error is encountered. |