Interface Plugin.Engine

All Known Implementing Classes:
Plugin.Engine.AbstractBase, Plugin.Engine.Default
Enclosing interface:
Plugin

public static interface Plugin.Engine
A plugin engine allows the application of one or more plugins on class files found at a Plugin.Engine.Source which are then transferred and consumed by a Plugin.Engine.Target.
  • Field Details

  • Method Details

    • with

      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

      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

      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

      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

      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

      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

      Plugin.Engine withErrorHandlers(Plugin.Engine.ErrorHandler... errorHandler)
      Replaces the error handlers of this plugin engine with the supplied error handlers.
      Parameters:
      errorHandler - 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.
    • withErrorHandlers

      Plugin.Engine withErrorHandlers(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.
    • withParallelTransformation

      Plugin.Engine withParallelTransformation(int threads)
      Replaces the dispatcher factory of this plugin engine with a parallel dispatcher factory that uses the given amount of threads.
      Parameters:
      threads - The amount of threads to use.
      Returns:
      A new plugin engine that is equal to this engine but with a parallel dispatcher factory using the specified amount of threads.
    • with

      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

      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

      Plugin.Engine.Summary apply(File source, File target, Plugin.Factory... factory) throws IOException
      Applies this plugin engine onto a given source and target.
      Parameters:
      source - The source which is treated as a folder or a jar file, if a folder does not exist.
      target - The target which is treated as a folder or a jar file, if a folder does not exist.
      factory - A list of plugin factories to a apply.
      Returns:
      A summary of the applied transformation.
      Throws:
      IOException - If an I/O error occurs.
    • apply

      Plugin.Engine.Summary apply(File source, File target, List<? extends Plugin.Factory> factories) throws IOException
      Applies this plugin engine onto a given source and target.
      Parameters:
      source - The source which is treated as a folder or a jar file, if a folder does not exist.
      target - The target which is treated as a folder or a jar file, if a folder does not exist.
      factories - A list of plugin factories to a apply.
      Returns:
      A summary of the applied transformation.
      Throws:
      IOException - If an I/O error occurs.
    • apply

      Applies this plugin engine onto a given source and target.
      Parameters:
      source - The source to use.
      target - The target to use.
      factory - A list of plugin factories to a apply.
      Returns:
      A summary of the applied transformation.
      Throws:
      IOException - If an I/O error occurs.
    • apply

      Plugin.Engine.Summary apply(Plugin.Engine.Source source, Plugin.Engine.Target target, List<? extends Plugin.Factory> factories) throws 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:
      IOException - If an I/O error occurs.