com.espertech.esper.event.map
Class MapArrayPOJOEntryIndexedPropertyGetter

java.lang.Object
  extended by com.espertech.esper.event.bean.BaseNativePropertyGetter
      extended by com.espertech.esper.event.map.MapArrayPOJOEntryIndexedPropertyGetter
All Implemented Interfaces:
EventPropertyGetter, EventPropertyGetterIndexed, MapEventPropertyGetter, MapEventPropertyGetterAndIndexed

public class MapArrayPOJOEntryIndexedPropertyGetter
extends BaseNativePropertyGetter
implements MapEventPropertyGetter, MapEventPropertyGetterAndIndexed

A getter that works on arrays residing within a Map as an event property.


Constructor Summary
MapArrayPOJOEntryIndexedPropertyGetter(java.lang.String propertyMap, int index, EventAdapterService eventAdapterService, java.lang.Class returnType)
          Ctor.
 
Method Summary
 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.
 java.lang.Object getMap(java.util.Map<java.lang.String,java.lang.Object> map)
          Returns a property of an event.
 java.lang.Object getMapInternal(java.util.Map<java.lang.String,java.lang.Object> map, int index)
           
 boolean isExistsProperty(EventBean eventBean)
          Returns true if the property exists, or false if the type does not have such a property.
 boolean isMapExistsProperty(java.util.Map<java.lang.String,java.lang.Object> map)
          Exists-function for properties in a map-type event.
 
Methods inherited from class com.espertech.esper.event.bean.BaseNativePropertyGetter
getFragment, getFragmentDynamic
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.espertech.esper.client.EventPropertyGetter
getFragment
 

Constructor Detail

MapArrayPOJOEntryIndexedPropertyGetter

public MapArrayPOJOEntryIndexedPropertyGetter(java.lang.String propertyMap,
                                              int index,
                                              EventAdapterService eventAdapterService,
                                              java.lang.Class returnType)
Ctor.

Parameters:
propertyMap - the property to use for the map lookup
index - the index to fetch the array element for
eventAdapterService - factory for event beans and event types
returnType - type of the entry returned
Method Detail

getMap

public java.lang.Object getMap(java.util.Map<java.lang.String,java.lang.Object> map)
                        throws PropertyAccessException
Description copied from interface: MapEventPropertyGetter
Returns a property of an event.

Specified by:
getMap in interface MapEventPropertyGetter
Parameters:
map - to interrogate
Returns:
property value
Throws:
PropertyAccessException - for property access errors

getMapInternal

public java.lang.Object getMapInternal(java.util.Map<java.lang.String,java.lang.Object> map,
                                       int index)
                                throws PropertyAccessException
Throws:
PropertyAccessException

isMapExistsProperty

public boolean isMapExistsProperty(java.util.Map<java.lang.String,java.lang.Object> map)
Description copied from interface: MapEventPropertyGetter
Exists-function for properties in a map-type event.

Specified by:
isMapExistsProperty in interface MapEventPropertyGetter
Parameters:
map - to interrogate
Returns:
indicator

get

public java.lang.Object get(EventBean eventBean,
                            int index)
                     throws PropertyAccessException
Description copied from interface: EventPropertyGetterIndexed
Return the value for the property in the event object specified when the instance was obtained. Useful for fast access to event properties. Throws a PropertyAccessException if the getter instance doesn't match the EventType it was obtained from, and to indicate other property access problems.

Specified by:
get in interface EventPropertyGetterIndexed
Parameters:
eventBean - is the event to get the value of a property from
index - the index value
Returns:
value of indexed property in event
Throws:
PropertyAccessException - to indicate that property access failed

get

public java.lang.Object get(EventBean obj)
Description copied from interface: EventPropertyGetter
Return the value for the property in the event object specified when the instance was obtained. Useful for fast access to event properties. Throws a PropertyAccessException if the getter instance doesn't match the EventType it was obtained from, and to indicate other property access problems.

Specified by:
get in interface EventPropertyGetter
Parameters:
obj - is the event to get the value of a property from
Returns:
value of property in event

isExistsProperty

public boolean isExistsProperty(EventBean eventBean)
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 interface EventPropertyGetter
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

© 2006-2015 EsperTech Inc.
All rights reserved.
Visit us at espertech.com