- Type Parameters:
T
- the generic type of theDependency
.
- All Superinterfaces:
org.refcodes.mixin.AliasAccessor
,org.refcodes.mixin.AliasAccessor.AliasBuilder<DependencyBuilder<T>>
,org.refcodes.mixin.AliasAccessor.AliasMutator
,org.refcodes.mixin.AliasAccessor.AliasProperty
,ClaimsAccessor
,ClaimsAccessor.ClaimsBuilder<DependencyBuilder<T>>
,ClaimsAccessor.ClaimsMutator
,ClaimsAccessor.ClaimsProperty
,Comparable<Dependency<T>>
,Dependency<T>
,org.refcodes.mixin.InstanceAccessor<T>
,org.refcodes.mixin.InstanceAccessor.InstanceBuilder<T,
,DependencyBuilder<T>> org.refcodes.mixin.InstanceAccessor.InstanceMutator<T>
,org.refcodes.mixin.InstanceAccessor.InstanceProperty<T>
,InstanceMetricsAccessor
,InstanceMetricsAccessor.InstanceMetricsBuilder<DependencyBuilder<T>>
,InstanceMetricsAccessor.InstanceMetricsMutator
,InstanceMetricsAccessor.InstanceMetricsProperty
,ProfilesAccessor
,ProfilesAccessor.ProfilesBuilder<DependencyBuilder<T>>
,ProfilesAccessor.ProfilesMutator
,ProfilesAccessor.ProfilesProperty
,org.refcodes.mixin.Schemable
,TagsAccessor
,TagsAccessor.TagsBuilder<DependencyBuilder<T>>
,TagsAccessor.TagsMutator
,TagsAccessor.TagsProperty
,org.refcodes.mixin.TypeAccessor<T>
,org.refcodes.mixin.TypeAccessor.TypeBuilder<T,
,DependencyBuilder<T>> org.refcodes.mixin.TypeAccessor.TypeMutator<T>
,org.refcodes.mixin.TypeAccessor.TypeProperty<T>
- All Known Implementing Classes:
DependencyBuilderImpl
public interface DependencyBuilder<T>
extends Dependency<T>, org.refcodes.mixin.AliasAccessor.AliasProperty, org.refcodes.mixin.AliasAccessor.AliasBuilder<DependencyBuilder<T>>, org.refcodes.mixin.TypeAccessor.TypeProperty<T>, org.refcodes.mixin.TypeAccessor.TypeBuilder<T,DependencyBuilder<T>>, org.refcodes.mixin.InstanceAccessor.InstanceProperty<T>, org.refcodes.mixin.InstanceAccessor.InstanceBuilder<T,DependencyBuilder<T>>, ProfilesAccessor.ProfilesProperty, ProfilesAccessor.ProfilesBuilder<DependencyBuilder<T>>, TagsAccessor.TagsProperty, TagsAccessor.TagsBuilder<DependencyBuilder<T>>, InstanceMetricsAccessor.InstanceMetricsProperty, InstanceMetricsAccessor.InstanceMetricsBuilder<DependencyBuilder<T>>, ClaimsAccessor.ClaimsProperty, ClaimsAccessor.ClaimsBuilder<DependencyBuilder<T>>
A
DependencyBuilder
describes a component or module depending on or
required by other components or modules.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.refcodes.mixin.AliasAccessor
org.refcodes.mixin.AliasAccessor.AliasBuilder<B extends org.refcodes.mixin.AliasAccessor.AliasBuilder<B>>, org.refcodes.mixin.AliasAccessor.AliasMutator, org.refcodes.mixin.AliasAccessor.AliasProperty
Nested classes/interfaces inherited from interface org.refcodes.decoupling.ClaimsAccessor
ClaimsAccessor.ClaimsBuilder<B extends ClaimsAccessor.ClaimsBuilder<B>>, ClaimsAccessor.ClaimsMutator, ClaimsAccessor.ClaimsProperty
Nested classes/interfaces inherited from interface org.refcodes.mixin.InstanceAccessor
org.refcodes.mixin.InstanceAccessor.InstanceBuilder<T extends Object,
B extends org.refcodes.mixin.InstanceAccessor.InstanceBuilder<T, B>>, org.refcodes.mixin.InstanceAccessor.InstanceMutator<T extends Object>, org.refcodes.mixin.InstanceAccessor.InstanceProperty<T extends Object> Nested classes/interfaces inherited from interface org.refcodes.decoupling.InstanceMetricsAccessor
InstanceMetricsAccessor.InstanceMetricsBuilder<B extends InstanceMetricsAccessor.InstanceMetricsBuilder<B>>, InstanceMetricsAccessor.InstanceMetricsMutator, InstanceMetricsAccessor.InstanceMetricsProperty
Nested classes/interfaces inherited from interface org.refcodes.decoupling.ProfilesAccessor
ProfilesAccessor.ProfilesBuilder<B extends ProfilesAccessor.ProfilesBuilder<B>>, ProfilesAccessor.ProfilesMutator, ProfilesAccessor.ProfilesProperty
Nested classes/interfaces inherited from interface org.refcodes.decoupling.TagsAccessor
TagsAccessor.TagsBuilder<B extends TagsAccessor.TagsBuilder<B>>, TagsAccessor.TagsMutator, TagsAccessor.TagsProperty
Nested classes/interfaces inherited from interface org.refcodes.mixin.TypeAccessor
org.refcodes.mixin.TypeAccessor.TypeBuilder<T extends Object,
B extends org.refcodes.mixin.TypeAccessor.TypeBuilder<T, B>>, org.refcodes.mixin.TypeAccessor.TypeMutator<T extends Object>, org.refcodes.mixin.TypeAccessor.TypeProperty<T extends Object> -
Method Summary
Modifier and TypeMethodDescriptionboolean
boolean
boolean
boolean
boolean
addProfile
(Object aProfile) Adds the given profile to the profiles.boolean
Adds the given tag to the tags.void
setClaims
(Collection<Claim> aClaims) Sets theClaim
instances to theDependencyBuilder
instance.<D> void
setFactory
(Class<D> aDependency, Function<D, T> aFactory) <D> void
setFactory
(Class<D> aDependency, Function<D, T> aFactory, String aAlias) <D> void
setFactory
(Factory<D, T> aFactory) void
setInstanceMetrics
(InstanceMode aInstanceMode) Sets theInstanceMode
which describes how an instance for aDependency
is managed.void
setProfiles
(Collection<?> aProfiles) Sets the profiles assigned to theDependencyBuilder
instance.<D> void
setSetup
(Class<D> aDependency, BiFunction<T, D, T> aInitializer) <D> void
<D> void
void
setTags
(Collection<?> aTags) Sets the tags assigned to theDependencyBuilder
instance.withAddClaim
(Class<?> aType) Builder method for the accordingaddClaim(Class)
method.withAddClaim
(Class<?> aType, String aAlias) Builder method for the accordingaddClaim(Class, String)
method.withAddClaim
(String aAlias) Builder method for the accordingaddClaim(Claim)
method.withAddClaim
(Claim aClaim) Builder method for the accordingaddClaim(Claim)
method.withAddProfile
(Object aProfile) Builder method for adding a single profile.withAddTag
(Object aTag) Builder method for adding a single tag.withClaims
(Collection<Claim> aClaims) Builder method for theClaimsAccessor.ClaimsMutator.setClaims(Claim[])
method.<D> DependencyBuilder<T>
withFactory
(Class<D> aDependency, Function<D, T> aFactory) Builder method for thesetFactory(Class, Function)
method.<D> DependencyBuilder<T>
withFactory
(Class<D> aDependency, Function<D, T> aFactory, String aAlias) Builder method for thesetFactory(Class, Function, String)
method.<D> DependencyBuilder<T>
withFactory
(Factory<D, T> aFactory) Builder method for thesetFactory(Factory)
method.withInstanceMetrics
(InstanceMode aInstanceMode) Builder method for thesetInstanceMetrics(InstanceMode)
method.withProfiles
(Collection<?> aProfiles) Builder method for theProfilesAccessor.ProfilesMutator.setProfiles(Object[])
method.<D> DependencyBuilder<T>
withSetup
(Class<D> aDependency, BiFunction<T, D, T> aInitializer) Builder method for thesetSetup(Class, BiFunction)
method.<D> DependencyBuilder<T>
Builder method for thesetSetup(Class, BiFunction, String)
method.<D> DependencyBuilder<T>
Builder method for thesetSetup(Setup)
method.withTags
(Collection<?> aTags) Builder method for theTagsAccessor.TagsMutator.setTags(Object[])
method.Methods inherited from interface org.refcodes.mixin.AliasAccessor
getAlias
Methods inherited from interface org.refcodes.mixin.AliasAccessor.AliasBuilder
withAlias
Methods inherited from interface org.refcodes.mixin.AliasAccessor.AliasMutator
setAlias
Methods inherited from interface org.refcodes.mixin.AliasAccessor.AliasProperty
letAlias
Methods inherited from interface org.refcodes.decoupling.ClaimsAccessor
getClaims
Methods inherited from interface org.refcodes.decoupling.ClaimsAccessor.ClaimsBuilder
withClaims
Methods inherited from interface org.refcodes.decoupling.ClaimsAccessor.ClaimsMutator
setClaims
Methods inherited from interface org.refcodes.decoupling.ClaimsAccessor.ClaimsProperty
letClaims
Methods inherited from interface org.refcodes.decoupling.Dependency
compareTo, getFactory, getInstances, getSetup, hasInstance, hasInstance, toInstance, toSchema
Methods inherited from interface org.refcodes.mixin.InstanceAccessor
getInstance
Methods inherited from interface org.refcodes.mixin.InstanceAccessor.InstanceBuilder
withInstance
Methods inherited from interface org.refcodes.mixin.InstanceAccessor.InstanceMutator
setInstance
Methods inherited from interface org.refcodes.mixin.InstanceAccessor.InstanceProperty
letInstance
Methods inherited from interface org.refcodes.decoupling.InstanceMetricsAccessor
getInstanceMetrics
Methods inherited from interface org.refcodes.decoupling.InstanceMetricsAccessor.InstanceMetricsBuilder
withInstanceMetrics
Methods inherited from interface org.refcodes.decoupling.InstanceMetricsAccessor.InstanceMetricsMutator
setInstanceMetrics
Methods inherited from interface org.refcodes.decoupling.InstanceMetricsAccessor.InstanceMetricsProperty
letInstanceMetrics
Methods inherited from interface org.refcodes.decoupling.ProfilesAccessor
getProfiles
Methods inherited from interface org.refcodes.decoupling.ProfilesAccessor.ProfilesBuilder
withProfiles
Methods inherited from interface org.refcodes.decoupling.ProfilesAccessor.ProfilesMutator
setProfiles
Methods inherited from interface org.refcodes.decoupling.ProfilesAccessor.ProfilesProperty
letProfiles
Methods inherited from interface org.refcodes.decoupling.TagsAccessor
getTags
Methods inherited from interface org.refcodes.decoupling.TagsAccessor.TagsBuilder
withTags
Methods inherited from interface org.refcodes.decoupling.TagsAccessor.TagsMutator
setTags
Methods inherited from interface org.refcodes.decoupling.TagsAccessor.TagsProperty
letTags
Methods inherited from interface org.refcodes.mixin.TypeAccessor
getType
Methods inherited from interface org.refcodes.mixin.TypeAccessor.TypeBuilder
withType
Methods inherited from interface org.refcodes.mixin.TypeAccessor.TypeMutator
setType
Methods inherited from interface org.refcodes.mixin.TypeAccessor.TypeProperty
letType
-
Method Details
-
addClaim
-
addClaim
-
addClaim
-
addClaim
-
addProfile
Adds the given profile to the profiles.- Parameters:
aProfile
- The profile to add.- Returns:
- True in case the profile was added, false in case the profile has already been added.
-
addTag
Adds the given tag to the tags.- Parameters:
aTag
- The tag to add.- Returns:
- True in case the tag was added, false in case the tag has already been added.
-
setInstanceMetrics
Sets theInstanceMode
which describes how an instance for aDependency
is managed.- Parameters:
aInstanceMode
- The accordingInstanceMode
.
-
setProfiles
Sets the profiles assigned to theDependencyBuilder
instance.- Parameters:
aProfiles
- The profiles to be assigned.
-
setTags
Sets the tags assigned to theDependencyBuilder
instance.- Parameters:
aTags
- The tags to be assigned.
-
setSetup
- Type Parameters:
D
- The type of theDependency
being required by theSetup
.- Parameters:
aSetup
- TheSetup
instance used for setting up theDependency
.
-
setSetup
- Type Parameters:
D
- The type of theDependency
being required by theSetup
.- Parameters:
aDependency
- The according claim required by theSetup
.aInitializer
- The factory setting up thisDependency
's instance by a claim'sDependency
.
-
setSetup
- Type Parameters:
D
- The type of theDependency
being required by theSetup
.- Parameters:
aDependency
- The according claim required by theSetup
.aInitializer
- The factory setting up thisDependency
's instance by a claim'sDependency
.aAlias
- the alias for theSetup
to be added.
-
setFactory
- Type Parameters:
D
- The type of theDependency
being required by theFactory
.- Parameters:
aFactory
- TheFactory
instance used to create (fabricate) theDependency
's instance.
-
setFactory
- Type Parameters:
D
- The type of theDependency
being required by theFactory
.- Parameters:
aDependency
- The according claim required by theFactory
.aFactory
- The factory used to create (fabricate) theDependency
's instance.
-
setFactory
- Type Parameters:
D
- The type of theDependency
being required by theFactory
.- Parameters:
aDependency
- The according claim required by theFactory
.aFactory
- The factory setting up thisDependency
's instance.aAlias
- the alias for theFactory
to be added.
-
setClaims
Sets theClaim
instances to theDependencyBuilder
instance.- Parameters:
aClaims
- TheClaim
instances to be assigned.
-
withAddProfile
Builder method for adding a single profile.- Parameters:
aProfile
- The profile to be added.- Returns:
- This instance as of the builder pattern.
-
withAddTag
Builder method for adding a single tag.- Parameters:
aTag
- The tag to be added.- Returns:
- This instance as of the builder pattern.
-
withAddClaim
Builder method for the accordingaddClaim(Claim)
method. -
withAddClaim
Builder method for the accordingaddClaim(Claim)
method. -
withAddClaim
Builder method for the accordingaddClaim(Class)
method.- Parameters:
aType
- the type of the claimed dependency.- Returns:
- This instance as of the builder pattern with additions to finish
building the current
Claim
.
-
withAddClaim
Builder method for the accordingaddClaim(Class, String)
method. -
withInstanceMetrics
Builder method for thesetInstanceMetrics(InstanceMode)
method.- Parameters:
aInstanceMode
- The accordingInstanceMode
.- Returns:
- This instance as of the builder pattern.
-
withProfiles
Builder method for theProfilesAccessor.ProfilesMutator.setProfiles(Object[])
method.- Parameters:
aProfiles
- The profiles to be assigned.- Returns:
- This instance as of the builder pattern.
-
withTags
Builder method for theTagsAccessor.TagsMutator.setTags(Object[])
method.- Parameters:
aTags
- The tags to be assigned.- Returns:
- This instance as of the builder pattern.
-
withClaims
Builder method for theClaimsAccessor.ClaimsMutator.setClaims(Claim[])
method.- Parameters:
aClaims
- TheClaim
instances to be assigned.- Returns:
- This instance as of the builder pattern.
-
withSetup
Builder method for thesetSetup(Setup)
method.- Type Parameters:
D
- The type of theDependency
being required by theSetup
.- Parameters:
aSetup
- TheSetup
instance used for setting up theDependency
.- Returns:
- This instance as of the builder pattern.
-
withSetup
Builder method for thesetSetup(Class, BiFunction)
method.- Type Parameters:
D
- The type of theDependency
being required by theSetup
.- Parameters:
aDependency
- The according dependency required by theSetup
.aInitializer
- The factory setting up thisDependency
's instance using the provided dependency.- Returns:
- This instance as of the builder pattern.
-
withSetup
<D> DependencyBuilder<T> withSetup(Class<D> aDependency, BiFunction<T, D, T> aInitializer, String aAlias) Builder method for thesetSetup(Class, BiFunction, String)
method.- Type Parameters:
D
- The type of theDependency
being required by theSetup
.- Parameters:
aDependency
- The according claim required by theSetup
.aInitializer
- The factory setting up thisDependency
's instance using the provided dependency.aAlias
- the alias for theSetup
to be added.- Returns:
- This instance as of the builder pattern.
-
withFactory
Builder method for thesetFactory(Factory)
method.- Type Parameters:
D
- The type of theDependency
being required by theFactory
.- Parameters:
aFactory
- TheFactory
instance used for setting up theDependency
.- Returns:
- This instance as of the builder pattern.
-
withFactory
Builder method for thesetFactory(Class, Function)
method.- Type Parameters:
D
- The type of theDependency
being required by theFactory
.- Parameters:
aDependency
- The according dependency required by theFactory
.aFactory
- The factory fabricating (creating) thisDependency
's instances using the provided dependency.- Returns:
- This instance as of the builder pattern.
-
withFactory
Builder method for thesetFactory(Class, Function, String)
method.- Type Parameters:
D
- The type of theDependency
being required by theFactory
.- Parameters:
aDependency
- The according dependency required by theFactory
.aFactory
- The factory fabricating (creating) thisDependency
's instances using the provided dependency.aAlias
- the alias for theFactory
to be added.- Returns:
- This instance as of the builder pattern.
-