Class Packages


  • public final class Packages
    extends Object
    Utilities for dealing with packages.
    Author:
    Jonathan Locke, Niclas Hedhman
    • Method Detail

      • absolutePath

        public static String absolutePath​(Class<?> p,
                                          String path)
        Takes a package and a path to a resource and returns an absolute path to the resource.

        See absolutePath(String, String) for details.

        Parameters:
        p - The package to start at
        path - The path to the resource
        Returns:
        The absolute path
      • absolutePath

        public static String absolutePath​(Package p,
                                          String relativePath)
        Takes a package and a path to a resource and returns an absolute path to the resource.

        See absolutePath(String, String) for details.

        Parameters:
        p - The package to start at
        relativePath - The path to the resource
        Returns:
        The absolute path
      • absolutePath

        public static String absolutePath​(String packageName,
                                          String path)
        Takes a package and a path to a resource and returns an absolute path to the resource. For example, if the given package was java.lang and the relative path was "../util/List", then "java/util/List" would be returned. An already absolute path stays absolute.

        Note: The returned absolute path does not start with a slash ("/").

        Parameters:
        packageName - The package to start at
        path - The path to the resource
        Returns:
        The absolute path
      • extractPackageName

        public static String extractPackageName​(Class<?> forClass)
        Determines the package name for the given class.
        Parameters:
        forClass - the class
        Returns:
        the package name
      • parent

        public static String parent​(String packageName)
        Gets the parent package name.
        Parameters:
        packageName - The Package name
        Returns:
        The parent Package
      • resolveScope

        public static String resolveScope​(Class<?> forClass)
        Resolve scope for the given class by extracting it's package name and converting all dots to slashes.
        Parameters:
        forClass - the class
        Returns:
        the scope string