Class MemberAccessorFactory
java.lang.Object
org.optaplanner.core.impl.domain.common.accessor.MemberAccessorFactory
-
Nested Class Summary
-
Constructor Summary
ConstructorDescriptionMemberAccessorFactory
(Map<String, MemberAccessor> memberAccessorMap) Prefills the member accessor cache. -
Method Summary
Modifier and TypeMethodDescriptionbuildAndCacheMemberAccessor
(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, ClassLoader classLoader) Creates a new member accessor based on the given parameters.
-
Constructor Details
-
MemberAccessorFactory
public MemberAccessorFactory() -
MemberAccessorFactory
Prefills the member accessor cache.- Parameters:
memberAccessorMap
- key is the fully qualified member name
-
-
Method Details
-
buildMemberAccessor
public static MemberAccessor buildMemberAccessor(Member member, MemberAccessorFactory.MemberAccessorType memberAccessorType, Class<? extends Annotation> annotationClass, DomainAccessType domainAccessType, ClassLoader classLoader) 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
-classLoader
- null orGizmoClassLoader
if domainAccessType isDomainAccessType.GIZMO
.- 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
-
getGizmoClassLoader
-