# com.bea.p13n.controls.events.generic
GenericEventControl Interface

public interface GenericEventControl
extends `Control`

Control from which non-tracking events may be configured, generated, and dispatched to the event service. A tracked event is one which may be persisted to the Portal BT_EVENT database tables. So these events are generally not persisted, unless you have implemented your own event listener and persistence classes. Refer to the Portal documentation for details on how to configure the Event Service.
The Event object is created when this control is instantiated, with the name of the event type specified as the control property. You may then add additional attributes to the event with these control methods, and dispatch the event once (if) the event has been configured. It is not required to configure the event with additional attributes before dispatching it.
This control is NOT to be used with JWS, as it requires the HttpServletRequest object, which is unavailable from a JWS.
Control properties:

- eventType The type of event, eg "FooEvent", or "MyShoppingEvent".

Related Topics

``Event``
``EventService``

All Superinterfaces
  `Control`, `Control`, `Serializable`

## Method Summary

`public void` | `dispatch`() Dispatch a non-trackable event.
`public `Object`` | `getAttribute`(`String` theKey) Get named event attribute.
`public `Iterator`` | `getAttributeNames`() Return the attribute names that have been set on this event.
`public `Object`` | `removeAttribute`(`String` theKey) Remove the attribute.
`public void` | `setAttribute`(`String` theKey, `Serializable` theValue) Set a named event attribute.

## Method Detail

### dispatch() Method

    public void dispatch()
         throws P13nControlException

Dispatch a non-trackable event. The event type is specified as a property on this control.

#### Exceptions

``P13nControlException``

### getAttribute(String) Method

    public Object getAttribute(String theKey)

Get named event attribute.

#### Returns

value associated with theKey, or null if there was no mapping for theKey.

### getAttributeNames() Method

    public Iterator getAttributeNames()

Return the attribute names that have been set on this event. This iterator provides a "read-only" view of the attributes - remove is not supported.

### removeAttribute(String) Method

    public Object removeAttribute(String theKey)

Remove the attribute.

#### Parameters

theKey
  the attribute name.

#### Returns

previous value associated with theKey, or null if there was no mapping for theKey.

### setAttribute(String, Serializable) Method

    public void setAttribute(String theKey,
                             Serializable theValue)

Set a named event attribute.

#### Parameters

theKey
  the attribute name. Can not be null.

theValue
  the value of the attribute.