public class ObjectArrayArrayPOJOEntryIndexedPropertyGetter extends BaseNativePropertyGetter implements ObjectArrayEventPropertyGetterAndIndexed
Constructor and Description |
---|
ObjectArrayArrayPOJOEntryIndexedPropertyGetter(int propertyIndex,
int index,
EventAdapterService eventAdapterService,
java.lang.Class returnType)
Ctor.
|
Modifier and Type | Method and Description |
---|---|
CodegenExpression |
eventBeanExistsCodegen(CodegenExpression beanExpression,
CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope) |
CodegenExpression |
eventBeanGetCodegen(CodegenExpression beanExpression,
CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope) |
CodegenExpression |
eventBeanGetIndexedCodegen(CodegenMethodScope codegenMethodScope,
CodegenClassScope codegenClassScope,
CodegenExpression beanExpression,
CodegenExpression key) |
java.lang.Object |
get(EventBean obj)
Return the value for the property in the event object specified when the instance was obtained.
|
java.lang.Object |
get(EventBean eventBean,
int index)
Return the value for the property in the event object specified when the instance was obtained.
|
static java.lang.Object |
getArrayValue(java.lang.Object[] array,
int propertyIndex,
int index) |
java.lang.Class |
getBeanPropType() |
java.lang.Object |
getObjectArray(java.lang.Object[] array)
Returns a property of an event.
|
java.lang.Class |
getTargetType() |
boolean |
isExistsProperty(EventBean eventBean)
Returns true if the property exists, or false if the type does not have such a property.
|
boolean |
isObjectArrayExistsProperty(java.lang.Object[] array)
Exists-function for properties in a object array-type event.
|
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, toString, wait, wait, wait
eventBeanFragmentCodegen, underlyingFragmentCodegen
getFragment
public ObjectArrayArrayPOJOEntryIndexedPropertyGetter(int propertyIndex, int index, EventAdapterService eventAdapterService, java.lang.Class returnType)
index
- the index to fetch the array element foreventAdapterService
- factory for event beans and event typesreturnType
- type of the entry returnedpropertyIndex
- property numpublic static java.lang.Object getArrayValue(java.lang.Object[] array, int propertyIndex, int index) throws PropertyAccessException
PropertyAccessException
public java.lang.Object getObjectArray(java.lang.Object[] array) throws PropertyAccessException
ObjectArrayEventPropertyGetter
getObjectArray
in interface ObjectArrayEventPropertyGetter
array
- to interrogatePropertyAccessException
- for property access errorspublic boolean isObjectArrayExistsProperty(java.lang.Object[] array)
ObjectArrayEventPropertyGetter
isObjectArrayExistsProperty
in interface ObjectArrayEventPropertyGetter
array
- to interrogatepublic java.lang.Object get(EventBean eventBean, int index) throws PropertyAccessException
EventPropertyGetterIndexed
get
in interface EventPropertyGetterIndexed
eventBean
- is the event to get the value of a property fromindex
- the index valuePropertyAccessException
- to indicate that property access failedpublic java.lang.Object get(EventBean obj)
EventPropertyGetter
get
in interface EventPropertyGetter
obj
- is the event to get the value of a property frompublic 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 CodegenExpression eventBeanGetCodegen(CodegenExpression beanExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope)
eventBeanGetCodegen
in interface EventPropertyGetterSPI
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 eventBeanGetIndexedCodegen(CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope, CodegenExpression beanExpression, CodegenExpression key)
eventBeanGetIndexedCodegen
in interface EventPropertyGetterIndexedSPI
public java.lang.Class getTargetType()
getTargetType
in class BaseNativePropertyGetter
public java.lang.Class getBeanPropType()
getBeanPropType
in class BaseNativePropertyGetter