Class Plugin.Factory.UsingReflection

  • All Implemented Interfaces:
    Plugin.Factory
    Enclosing interface:
    Plugin.Factory

    @Enhance
    public static class Plugin.Factory.UsingReflection
    extends java.lang.Object
    implements Plugin.Factory
    A plugin factory that uses reflection for instantiating a plugin.
    • Field Detail

      • type

        private final java.lang.Class<? extends Plugin> type
        The plugin type.
    • Constructor Detail

      • UsingReflection

        public UsingReflection​(java.lang.Class<? extends Plugin> type)
        Creates a plugin factory that uses reflection for creating a plugin.
        Parameters:
        type - The plugin type.
      • UsingReflection

        protected UsingReflection​(java.lang.Class<? extends Plugin> type,
                                  java.util.List<Plugin.Factory.UsingReflection.ArgumentResolver> argumentResolvers)
        Creates a plugin factory that uses reflection for creating a plugin.
        Parameters:
        type - The plugin type.
        argumentResolvers - A list of argument providers that can be used for instantiating the plugin.
    • Method Detail

      • with

        public Plugin.Factory.UsingReflection with​(Plugin.Factory.UsingReflection.ArgumentResolver... argumentResolver)
        Appends the supplied argument resolvers.
        Parameters:
        argumentResolver - A list of argument providers that can be used for instantiating the plugin.
        Returns:
        A new plugin factory that uses reflection for creating a plugin that also uses the supplied argument resolvers.
      • with

        public Plugin.Factory.UsingReflection with​(java.util.List<? extends Plugin.Factory.UsingReflection.ArgumentResolver> argumentResolvers)
        Appends the supplied argument resolvers.
        Parameters:
        argumentResolvers - A list of argument providers that can be used for instantiating the plugin.
        Returns:
        A new plugin factory that uses reflection for creating a plugin that also uses the supplied argument resolvers.
      • make

        public Plugin make()
        Returns a plugin that can be used for a transformation and which is subsequently closed.
        Specified by:
        make in interface Plugin.Factory
        Returns:
        The plugin to use for type transformations.