Class AsmDelegateFactory
java.lang.Object
ru.progrm_jarvis.javacommons.delegate.CachingGeneratingDelegateFactory
ru.progrm_jarvis.javacommons.delegate.AsmDelegateFactory
- All Implemented Interfaces:
DelegateFactory
@UsesBytecodeModification(ASM)
public final class AsmDelegateFactory
extends CachingGeneratingDelegateFactory
Implementation of
delegate factory which uses runtime class generation via ASM.-
Nested Class Summary
Nested classes/interfaces inherited from class ru.progrm_jarvis.javacommons.delegate.CachingGeneratingDelegateFactory
CachingGeneratingDelegateFactory.DelegateWrapperFactory<T> -
Field Summary
Fields inherited from class ru.progrm_jarvis.javacommons.delegate.CachingGeneratingDelegateFactory
factories -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic DelegateFactorycreate()Creates an ASM-baseddelegate factory.protected <T> @NotNull CachingGeneratingDelegateFactory.DelegateWrapperFactory<T>createFactory(@NotNull Class<T> targetType) Creates adelegate-wrapper factoryfot the given type.Methods inherited from class ru.progrm_jarvis.javacommons.delegate.CachingGeneratingDelegateFactory
createWrapper
-
Constructor Details
-
AsmDelegateFactory
@Internal public AsmDelegateFactory()Creates aProxy-baseddelegate factory.- This constructor is only visible for Java SPI consider using
preferred creation method
-
-
Method Details
-
create
Creates an ASM-baseddelegate factory.- Returns:
- ASM-based delegate factory
- API note
- singleton may be used here
-
createFactory
@NotNull protected <T> @NotNull CachingGeneratingDelegateFactory.DelegateWrapperFactory<T> createFactory(@NotNull @NotNull Class<T> targetType) Description copied from class:CachingGeneratingDelegateFactoryCreates adelegate-wrapper factoryfot the given type.- Specified by:
createFactoryin classCachingGeneratingDelegateFactory- Type Parameters:
T- created wrapper's type- Parameters:
targetType- type of the wrapper to be created by the factory- Returns:
- delegate-wrapper factory for the given type
-