equal
deleted
inserted
replaced
27 import java.util.SortedMap; |
27 import java.util.SortedMap; |
28 import java.io.InputStream; |
28 import java.io.InputStream; |
29 import java.io.OutputStream; |
29 import java.io.OutputStream; |
30 import java.io.File; |
30 import java.io.File; |
31 import java.io.IOException; |
31 import java.io.IOException; |
|
32 import sun.security.action.GetPropertyAction; |
32 |
33 |
33 |
34 |
34 /** |
35 /** |
35 * Transforms a JAR file to or from a packed stream in Pack200 format. |
36 * Transforms a JAR file to or from a packed stream in Pack200 format. |
36 * Please refer to Network Transfer Format JSR 200 Specification at |
37 * Please refer to Network Transfer Format JSR 200 Specification at |
692 String implName = "(unknown)"; |
693 String implName = "(unknown)"; |
693 try { |
694 try { |
694 Class<?> impl = (PACK_PROVIDER.equals(prop))? packerImpl: unpackerImpl; |
695 Class<?> impl = (PACK_PROVIDER.equals(prop))? packerImpl: unpackerImpl; |
695 if (impl == null) { |
696 if (impl == null) { |
696 // The first time, we must decide which class to use. |
697 // The first time, we must decide which class to use. |
697 implName = java.security.AccessController.doPrivileged( |
698 implName = GetPropertyAction.getProperty(prop,""); |
698 new sun.security.action.GetPropertyAction(prop,"")); |
|
699 if (implName != null && !implName.equals("")) |
699 if (implName != null && !implName.equals("")) |
700 impl = Class.forName(implName); |
700 impl = Class.forName(implName); |
701 else if (PACK_PROVIDER.equals(prop)) |
701 else if (PACK_PROVIDER.equals(prop)) |
702 impl = com.sun.java.util.jar.pack.PackerImpl.class; |
702 impl = com.sun.java.util.jar.pack.PackerImpl.class; |
703 else |
703 else |