Class Enhancer.EnhancerFactoryData

    • Constructor Summary

      Constructors 
      Constructor Description
      EnhancerFactoryData​(java.lang.Class generatedClass, java.lang.Class[] primaryConstructorArgTypes, boolean classOnly)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object newInstance​(java.lang.Class[] argumentTypes, java.lang.Object[] arguments, Callback[] callbacks)
      Creates proxy instance for given argument types, and assigns the callbacks.
      private void setThreadCallbacks​(Callback[] callbacks)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • generatedClass

        public final java.lang.Class generatedClass
      • setThreadCallbacks

        private final java.lang.reflect.Method setThreadCallbacks
      • primaryConstructorArgTypes

        private final java.lang.Class[] primaryConstructorArgTypes
      • primaryConstructor

        private final java.lang.reflect.Constructor primaryConstructor
    • Constructor Detail

      • EnhancerFactoryData

        public EnhancerFactoryData​(java.lang.Class generatedClass,
                                   java.lang.Class[] primaryConstructorArgTypes,
                                   boolean classOnly)
    • Method Detail

      • newInstance

        public java.lang.Object newInstance​(java.lang.Class[] argumentTypes,
                                            java.lang.Object[] arguments,
                                            Callback[] callbacks)
        Creates proxy instance for given argument types, and assigns the callbacks. Ideally, for each proxy class, just one set of argument types should be used, otherwise it would have to spend time on constructor lookup. Technically, it is a re-implementation of Enhancer.createUsingReflection(Class), with "cache setThreadCallbacks and primaryConstructor"
        Parameters:
        argumentTypes - constructor argument types
        arguments - constructor arguments
        callbacks - callbacks to set for the new instance
        Returns:
        newly created proxy
        See Also:
        Enhancer.createUsingReflection(Class)
      • setThreadCallbacks

        private void setThreadCallbacks​(Callback[] callbacks)