Class UIMAClassLoader

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable

    public class UIMAClassLoader
    extends java.net.URLClassLoader
    UIMAClassLoader is used as extension ClassLoader for UIMA to load additional components like annotators and resources. The classpath of the classloader is specified as string. The strategy for this ClassLoader tries to load the class itself before the classloading is delegated to the application class loader.
    • Constructor Summary

      Constructors 
      Constructor Description
      UIMAClassLoader​(java.lang.String classpath)
      Creates a new UIMAClassLoader based on a classpath string
      UIMAClassLoader​(java.lang.String classpath, java.lang.ClassLoader parent)
      Creates a new UIMAClassLoader based on a classpath string.
      UIMAClassLoader​(java.net.URL[] classpath)
      Creates a new UIMAClassLoader based on a classpath URL's
      UIMAClassLoader​(java.net.URL[] classpath, java.lang.ClassLoader parent)
      Creates a new UIMAClassLoader based on a classpath URL's.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.net.URL getResource​(java.lang.String name)  
      protected java.lang.Class<?> loadClass​(java.lang.String name, boolean resolve)  
      static java.net.URLClassLoader newInstance​(java.net.URL[] urls)
      Do not use this factory method - throws unsupportedOperationException
      static java.net.URLClassLoader newInstance​(java.net.URL[] urls, java.lang.ClassLoader parent)
      Do not use this factory method - throws unsupportedOperationException
      static java.net.URL[] transformClasspath​(java.lang.String classpath)
      Transforms the string classpath to a URL array based classpath.
      • Methods inherited from class java.net.URLClassLoader

        addURL, close, definePackage, findClass, findResource, findResources, getPermissions, getResourceAsStream, getURLs
      • Methods inherited from class java.security.SecureClassLoader

        defineClass, defineClass
      • Methods inherited from class java.lang.ClassLoader

        clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
      • Methods inherited from class java.lang.Object

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

      • UIMAClassLoader

        public UIMAClassLoader​(java.lang.String classpath)
                        throws java.net.MalformedURLException
        Creates a new UIMAClassLoader based on a classpath string
        Parameters:
        classpath - a classpath string
        Throws:
        java.net.MalformedURLException - if a malformed URL has occurred in the classpath string.
      • UIMAClassLoader

        public UIMAClassLoader​(java.net.URL[] classpath)
        Creates a new UIMAClassLoader based on a classpath URL's
        Parameters:
        classpath - an array of wellformed classpath URL's
      • UIMAClassLoader

        public UIMAClassLoader​(java.net.URL[] classpath,
                               java.lang.ClassLoader parent)
        Creates a new UIMAClassLoader based on a classpath URL's. Also a parent ClassLoader can be specified.
        Parameters:
        classpath - an array of wellformed classpath URL's
        parent - specify the parent of the classloader
      • UIMAClassLoader

        public UIMAClassLoader​(java.lang.String classpath,
                               java.lang.ClassLoader parent)
                        throws java.net.MalformedURLException
        Creates a new UIMAClassLoader based on a classpath string. Also a parent ClassLoader can be specified.
        Parameters:
        classpath - a classpath string
        parent - specify the parent of the classloader
        Throws:
        java.net.MalformedURLException - if a malformed URL has occurred in the classpath string.
    • Method Detail

      • transformClasspath

        public static java.net.URL[] transformClasspath​(java.lang.String classpath)
                                                 throws java.net.MalformedURLException
        Transforms the string classpath to a URL array based classpath. The classpath string must be separated with the filesystem path separator.
        Parameters:
        classpath - a classpath string
        Returns:
        URL[] array of wellformed URL's
        Throws:
        java.net.MalformedURLException - if a malformed URL has occurred in the classpath string.
      • newInstance

        public static java.net.URLClassLoader newInstance​(java.net.URL[] urls)
        Do not use this factory method - throws unsupportedOperationException
        Parameters:
        urls - -
        Returns:
        -
        Throws:
        java.lang.UnsupportedOperationException - -
      • newInstance

        public static java.net.URLClassLoader newInstance​(java.net.URL[] urls,
                                                          java.lang.ClassLoader parent)
        Do not use this factory method - throws unsupportedOperationException
        Parameters:
        urls - -
        parent - -
        Returns:
        -
        Throws:
        java.lang.UnsupportedOperationException - -
      • loadClass

        protected java.lang.Class<?> loadClass​(java.lang.String name,
                                               boolean resolve)
                                        throws java.lang.ClassNotFoundException
        Overrides:
        loadClass in class java.lang.ClassLoader
        Throws:
        java.lang.ClassNotFoundException
      • getResource

        public java.net.URL getResource​(java.lang.String name)
        Overrides:
        getResource in class java.lang.ClassLoader