Interface JavaModule.Dispatcher

    • Method Detail

      • isAlive

        boolean isAlive()
        Checks if this dispatcher is alive, i.e. supports modules.
        Returns:
        true if modules are supported on the current VM.
      • moduleOf

        JavaModule moduleOf​(Class<?> type)
        Extracts the Java Module for the provided class or returns null if the current VM does not support modules.
        Parameters:
        type - The type for which to extract the module.
        Returns:
        The class's Module or null if the current VM does not support modules.
      • isNamed

        boolean isNamed​(Object module)
        Returns true if the supplied module is named.
        Parameters:
        module - The java.lang.Module to check for the existence of a name.
        Returns:
        true if the supplied module is named.
      • getName

        String getName​(Object module)
        Returns the module's name.
        Parameters:
        module - The java.lang.Module to check for its name.
        Returns:
        The module's (implicit or explicit) name.
      • getResourceAsStream

        InputStream getResourceAsStream​(Object module,
                                        String name)
        Returns a resource stream for this module for a resource of the given name or null if such a resource does not exist.
        Parameters:
        module - The java.lang.Module instance to apply this method upon.
        name - The name of the resource.
        Returns:
        An input stream for the resource or null if it does not exist.
      • getClassLoader

        ClassLoader getClassLoader​(Object module)
        Returns the module's class loader.
        Parameters:
        module - The java.lang.Module
        Returns:
        The module's class loader.
      • isExported

        boolean isExported​(Object source,
                           Object target,
                           String aPackage)
        Returns true if the source module exports the supplied package to the target module.
        Parameters:
        source - The source module.
        target - The target module.
        aPackage - The name of the package to check.
        Returns:
        true if the source module exports the supplied package to the target module.
      • isOpened

        boolean isOpened​(Object source,
                         Object target,
                         String aPackage)
        Returns true if the source module opens the supplied package to the target module.
        Parameters:
        source - The source module.
        target - The target module.
        aPackage - The name of the package to check.
        Returns:
        true if the source module opens the supplied package to the target module.
      • canRead

        boolean canRead​(Object source,
                        Object target)
        Checks if the source module can read the target module.
        Parameters:
        source - The source module.
        target - The target module.
        Returns:
        true if the source module can read the target module.
      • modify

        void modify​(Instrumentation instrumentation,
                    Object module,
                    Set<Object> reads,
                    Map<String,​Set<Object>> exports,
                    Map<String,​Set<Object>> opens,
                    Set<Class<?>> uses,
                    Map<Class<?>,​List<Class<?>>> provides)
        Modifies this module's properties.
        Parameters:
        instrumentation - The instrumentation instace to use for applying the modification.
        module - The module to modify.
        reads - A set of additional modules this module should read.
        exports - A map of packages to export to a set of modules.
        opens - A map of packages to open to a set of modules.
        uses - A set of provider interfaces to use by this module.
        provides - A map of provider interfaces to provide by this module mapped to the provider implementations.