Class ClassInjector.UsingInstrumentation

    • Constructor Detail

      • UsingInstrumentation

        protected UsingInstrumentation​(File folder,
                                       ClassInjector.UsingInstrumentation.Target target,
                                       Instrumentation instrumentation,
                                       RandomString randomString)
        Creates an instrumentation-based class injector.
        Parameters:
        folder - The folder to be used for storing jar files.
        target - A representation of the target path to which classes are to be appended.
        instrumentation - The instrumentation to use for appending to the class path or the boot path.
        randomString - The random string generator to use.
    • Method Detail

      • of

        public static ClassInjector of​(File folder,
                                       ClassInjector.UsingInstrumentation.Target target,
                                       Instrumentation instrumentation)
        Creates an instrumentation-based class injector.
        Parameters:
        folder - The folder to be used for storing jar files.
        target - A representation of the target path to which classes are to be appended.
        instrumentation - The instrumentation to use for appending to the class path or the boot path.
        Returns:
        An appropriate class injector that applies instrumentation.
      • isAlive

        public boolean isAlive()
        Indicates if this class injector is available on the current VM.
        Returns:
        true if this injector is available on the current VM.
      • injectRaw

        public Map<String,​Class<?>> injectRaw​(Map<? extends String,​byte[]> types)
        Injects the given types into the represented class loader using a mapping from name to binary representation.
        Parameters:
        types - The types to load via injection.
        Returns:
        The loaded types that were passed as arguments.
      • isAvailable

        public static boolean isAvailable()
        Returns true if this class injector is available on this VM.
        Returns:
        true if this class injector is available on this VM.