Interface ICodeBase

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int IN_JAR_MANIFEST
      Codebase was referenced in the Class-Path attribute of a Jar manifest of another codebase.
      static int IN_SYSTEM_CLASSPATH
      Codebase was discovered in the system classpath.
      static int NESTED
      Codebase was discovered as a nested archive in another codebase.
      static int SPECIFIED
      Codebase was explicitly specified.
    • Field Detail

      • SPECIFIED

        static final int SPECIFIED
        Codebase was explicitly specified.
        See Also:
        Constant Field Values
      • NESTED

        static final int NESTED
        Codebase was discovered as a nested archive in another codebase.
        See Also:
        Constant Field Values
      • IN_JAR_MANIFEST

        static final int IN_JAR_MANIFEST
        Codebase was referenced in the Class-Path attribute of a Jar manifest of another codebase.
        See Also:
        Constant Field Values
      • IN_SYSTEM_CLASSPATH

        static final int IN_SYSTEM_CLASSPATH
        Codebase was discovered in the system classpath.
        See Also:
        Constant Field Values
    • Method Detail

      • getCodeBaseLocator

        ICodeBaseLocator getCodeBaseLocator()
        Get the codebase locator describing the location of this codebase.
        Returns:
        the ICodeBaseLocator
      • lookupResource

        ICodeBaseEntry lookupResource​(java.lang.String resourceName)
        Look up a resource in this code base.
        Parameters:
        resourceName - name of the resource to look up
        Returns:
        ICodeBaseEntry representing the resource or null if the resource cannot be found in this code base
      • setApplicationCodeBase

        void setApplicationCodeBase​(boolean isAppCodeBase)
        Designate this code base as an application codebase.
        Parameters:
        isAppCodeBase - true if this is an application codebase, false if not
      • isApplicationCodeBase

        boolean isApplicationCodeBase()
        Return whether or not this codebase is an application codebase.
        Returns:
        true if this is an application codebase, false if not
      • setHowDiscovered

        void setHowDiscovered​(int howDiscovered)
        Set how this codebase was discovered.
        Parameters:
        howDiscovered - one of the constants SPECIFIED, NESTED, IN_JAR_MANIFEST, or IN_SYSTEM_CLASSPATH
      • getHowDiscovered

        int getHowDiscovered()
        Return how this codebase was discovered.
        Returns:
        one of the constants SPECIFIED, NESTED, IN_JAR_MANIFEST, or IN_SYSTEM_CLASSPATH
      • containsSourceFiles

        boolean containsSourceFiles()
                             throws java.lang.InterruptedException
        Return whether or not this code base contains any source files.
        Returns:
        true if the code base contains source file(s), false if it does not contain source files
        Throws:
        java.lang.InterruptedException
      • getPathName

        java.lang.String getPathName()
        Get the filesystem pathname of this codebase.
        Returns:
        the filesystem pathname of this codebase, or null if this codebase is not accessible via the filesystem
      • setLastModifiedTime

        void setLastModifiedTime​(long lastModifiedTime)
        Set timestamp indicating the most recent time when any of the files in the codebase were modified.
        Parameters:
        lastModifiedTime - timestamp when any codebase files were most-recently modified
      • getLastModifiedTime

        long getLastModifiedTime()
        Get timestamp indicating the most recent time when any of the files in the codebase were modified. This information is only likely to be accurate if an ICodeBaseIterator has been used to scan the resources in the codebase (scannable codebases only, obviously).
        Returns:
        timestamp when any codebase files were most-recently modified, -1 if unknown
      • close

        void close()
        This method should be called when done using the code base.