public class KeyedMapMethodPropertyGetter extends BaseNativePropertyGetter implements BeanEventPropertyGetter, EventPropertyGetterAndMapped
Constructor and Description |
---|
KeyedMapMethodPropertyGetter(Method method,
Object key,
EventBeanTypedEventFactory eventBeanTypedEventFactory,
BeanEventTypeFactory beanEventTypeFactory) |
Modifier and Type | Method and Description |
---|---|
CodegenExpression |
eventBeanExistsCodegen(CodegenExpression beanExpression,
CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope) |
CodegenExpression |
eventBeanGetCodegen(CodegenExpression beanExpression,
CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope) |
CodegenExpression |
eventBeanGetMappedCodegen(CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope,
CodegenExpression beanExpression,
CodegenExpression key) |
Object |
get(EventBean obj)
Return the value for the property in the event object specified when the instance was obtained.
|
Object |
get(EventBean eventBean,
String mapKey)
Return the value for the property in the event object specified when the instance was obtained.
|
Object |
getBeanProp(Object object)
Returns the property as an object.
|
Object |
getBeanPropInternal(Object object,
Object key) |
Class |
getBeanPropType() |
Class |
getTargetType() |
boolean |
isBeanExistsProperty(Object object)
Returns true if the dynamic property exists.
|
boolean |
isExistsProperty(EventBean eventBean)
Returns true if the property exists, or false if the type does not have such a property.
|
String |
toString() |
CodegenExpression |
underlyingExistsCodegen(CodegenExpression underlyingExpression,
CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope) |
CodegenExpression |
underlyingGetCodegen(CodegenExpression underlyingExpression,
CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope) |
eventBeanFragmentCodegen, getFragment, getFragmentDynamic, toFragmentArray, toFragmentIterable, underlyingFragmentCodegen
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
eventBeanFragmentCodegen, underlyingFragmentCodegen
getFragment
public KeyedMapMethodPropertyGetter(Method method, Object key, EventBeanTypedEventFactory eventBeanTypedEventFactory, BeanEventTypeFactory beanEventTypeFactory)
public Object get(EventBean eventBean, String mapKey) throws PropertyAccessException
EventPropertyGetterMapped
get
in interface EventPropertyGetterMapped
eventBean
- is the event to get the value of a property frommapKey
- the map key valuePropertyAccessException
- to indicate that property access failedpublic Object getBeanProp(Object object) throws PropertyAccessException
BeanEventPropertyGetter
getBeanProp
in interface BeanEventPropertyGetter
object
- to evaluatePropertyAccessException
- if access failedpublic Object getBeanPropInternal(Object object, Object key) throws PropertyAccessException
PropertyAccessException
public boolean isBeanExistsProperty(Object object)
BeanEventPropertyGetter
isBeanExistsProperty
in interface BeanEventPropertyGetter
object
- to evaluatepublic final Object get(EventBean obj) throws PropertyAccessException
EventPropertyValueGetter
get
in interface EventPropertyValueGetter
obj
- is the event to get the value of a property fromPropertyAccessException
- to indicate that property access failedpublic boolean isExistsProperty(EventBean eventBean)
EventPropertyGetter
Useful for dynamic properties of the syntax "property?" and the dynamic nested/indexed/mapped versions. Dynamic nested properties follow the syntax "property?.nested" which is equivalent to "property?.nested?". If any of the properties in the path of a dynamic nested property return null, the dynamic nested property does not exists and the method returns false.
For non-dynamic properties, this method always returns true since a getter would not be available unless
isExistsProperty
in interface EventPropertyGetter
eventBean
- is the event to check if the dynamic property existspublic Class getBeanPropType()
getBeanPropType
in interface BeanEventPropertyGetter
getBeanPropType
in class BaseNativePropertyGetter
public Class getTargetType()
getTargetType
in interface BeanEventPropertyGetter
getTargetType
in class BaseNativePropertyGetter
public CodegenExpression eventBeanGetCodegen(CodegenExpression beanExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope)
eventBeanGetCodegen
in interface EventPropertyValueGetterForge
public CodegenExpression eventBeanExistsCodegen(CodegenExpression beanExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope)
eventBeanExistsCodegen
in interface EventPropertyGetterSPI
public CodegenExpression underlyingGetCodegen(CodegenExpression underlyingExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope)
underlyingGetCodegen
in interface EventPropertyGetterSPI
public CodegenExpression underlyingExistsCodegen(CodegenExpression underlyingExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope)
underlyingExistsCodegen
in interface EventPropertyGetterSPI
public CodegenExpression eventBeanGetMappedCodegen(CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope, CodegenExpression beanExpression, CodegenExpression key)
eventBeanGetMappedCodegen
in interface EventPropertyGetterMappedSPI
Copyright © 2005–2018. All rights reserved.