Class MapNestedEntryPropertyGetterPropertyProvidedDynamic
java.lang.Object
com.espertech.esper.common.internal.event.map.MapNestedEntryPropertyGetterBase
com.espertech.esper.common.internal.event.map.MapNestedEntryPropertyGetterPropertyProvidedDynamic
- All Implemented Interfaces:
EventPropertyGetter
,EventPropertyValueGetter
,EventPropertyGetterSPI
,EventPropertyValueGetterForge
,MapEventPropertyGetter
public class MapNestedEntryPropertyGetterPropertyProvidedDynamic
extends MapNestedEntryPropertyGetterBase
-
Field Summary
Fields inherited from class com.espertech.esper.common.internal.event.map.MapNestedEntryPropertyGetterBase
eventBeanTypedEventFactory, fragmentType, propertyMap
Fields inherited from interface com.espertech.esper.common.client.EventPropertyValueGetter
EPTYPE, EPTYPEARRAY
-
Constructor Summary
ConstructorDescriptionMapNestedEntryPropertyGetterPropertyProvidedDynamic
(String propertyMap, EventType fragmentType, EventBeanTypedEventFactory eventBeanTypedEventFactory, EventPropertyGetter nestedGetter) -
Method Summary
Modifier and TypeMethodDescriptioneventBeanExistsCodegen
(CodegenExpression beanExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) handleNestedValue
(Object value) handleNestedValueCodegen
(CodegenExpression valueExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) boolean
handleNestedValueExists
(Object value) handleNestedValueExistsCodegen
(CodegenExpression valueExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) handleNestedValueFragment
(Object value) handleNestedValueFragmentCodegen
(CodegenExpression name, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) boolean
isExistsProperty
(EventBean eventBean) Returns true if the property exists, or false if the type does not have such a property.underlyingExistsCodegen
(CodegenExpression underlyingExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) Methods inherited from class com.espertech.esper.common.internal.event.map.MapNestedEntryPropertyGetterBase
eventBeanFragmentCodegen, eventBeanGetCodegen, get, getFragment, getMap, isMapExistsProperty, underlyingFragmentCodegen, underlyingGetCodegen
-
Constructor Details
-
MapNestedEntryPropertyGetterPropertyProvidedDynamic
public MapNestedEntryPropertyGetterPropertyProvidedDynamic(String propertyMap, EventType fragmentType, EventBeanTypedEventFactory eventBeanTypedEventFactory, EventPropertyGetter nestedGetter)
-
-
Method Details
-
isExistsProperty
Description copied from interface:EventPropertyGetter
Returns true if the property exists, or false if the type does not have such a property.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
- Specified by:
isExistsProperty
in interfaceEventPropertyGetter
- Overrides:
isExistsProperty
in classMapNestedEntryPropertyGetterBase
- Parameters:
eventBean
- is the event to check if the dynamic property exists- Returns:
- indictor whether the property exists, always true for non-dynamic (default) properties
-
handleNestedValue
- Specified by:
handleNestedValue
in classMapNestedEntryPropertyGetterBase
-
handleNestedValueExists
- Specified by:
handleNestedValueExists
in classMapNestedEntryPropertyGetterBase
-
handleNestedValueFragment
- Specified by:
handleNestedValueFragment
in classMapNestedEntryPropertyGetterBase
-
handleNestedValueCodegen
public CodegenExpression handleNestedValueCodegen(CodegenExpression valueExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) - Specified by:
handleNestedValueCodegen
in classMapNestedEntryPropertyGetterBase
-
handleNestedValueExistsCodegen
public CodegenExpression handleNestedValueExistsCodegen(CodegenExpression valueExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) - Specified by:
handleNestedValueExistsCodegen
in classMapNestedEntryPropertyGetterBase
-
handleNestedValueFragmentCodegen
public CodegenExpression handleNestedValueFragmentCodegen(CodegenExpression name, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) - Specified by:
handleNestedValueFragmentCodegen
in classMapNestedEntryPropertyGetterBase
-
eventBeanExistsCodegen
public CodegenExpression eventBeanExistsCodegen(CodegenExpression beanExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) - Specified by:
eventBeanExistsCodegen
in interfaceEventPropertyGetterSPI
- Overrides:
eventBeanExistsCodegen
in classMapNestedEntryPropertyGetterBase
-
underlyingExistsCodegen
public CodegenExpression underlyingExistsCodegen(CodegenExpression underlyingExpression, CodegenMethodScope codegenMethodScope, CodegenClassScope codegenClassScope) - Specified by:
underlyingExistsCodegen
in interfaceEventPropertyGetterSPI
- Overrides:
underlyingExistsCodegen
in classMapNestedEntryPropertyGetterBase
-