Class MemberAccessorFactory
- java.lang.Object
-
- org.optaplanner.core.impl.domain.common.accessor.MemberAccessorFactory
-
public final class MemberAccessorFactory extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MemberAccessorFactory.MemberAccessorType
-
Constructor Summary
Constructors Constructor Description MemberAccessorFactory()
MemberAccessorFactory(Map<String,MemberAccessor> memberAccessorMap)
Prefills the member accessor cache.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description MemberAccessor
buildAndCacheMemberAccessor(Member member, MemberAccessorFactory.MemberAccessorType memberAccessorType, Class<? extends Annotation> annotationClass, DomainAccessType domainAccessType)
Creates a new member accessor based on the given parameters.static MemberAccessor
buildMemberAccessor(Member member, MemberAccessorFactory.MemberAccessorType memberAccessorType, Class<? extends Annotation> annotationClass, DomainAccessType domainAccessType)
Creates a new member accessor based on the given parameters.
-
-
-
Constructor Detail
-
MemberAccessorFactory
public MemberAccessorFactory()
-
MemberAccessorFactory
public MemberAccessorFactory(Map<String,MemberAccessor> memberAccessorMap)
Prefills the member accessor cache.- Parameters:
memberAccessorMap
- key is the fully qualified member name
-
-
Method Detail
-
buildMemberAccessor
public static MemberAccessor buildMemberAccessor(Member member, MemberAccessorFactory.MemberAccessorType memberAccessorType, Class<? extends Annotation> annotationClass, DomainAccessType domainAccessType)
Creates a new member accessor based on the given parameters.- Parameters:
member
- never null, method or field to accessmemberAccessorType
-annotationClass
- the annotation the member was annotated with (used for error reporting)domainAccessType
-- Returns:
- never null, new instance of the member accessor
-
buildAndCacheMemberAccessor
public MemberAccessor buildAndCacheMemberAccessor(Member member, MemberAccessorFactory.MemberAccessorType memberAccessorType, Class<? extends Annotation> annotationClass, DomainAccessType domainAccessType)
Creates a new member accessor based on the given parameters. Caches the result.- Parameters:
member
- never null, method or field to accessmemberAccessorType
-annotationClass
- the annotation the member was annotated with (used for error reporting)domainAccessType
-- Returns:
- never null, new
MemberAccessor
instance unless already found in memberAccessorMap
-
-