Package net.binis.codegen.factory
Class CodeFactory
java.lang.Object
net.binis.codegen.factory.CodeFactory
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classprotected static interfacestatic interfaceprotected static classprotected static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final List<Pair<Class<?>,ProjectionProvider>> protected static final Map<Class<?>,CodeFactory.EnumEntry> protected static EnvelopingObjectFactoryprotected static final List<ForeignObjectFactory>protected static final Map<Class<?>,CodeFactory.IdRegistryEntry> protected static ProjectionProviderprotected static final Map<Class<?>,Map<Class<?>, ProjectionInstantiation>> protected static ProxyProviderprotected static final Map<Class<?>,CodeFactory.RegistryEntry> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static <T extends CodeEnum>
CodeFactory.EnumInitializerbuildEnumInitializer(Class<T> cls) static <T> Tprotected static Optional<ProjectionProvider>checkForCustomClass(Class<?> cls) static voidstatic voidcleanEnvelopedType(Class<?> intf) static voidstatic <T> Tstatic <T> TcreateDefault(Class<T> cls, String defaultClass, Object... params) protected static <T> TcreateWithFactories(Class<T> cls, Object[] params) static voiddebug()protected static <T> TdefaultCreate(Class<?> impl, Class<T> cls, Object... params) protected static ObjectdefaultValue(Class<?> type) static <T extends CodeEnum>
TenumValueOf(Class<T> cls, int ordinal) static <T extends CodeEnum>
TenumValueOf(Class<T> cls, String name) static <T extends CodeEnum>
T[]enumValues(Class<T> cls) enumValuesMap(Class<T> cls) static voidenvelopFactory(EnvelopingObjectFactory factory) static <T> voidenvelopType(Class<T> intf, EnvelopFactory<T> impl, EmbeddedEnvelopFactory modifier) static CodeFactoryExeceptionstatic CodeFactoryExeceptionstatic CodeFactoryExeceptionstatic voidforceRegisterType(Class<?> intf, ObjectFactory impl, EmbeddedObjectFactory modifier) protected static intgenerateUniqueOrdinal(CodeFactory.EnumEntry registry) static ProjectionProviderstatic <T extends CodeEnum>
TinitializeEnumValue(Class<T> cls, String name, int ordinal, Object... params) static <T extends CodeEnum>
TinitializeUnknownEnumValue(Class<T> cls, String name, int ordinal, Object... params) protected static ProjectionProviderprotected static ProxyProviderprotected static <T> TinternalCreate(Class<T> cls, Class<?> impl, Object... params) protected static <T> TinternalEnvelop(T instance) static booleanisCustomProxyClass(Class<?> cls) static ObjectFactorystatic Class<?>static CodeFactory.IdDescriptionstatic <M,T, P> M static <T> Tprojection(Object object, Class<T> projection) static Objectprojections(Object object, Class<?>... projections) static <T> Tproxy(Class<T> cls, InvocationHandler handler) static voidregisterCustomProxyClass(Class<?> cls, ProjectionProvider provider) static voidstatic voidregisterId(Class<?> cls, String fieldName, Class<?> fieldType) static voidregisterType(Class<?> intf, Supplier impl) static voidregisterType(Class<?> intf, Supplier impl, EmbeddedObjectFactory modifier) static voidregisterType(Class<?> intf, ObjectFactory impl) static voidregisterType(Class<?> intf, ObjectFactory impl, EmbeddedObjectFactory modifier) static voidsetProjectionProvider(ProjectionProvider provider) static ObjectFactorystatic booleanunregisterType(Class<?> cls)
-
Field Details
-
registry
-
idRegistry
-
envelopingFactory
-
customProxyClassesRegistry
-
customProxyClasses
-
projectionsCache
-
foreignFactories
-
projections
-
proxies
-
enumRegistry
-
-
Constructor Details
-
CodeFactory
protected CodeFactory()
-
-
Method Details
-
create
-
createWithFactories
-
createDefault
-
modify
-
lookup
-
lookupId
-
registerForeignFactory
-
registerId
-
registerType
-
registerType
-
registerType
-
registerType
-
forceRegisterType
public static void forceRegisterType(Class<?> intf, ObjectFactory impl, EmbeddedObjectFactory modifier) -
unregisterType
-
envelopType
public static <T> void envelopType(Class<T> intf, EnvelopFactory<T> impl, EmbeddedEnvelopFactory modifier) -
cleanEnvelopedType
-
cleanAllEnvelopedTypes
public static void cleanAllEnvelopedTypes() -
envelopFactory
-
clearEnvelopingFactory
public static void clearEnvelopingFactory() -
singleton
-
lazy
-
setProjectionProvider
-
getProjectionProvider
-
debug
public static void debug() -
projection
-
proxy
-
projections
-
cast
-
registerCustomProxyClass
-
isCustomProxyClass
-
initializeEnumValue
-
generateUniqueOrdinal
-
initializeUnknownEnumValue
-
enumValueOf
-
enumValueOf
-
enumValuesMap
-
enumValues
-
exception
-
exception
-
exception
-
buildEnumInitializer
protected static <T extends CodeEnum> CodeFactory.EnumInitializer buildEnumInitializer(Class<T> cls) -
defaultValue
-
initProjectionProvider
-
initProxyProvider
-
checkForCustomClass
-
defaultCreate
-
internalCreate
-
internalEnvelop
protected static <T> T internalEnvelop(T instance)
-