Class Handler


  • public class Handler
    extends java.net.URLStreamHandler
    A protocol handler for the n(ested)jar protocol.

    This is class allows you to use the njar: URL protocol. It is very similar to it's jar: cusin. The difference being that jars can be nested.

    An example of how to use this class is:

    
        URL url = new URL("njar:njar:file:c:/test1.zip^/test2.zip^/hello.txt");
        url.openStream();
    
     

    Please be aware that the njar protocol caches it's jar in temporary storage when connections are opened into them. So for the above example, 2 files would cached a temp files names similar to nested-xxxx.jar

    Version:
    $Revision$
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String JAR_SEPARATOR  
      private static org.jboss.logging.Logger log  
      static java.lang.String NJAR_SEPARATOR  
      static java.lang.String PROTOCOL  
      protected java.util.Map savedJars  
    • Constructor Summary

      Constructors 
      Constructor Description
      Handler()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static java.net.URL njarToFile​(java.net.URL url)  
      java.net.URLConnection openConnection​(java.net.URL url)  
      • Methods inherited from class java.net.URLStreamHandler

        equals, getDefaultPort, getHostAddress, hashCode, hostsEqual, openConnection, parseURL, sameFile, setURL, setURL, toExternalForm
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • log

        private static final org.jboss.logging.Logger log
      • savedJars

        protected java.util.Map savedJars
    • Constructor Detail

      • Handler

        public Handler()
    • Method Detail

      • openConnection

        public java.net.URLConnection openConnection​(java.net.URL url)
                                              throws java.io.IOException
        Specified by:
        openConnection in class java.net.URLStreamHandler
        Throws:
        java.io.IOException
      • njarToFile

        public static java.net.URL njarToFile​(java.net.URL url)