jdk/src/java.base/share/classes/sun/net/www/protocol/jrt/JavaRuntimeURLConnection.java
changeset 43712 5dfd0950317c
parent 37781 71ed5645f17c
child 44359 c6761862ca0b
equal deleted inserted replaced
43619:dc9102c475f3 43712:5dfd0950317c
    30 import java.io.FilePermission;
    30 import java.io.FilePermission;
    31 import java.io.IOException;
    31 import java.io.IOException;
    32 import java.io.InputStream;
    32 import java.io.InputStream;
    33 import java.net.MalformedURLException;
    33 import java.net.MalformedURLException;
    34 import java.net.URL;
    34 import java.net.URL;
       
    35 import java.security.AccessController;
    35 import java.security.Permission;
    36 import java.security.Permission;
       
    37 import java.security.PrivilegedAction;
    36 
    38 
    37 import jdk.internal.jimage.ImageLocation;
    39 import jdk.internal.jimage.ImageLocation;
    38 import jdk.internal.jimage.ImageReader;
    40 import jdk.internal.jimage.ImageReader;
    39 import jdk.internal.jimage.ImageReaderFactory;
    41 import jdk.internal.jimage.ImageReaderFactory;
    40 
    42 
    49  * contained in the runtime image.
    51  * contained in the runtime image.
    50  */
    52  */
    51 public class JavaRuntimeURLConnection extends URLConnection {
    53 public class JavaRuntimeURLConnection extends URLConnection {
    52 
    54 
    53     // ImageReader to access resources in jimage
    55     // ImageReader to access resources in jimage
    54     private static final ImageReader reader = ImageReaderFactory.getImageReader();
    56     private static final ImageReader reader;
       
    57     static {
       
    58         PrivilegedAction<ImageReader> pa = ImageReaderFactory::getImageReader;
       
    59         reader = AccessController.doPrivileged(pa);
       
    60     }
    55 
    61 
    56     // the module and resource name in the URL
    62     // the module and resource name in the URL
    57     private final String module;
    63     private final String module;
    58     private final String name;
    64     private final String name;
    59 
    65