Module aermicioi.aedi.configurer.annotation.component_scan
Provides annotation based configuration and registration for components.
Functions
Name | Description |
---|---|
componentScan(storage, locator, id)
|
Register an object into storage using annotations provided in it. |
componentScan(storage, locator)
|
Register an object into storage by it's type FQN using annotations provided in it. |
componentScan(storage, locator)
|
Register an object into storage by I's interface FQN that it implements using annotations provided in it. |
componentScan(storage, locator)
|
Register a set of objects by it's type, or implemented interface into a storage. |
componentScan(storage, locator)
|
Scan a module and register all public objects that are annotated with @component annotation. |
componentScan(storage, locator)
|
Scan a set of modules and register all public objects that are annotated with @component annotation. |
componentScan(storageLocator, locator, id)
|
Register an object into a storage contained in storageLocator and identified by @container annotation using annotations provided in it. |
componentScan(storageLocator, locator)
|
Register an object into a storage contained in storageLocator and identified by @container annotation using annotations provided in it. |
componentScan(storageLocator, locator)
|
Register module's objects into a storage contained in storageLocator and identified by @container annotation using annotations provided in it. |
componentScanImpl(locator)
|
Structs
Name | Description |
---|---|
AllocatorConfiguratorPolicy
|
Set allocator used by factory to instantiate component T. |
AutowiredConstructorMethodConfiguratorPolicy
|
Method policy that scans constructors for @autowired annotation to use them to construct component with dependencies identified by their type. |
AutowiredFieldConfiguratorPolicy
|
Field configurator policy that will try to inject a dependency that matches fields type for fields that are annotated with @autowired annotation |
AutowiredMethodConfiguratorPolicy
|
Method configurator policy that will call method annotated with @autowire with arguments extracted from locator by their type. |
CallbackDestructorConfigurerPolicy
|
A policy that configures factory to use callback to destroy created components. |
CallbackFactoryConfiguratorPolicy
|
Set callback instance factory from @callbac annotation into GenericFactory!Z |
CallbackFieldConfiguratorPolicy
|
Field configurator policy that will set a field to value returned by a callback in @callback annotation |
CallbackMethodConfiguratorPolicy
|
Method configurator policy that will call callback from @callback annotated methods. |
ChainedConfiguratorPolicy
|
Chain a set of configurator policies. |
ChainedContainerAdder
|
ContainerAdder that chains a set of ContainerAdders on a symbol. |
ComponentStoringPolicyImpl
|
A default implementation of component storing policy that looks for @qualifier and @contained annotations to store component factory. |
ConfiguredFieldTester
|
A dummy structure that is providing a simple field for isFieldConfiguratorPolicy interface for testing purposes of configurator templates. |
ConfiguredMethodTester
|
A dummy structure that is providing a simple method for isMethodConfiguratorPolicy interface for testing purposes of configurator templates. |
ConstructorMethodConfiguratorPolicy
|
Method configurator policy that scans only constructors for @constructor annotation, for using them to instantiate component Z |
FactoryMethodContainerAdder
|
ContainerAdder that will scan a type for it's methods, and use them to create component factories out of their return type |
FallbackFactoryPolicy
|
A factory policy that applies in order a set of factory policies to create component factory. |
FieldScanningConfiguratorPolicy
|
Configurator policy that applies field configurator policies on all public methods of a component |
GenericConfigurerConfiguratorPolicy
|
A policy that uses annotations that implement isConfigurerPolicy interface to configure the component factory |
GenericFactoryAnnotationPolicy
|
A factory policy that uses annotations implementing factory policy interface on component to instantiate the component. |
GenericFactoryPolicy
|
Create a GenericFactory!T if T is annotated with @component annotation. |
InnerTypeContainerAdder
|
ContainerAdder that scans a type for inner static types, to transform and store into a storage. |
MethodScanningConfiguratorPolicy
|
Configurator policy that applies method configurator policies on all public methods of a component |
ModuleContainerAdder
|
ContainerAdder that will scan a module for it's members, to transform into component factories and add them into a storage |
ObjectFactoryTransformer
|
Transformer that wraps results of another transformer in WrappingFactory |
SetterFieldConfiguratorPolicy
|
Field configurator policy that will set a field annotated @setter annotation to value contained in it. |
SetterMethodConfiguratorPolicy
|
Method configurator policy that will call a method with resolved arguments from @setter annotation. |
TypeContainerAdder
|
Applies a transformer on passed symbol if it is a type. |
TypeTransformer
|
A transformer that creates out of a type a GenericFactory for passed type |
ValueFactoryConfiguratorPolicy
|
Set value factory that takes component from @value annotation and provides it as a new component. |
Templates
Name | Description |
---|---|
componentScan
|
Register an object into a storage contained in storageLocator and identified by @container annotation using annotations provided in it. |
componentScan
|
Register an object into a storage contained in storageLocator and identified by @container annotation using annotations provided in it. |
componentScan
|
Register module's objects into a storage contained in storageLocator and identified by @container annotation using annotations provided in it. |
Scanner
|
Template for defining scanning functions instantiated with particular container adder policy. |
Manifest constants
Name | Type | Description |
---|---|---|
isComponentStoringPolicy
|
Check if T implements component storing interface. | |
isConfiguratorPolicy
|
Check if a type T is a configurator policy. | |
isContainerAdder
|
Check if T implements ContainerAdder interface. | |
isFactoryPolicy
|
Check if a type T is a factory policy. | |
isFieldConfiguratorPolicy
|
Check if T is a field configurator policy that operates upon fields of a component. | |
isMethodConfiguratorPolicy
|
Check if T is a field configurator policy that operates upon methods of a component. | |
isTransformer
|
Check if a policy implements transformer interface. | |
identifierEq
|
||
isClass
|
||
isClass
|
||
isContained
|
||
isEqByFQDN
|
||
isNamedTemplate
|
||
isQualifier
|
||
isReturnTypeEq
|
||
isStruct
|
||
isStruct
|
||
isTemplateInstantiationOf
|
||
isTemplateInstantiationOf
|
||
isType
|
||
isValue
|
||
toValue
|
Aliases
Name | Type | Description |
---|---|---|
ConfiguratorPolicyImpl
|
ChainedConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.FieldScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.SetterFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredFieldConfiguratorPolicy).FieldScanningConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.MethodScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.ConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.SetterMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredMethodConfiguratorPolicy).MethodScanningConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AllocatorConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFactoryConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.ValueFactoryConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.GenericConfigurerConfiguratorPolicy)
|
Implementation of configurator policy, with built in configurators |
ContainerAdderImpl
|
ChainedContainerAdder!(TypeContainerAdder!TransformerPolicy,InnerTypeContainerAdder!(TypeContainerAdder!TransformerPolicy),FactoryMethodContainerAdder!(),ModuleContainerAdderImpl!TransformerPolicy)
|
Customizable implementation of container adder, with built in functionality |
FactoryPolicyImpl
|
FallbackFactoryPolicy!(aermicioi.aedi.configurer.annotation.component_scan.GenericFactoryPolicy,aermicioi.aedi.configurer.annotation.component_scan.GenericFactoryAnnotationPolicy)
|
Implementation of factory policy, with built in factory creators |
FieldScanningConfiguratorPolicyImpl
|
FieldScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.SetterFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredFieldConfiguratorPolicy)
|
Implementation of field scanning configurator policy, with built in field configurators. |
MethodScanningConfiguratorPolicyImpl
|
MethodScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.ConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.SetterMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredMethodConfiguratorPolicy)
|
Implementation of method scanning configurator policy, with built in method configurators. |
ModuleContainerAdderImpl
|
ModuleContainerAdder!(ChainedContainerAdder!(TypeContainerAdder!TransformerPolicy,InnerTypeContainerAdder!(TypeContainerAdder!TransformerPolicy),FactoryMethodContainerAdder!()))
|
Implementation of module container adder, featuring built in scanners |
ObjectFactoryTransformerImpl
|
ObjectFactoryTransformer!(aermicioi.aedi.configurer.annotation.component_scan.TypeTransformer!(aermicioi.aedi.configurer.annotation.component_scan.FallbackFactoryPolicy!(aermicioi.aedi.configurer.annotation.component_scan.GenericFactoryPolicy,aermicioi.aedi.configurer.annotation.component_scan.GenericFactoryAnnotationPolicy).FallbackFactoryPolicy,aermicioi.aedi.configurer.annotation.component_scan.ChainedConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.FieldScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.SetterFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredFieldConfiguratorPolicy).FieldScanningConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.MethodScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.ConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.SetterMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredMethodConfiguratorPolicy).MethodScanningConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AllocatorConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFactoryConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.ValueFactoryConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.GenericConfigurerConfiguratorPolicy).ChainedConfiguratorPolicy).TypeTransformer)
|
Implementation of object wrapping factory wrapping TypeTransformerImpl |
TypeTransformerImpl
|
TypeTransformer!(aermicioi.aedi.configurer.annotation.component_scan.FallbackFactoryPolicy!(aermicioi.aedi.configurer.annotation.component_scan.GenericFactoryPolicy,aermicioi.aedi.configurer.annotation.component_scan.GenericFactoryAnnotationPolicy).FallbackFactoryPolicy,aermicioi.aedi.configurer.annotation.component_scan.ChainedConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.FieldScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.SetterFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFieldConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredFieldConfiguratorPolicy).FieldScanningConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.MethodScanningConfiguratorPolicy!(aermicioi.aedi.configurer.annotation.component_scan.ConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredConstructorMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.SetterMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackMethodConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AutowiredMethodConfiguratorPolicy).MethodScanningConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.AllocatorConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.CallbackFactoryConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.ValueFactoryConfiguratorPolicy,aermicioi.aedi.configurer.annotation.component_scan.GenericConfigurerConfiguratorPolicy).ChainedConfiguratorPolicy)
|
Implementation of type to type factory transformer, with built in funcionality |
allUDAs
|
AliasSeq!(__traits(getAttributes,symbol))
|
|
getPossibleComponents
|
staticMap!(partialPrefixed!(getMember,Symbol),Filter!(templateAnd!(partialSuffixed!(partialPrefixed!(isProtection,Symbol),"public"),chain!(isType,partialPrefixed!(getMember,Symbol)),chain!(templateOr!(isClass,isStruct),partialPrefixed!(getMember,Symbol))),__traits(allMembers,Symbol)))
|
|
getPublicAggregateMembers
|
Filter!(templateAnd!(partialSuffixed!(partialPrefixed!(isProtection,Symbol),"public"),chain!(hasMembers,partialPrefixed!(getMember,Symbol))),__traits(allMembers,Symbol))
|
|
instantiatonToTemplate
|
templateSpecs
|
|
isContained
|
isContained!(typeof(T))
|
|
isQualifier
|
isQualifier!(typeof(T))
|
|
toValue
|
T
|