Class TomcatURLStreamHandlerFactory

  • All Implemented Interfaces:
    java.net.URLStreamHandlerFactory

    public class TomcatURLStreamHandlerFactory
    extends java.lang.Object
    implements java.net.URLStreamHandlerFactory
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addUserFactory​(java.net.URLStreamHandlerFactory factory)
      Since the JVM only allows a single call to URL.setURLStreamHandlerFactory(URLStreamHandlerFactory) and Tomcat needs to register a handler, provide a mechanism to allow applications to register their own handlers.
      java.net.URLStreamHandler createURLStreamHandler​(java.lang.String protocol)  
      static boolean disable()
      Prevent this this factory from registering with the JVM.
      static TomcatURLStreamHandlerFactory getInstance()
      Obtain a reference to the singleton instance.
      boolean isRegistered()  
      static boolean register()
      Register this factory with the JVM.
      static void release​(java.lang.ClassLoader classLoader)
      Release references to any user provided factories that have been loaded using the provided class loader.
      • Methods inherited from class java.lang.Object

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

      • getInstance

        public static TomcatURLStreamHandlerFactory getInstance()
        Obtain a reference to the singleton instance. It is recommended that callers check the value of isRegistered() before using the returned instance.
        Returns:
        A reference to the singleton instance
      • register

        public static boolean register()
        Register this factory with the JVM. May be called more than once. The implementation ensures that registration only occurs once.
        Returns:
        true if the factory is already registered with the JVM or was successfully registered as a result of this call. false if the factory was disabled prior to this call.
      • disable

        public static boolean disable()
        Prevent this this factory from registering with the JVM. May be called more than once.
        Returns:
        true if the factory is already disabled or was successfully disabled as a result of this call. false if the factory was already registered prior to this call.
      • release

        public static void release​(java.lang.ClassLoader classLoader)
        Release references to any user provided factories that have been loaded using the provided class loader. Called during web application stop to prevent memory leaks.
        Parameters:
        classLoader - The class loader to release
      • isRegistered

        public boolean isRegistered()
      • addUserFactory

        public void addUserFactory​(java.net.URLStreamHandlerFactory factory)
        Since the JVM only allows a single call to URL.setURLStreamHandlerFactory(URLStreamHandlerFactory) and Tomcat needs to register a handler, provide a mechanism to allow applications to register their own handlers.
        Parameters:
        factory - The user provided factory to add to the factories Tomcat has already registered
      • createURLStreamHandler

        public java.net.URLStreamHandler createURLStreamHandler​(java.lang.String protocol)
        Specified by:
        createURLStreamHandler in interface java.net.URLStreamHandlerFactory