com.brightcove.player.analytics

## Class AbstractAnalyticsEvent

- java.lang.Object
- - com.brightcove.player.store.BaseEntity
  - - com.brightcove.player.analytics.AbstractAnalyticsEvent

- All Implemented Interfaces:
    IdentifiableEntity<com.brightcove.player.analytics.AnalyticsEvent,java.lang.Long>, io.requery.Persistable

      @Entity
      public abstract class AbstractAnalyticsEvent
      extends BaseEntity
      implements IdentifiableEntity<com.brightcove.player.analytics.AnalyticsEvent,java.lang.Long>

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `AbstractAnalyticsEvent.Priority` List of supported event priorities.

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `CRITICAL` The value of critical priority event.
    `static int` | `HIGH` The value of high priority event.
    `static int` | `LOW` The value of low priority event.
    `static int` | `NORMAL` The value of normal priority event.

    - ### Fields inherited from class com.brightcove.player.store.BaseEntity

      `createTime, updateTime`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractAnalyticsEvent()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static com.brightcove.player.analytics.AnalyticsEvent` | `create(int priority, java.lang.String type, java.util.Map<java.lang.String,java.lang.String> parameters)` Creates a new analytics event.
    `static com.brightcove.player.analytics.AnalyticsEvent` | `create(java.lang.String type, java.util.Map<java.lang.String,java.lang.String> parameters)` Creates a new analytics event.
    `io.requery.query.LogicalCondition<? extends io.requery.query.Expression<java.lang.Long>,?>` | `getIdentityCondition()` Gets a `LogicalCondition` that can be used to match this entity by it's unique identifier.
    `io.requery.query.LogicalCondition<? extends io.requery.query.Expression<java.lang.Long>,?>` | `getIdentityCondition(java.lang.Long key)` Gets a `LogicalCondition` that can be used to match an entity by it's unique identifier.

    - ### Methods inherited from class com.brightcove.player.store.BaseEntity

      `getModifiedTime, onBeforeInsert, onBeforeUpdate`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface com.brightcove.player.store.IdentifiableEntity

      `getKey`

- - ### Field Detail

    - #### LOW

          public static final int LOW

      The value of low priority event. Low priority events that can be dropped if necessary without transmitting to the server. When transmitting, low priority events may be transmitted to the collector service later than other higher priority events.
      See Also:
        Constant Field Values

    - #### NORMAL

          public static final int NORMAL

      The value of normal priority event. Default priority for events that are not tagged explicitly. Normal events will be dropped from the local store only after trying (and re-trying) to transmit the events to collector service.
      See Also:
        Constant Field Values

    - #### HIGH

          public static final int HIGH

      The value of high priority event. High priority events will be dropped from the local store only after a successful transmission to collector service.
      See Also:
        Constant Field Values

    - #### CRITICAL

          public static final int CRITICAL

      The value of critical priority event. Critical events will be transmitted immediately, regardless of the network preference, by passing the normal transmission order. Critical events will be dropped from the local store only after a successful transmission to collector service.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### AbstractAnalyticsEvent

          public AbstractAnalyticsEvent()

  - ### Method Detail

    - #### getIdentityCondition

          public io.requery.query.LogicalCondition<? extends io.requery.query.Expression<java.lang.Long>,?> getIdentityCondition(java.lang.Long key)

      Description copied from interface: `IdentifiableEntity`
      Gets a `LogicalCondition` that can be used to match an entity by it's unique identifier.
      Specified by:
        `getIdentityCondition` in interface `IdentifiableEntity<com.brightcove.player.analytics.AnalyticsEvent,java.lang.Long>`
      Parameters:
        `key` - the unique identifier of the entity.
      Returns:
        the logical condition.

    - #### getIdentityCondition

          public io.requery.query.LogicalCondition<? extends io.requery.query.Expression<java.lang.Long>,?> getIdentityCondition()

      Description copied from interface: `IdentifiableEntity`
      Gets a `LogicalCondition` that can be used to match this entity by it's unique identifier.
      Specified by:
        `getIdentityCondition` in interface `IdentifiableEntity<com.brightcove.player.analytics.AnalyticsEvent,java.lang.Long>`
      Returns:
        the logical condition.

    - #### create

          public static com.brightcove.player.analytics.AnalyticsEvent create(int priority,
                                                                              @NonNull
                                                                              java.lang.String type,
                                                                              @Nullable
                                                                              java.util.Map<java.lang.String,java.lang.String> parameters)

      Creates a new analytics event.
      Parameters:
        `priority` - the priority of the event.
        `type` - the type of the analytics event.
        `parameters` - a map of HTTP query parameter names and values to be sent to the server.
      Returns:

    - #### create

          public static com.brightcove.player.analytics.AnalyticsEvent create(@NonNull
                                                                              java.lang.String type,
                                                                              @Nullable
                                                                              java.util.Map<java.lang.String,java.lang.String> parameters)

      Creates a new analytics event.
      Parameters:
        `type` - the type of the analytics event.
        `parameters` - a map of HTTP query parameter names and values to be sent to the server.
      Returns: