com.brightcove.player.concurrency

## Class ConcurrencyClient

- java.lang.Object
- - com.brightcove.player.event.AbstractComponent
  - - com.brightcove.player.concurrency.ConcurrencyClient

- All Implemented Interfaces:
    Component

      @Emits(events={"gscMaxConcurrencyReached","gscError"})
       @ListensFor(events={"activityPaused","activityResumed","completed","didPlay","fragmentPaused","fragmentResumed","stop","setVideoStill","enterPictureInPictureMode","didEnterPictureInPictureMode","didExitPictureInPictureMode"})
      public class ConcurrencyClient
      extends AbstractComponent

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `ConcurrencyClient.SessionsListener`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `HEARTBEAT_ACCOUNTID_HEADER_KEY`
    `static java.lang.String` | `HEARTBEAT_VIDEO_HEADER_KEY`

    - ### Fields inherited from class com.brightcove.player.event.AbstractComponent

      `eventEmitter, listenerTokens`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ConcurrencyClient(android.content.Context context, EventEmitter eventEmitter, BaseVideoView brightcoveVideoView)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `DefaultConcurrencyHandler` | `getDefaultConcurrencyHandler()`
    `void` | `requestActiveSessions()` Request the current active sessions.
    `void` | `setRequestHeaders(java.util.Map<java.lang.String,java.lang.String> requestHeaders)` Set the headers that will be included in the request
    `void` | `setSessionsListener(ConcurrencyClient.SessionsListener listener)` Set a SessionsListener to get the current active sessions

    - ### Methods inherited from class com.brightcove.player.event.AbstractComponent

      `addListener, addOnceListener, getEventEmitter, removeListener, removeListeners`

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

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

- - ### Field Detail

    - #### HEARTBEAT_ACCOUNTID_HEADER_KEY

          public static final java.lang.String HEARTBEAT_ACCOUNTID_HEADER_KEY

      See Also:
        Constant Field Values

    - #### HEARTBEAT_VIDEO_HEADER_KEY

          public static final java.lang.String HEARTBEAT_VIDEO_HEADER_KEY

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ConcurrencyClient

          public ConcurrencyClient(@NonNull
                                   android.content.Context context,
                                   @NonNull
                                   EventEmitter eventEmitter,
                                   @NonNull
                                   BaseVideoView brightcoveVideoView)

  - ### Method Detail

    - #### setRequestHeaders

          public void setRequestHeaders(java.util.Map<java.lang.String,java.lang.String> requestHeaders)

      Set the headers that will be included in the request
      Parameters:
        `requestHeaders` -

    - #### setSessionsListener

          public void setSessionsListener(ConcurrencyClient.SessionsListener listener)

      Set a SessionsListener to get the current active sessions
      Parameters:
        `listener` -

    - #### requestActiveSessions

          public void requestActiveSessions()

      Request the current active sessions. Set a {#SessionsListener} to get the returned active sessions

    - #### getDefaultConcurrencyHandler

          public final DefaultConcurrencyHandler getDefaultConcurrencyHandler()