com.espertech.esper.event
Class WrapperEventBean

java.lang.Object
  extended by com.espertech.esper.event.WrapperEventBean
All Implemented Interfaces:
EventBean, DecoratingEventBean

public class WrapperEventBean
extends java.lang.Object
implements EventBean, DecoratingEventBean

Event bean that wraps another event bean adding additional properties.

This can be useful for classes for which the statement adds derived values retaining the original class.

The event type of such events is always WrapperEventType. Additional properties are stored in a Map.


Constructor Summary
WrapperEventBean(EventBean theEvent, java.util.Map<java.lang.String,java.lang.Object> properties, EventType eventType)
          Ctor.
 
Method Summary
 java.lang.Object get(java.lang.String property)
          Returns the value of an event property for the given property name or property expression.
 java.util.Map<java.lang.String,java.lang.Object> getDecoratingProperties()
          Returns decorating properties.
 EventType getEventType()
          Return the EventType instance that describes the set of properties available for this event.
 java.lang.Object getFragment(java.lang.String propertyExpression)
          Returns event beans or array of event bean for a property name or property expression.
 java.lang.Object getUnderlying()
          Get the underlying data object to this event wrapper.
 EventBean getUnderlyingEvent()
          Returns the underlying event to the decorated event.
 java.util.Map getUnderlyingMap()
          Returns the underlying map storing the additional properties, if any.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

WrapperEventBean

public WrapperEventBean(EventBean theEvent,
                        java.util.Map<java.lang.String,java.lang.Object> properties,
                        EventType eventType)
Ctor.

Parameters:
theEvent - is the wrapped event
properties - is zero or more property values that embellish the wrapped event
eventType - is the WrapperEventType.
Method Detail

get

public java.lang.Object get(java.lang.String property)
                     throws PropertyAccessException
Description copied from interface: EventBean
Returns the value of an event property for the given property name or property expression.

Returns null if the property value is null. Throws an exception if the expression is not valid against the event type.

The method takes a property name or property expression as a parameter. Property expressions may include indexed properties via the syntax "name[index]", mapped properties via the syntax "name('key')", nested properties via the syntax "outer.inner" or combinations thereof.

Specified by:
get in interface EventBean
Parameters:
property - - name or expression of the property whose value is to be retrieved
Returns:
the value of a property with the specified name.
Throws:
PropertyAccessException - - if there is no property of the specified name, or the property cannot be accessed

getEventType

public EventType getEventType()
Description copied from interface: EventBean
Return the EventType instance that describes the set of properties available for this event.

Specified by:
getEventType in interface EventBean
Returns:
event type

getUnderlying

public java.lang.Object getUnderlying()
Description copied from interface: EventBean
Get the underlying data object to this event wrapper.

Specified by:
getUnderlying in interface EventBean
Returns:
underlying data object, usually either a Map or a Java bean instance.

getUnderlyingMap

public java.util.Map getUnderlyingMap()
Returns the underlying map storing the additional properties, if any.

Returns:
event property map

getDecoratingProperties

public java.util.Map<java.lang.String,java.lang.Object> getDecoratingProperties()
Description copied from interface: DecoratingEventBean
Returns decorating properties.

Specified by:
getDecoratingProperties in interface DecoratingEventBean
Returns:
property name and values

getUnderlyingEvent

public EventBean getUnderlyingEvent()
Description copied from interface: DecoratingEventBean
Returns the underlying event to the decorated event.

Specified by:
getUnderlyingEvent in interface DecoratingEventBean
Returns:
underlying

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getFragment

public java.lang.Object getFragment(java.lang.String propertyExpression)
Description copied from interface: EventBean
Returns event beans or array of event bean for a property name or property expression.

For use with properties whose value is itself an event or whose value can be represented as an event by the underlying event representation.

The EventType of the event bean instance(s) returned by this method can be determined by EventType.getFragmentType(String). Use EventPropertyDescriptor to obtain a list of properties that return fragments from an event type.

Returns null if the property value is null or the property value cannot be represented as a fragment by the underlying representation.

The method takes a property name or property expression as a parameter. Property expressions may include indexed properties via the syntax "name[index]", mapped properties via the syntax "name('key')", nested properties via the syntax "outer.inner" or combinations thereof.

Specified by:
getFragment in interface EventBean
Parameters:
propertyExpression - - name or expression of the property whose value is to be presented as an EventBean or array of EventBean
Returns:
the value of a property as an EventBean or array of EventBean

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