Class Plugin.Engine.Default

    • Constructor Detail

      • Default

        public Default()
        Creates a new default plugin engine that rebases types and fails fast and on unresolved types and on live initializers.
      • Default

        public Default​(ByteBuddy byteBuddy)
        Creates a new default plugin engine that rebases types and fails fast and on unresolved types and on live initializers.
        Parameters:
        byteBuddy - The Byte Buddy instance to use.
      • Default

        protected Default​(ByteBuddy byteBuddy,
                          Plugin.Engine.TypeStrategy typeStrategy)
        Creates a new default plugin engine.
        Parameters:
        byteBuddy - The Byte Buddy instance to use.
        typeStrategy - The type strategy to use.
    • Method Detail

      • of

        public static Plugin.Engine of​(EntryPoint entryPoint,
                                       ClassFileVersion classFileVersion,
                                       MethodNameTransformer methodNameTransformer)
        Creates a plugin engine from an EntryPoint.
        Parameters:
        entryPoint - The entry point to resolve into a plugin engine.
        classFileVersion - The class file version to assume.
        methodNameTransformer - The method name transformer to use.
        Returns:
        An appropriate plugin engine.
      • main

        public static void main​(java.lang.String... argument)
                         throws java.lang.ClassNotFoundException,
                                java.io.IOException
        Runs a plugin engine using the first and second argument as source and target file location and any additional argument as the fully qualified name of any plugin to apply.
        Parameters:
        argument - The arguments for running the plugin engine.
        Throws:
        java.lang.ClassNotFoundException - If a plugin class cannot be found on the system class loader.
        java.io.IOException - If an I/O exception occurs.
      • with

        public Plugin.Engine with​(ByteBuddy byteBuddy)
        Defines a new Byte Buddy instance for usage for type creation.
        Parameters:
        byteBuddy - The Byte Buddy instance to use.
        Returns:
        A new plugin engine that is equal to this engine but uses the supplied Byte Buddy instance.
      • with

        public Plugin.Engine with​(Plugin.Engine.TypeStrategy typeStrategy)
        Defines a new type strategy which determines the transformation mode for any instrumented type.
        Parameters:
        typeStrategy - The type stategy to use.
        Returns:
        A new plugin engine that is equal to this engine but uses the supplied type strategy.
      • with

        public Plugin.Engine with​(Plugin.Engine.PoolStrategy poolStrategy)
        Defines a new pool strategy that determines how types are being described.
        Parameters:
        poolStrategy - The pool strategy to use.
        Returns:
        A new plugin engine that is equal to this engine but uses the supplied pool strategy.
      • with

        public Plugin.Engine with​(ClassFileLocator classFileLocator)
        Appends the supplied class file locator to be queried for class files additionally to any previously registered class file locators.
        Parameters:
        classFileLocator - The class file locator to append.
        Returns:
        A new plugin engine that is equal to this engine but with the supplied class file locator being appended.
      • with

        public Plugin.Engine with​(Plugin.Engine.Listener listener)
        Appends the supplied listener to this engine.
        Parameters:
        listener - The listener to append.
        Returns:
        A new plugin engine that is equal to this engine but with the supplied listener being appended.
      • withoutErrorHandlers

        public Plugin.Engine withoutErrorHandlers()
        Replaces the error handlers of this plugin engine without applying any error handlers.
        Returns:
        A new plugin engine that is equal to this engine but without any error handlers being registered.
      • withErrorHandlers

        public Plugin.Engine withErrorHandlers​(java.util.List<? extends Plugin.Engine.ErrorHandler> errorHandlers)
        Replaces the error handlers of this plugin engine with the supplied error handlers.
        Parameters:
        errorHandlers - The error handlers to apply.
        Returns:
        A new plugin engine that is equal to this engine but with only the supplied error handlers being applied.
      • with

        public Plugin.Engine with​(Plugin.Engine.Dispatcher.Factory dispatcherFactory)
        Replaces the dispatcher factory of this plugin engine with the supplied dispatcher factory.
        Parameters:
        dispatcherFactory - The dispatcher factory to use.
        Returns:
        A new plugin engine that is equal to this engine but with the supplied dispatcher factory being used.
      • ignore

        public Plugin.Engine ignore​(ElementMatcher<? super TypeDescription> matcher)
        Ignores all types that are matched by this matcher or any previously registered ignore matcher.
        Parameters:
        matcher - The ignore matcher to append.
        Returns:
        A new plugin engine that is equal to this engine but which ignores any type that is matched by the supplied matcher.
      • apply

        public Plugin.Engine.Summary apply​(Plugin.Engine.Source source,
                                           Plugin.Engine.Target target,
                                           java.util.List<? extends Plugin.Factory> factories)
                                    throws java.io.IOException
        Applies this plugin engine onto a given source and target.
        Parameters:
        source - The source to use.
        target - The target to use.
        factories - A list of plugin factories to a apply.
        Returns:
        A summary of the applied transformation.
        Throws:
        java.io.IOException - If an I/O error occurs.