Package com.orchestranetworks.d3

# Interface D3NodeAsMaster

All Superinterfaces:
  `D3Node`

public interface D3NodeAsMaster extends D3Node
Represents the external view of the D3 engine and offers primary administrative functionalities.

To create a primary engine, use `D3NodeFactory.createForMasterFromSession(com.orchestranetworks.service.Session)`.

Since:
  5.4.2

- ## Method Summary

  Modifier and Type
  Method
  Description
  `D3Slave`
  `getD3SlaveFromId(String aSlaveId)`
  Deprecated.
  Since 5.5.1, this method has been replaced by `getD3SlaveFromRepositoryLabel(String)`.
  `D3Slave`
  `getD3SlaveFromRepositoryId(String aRepositoryId)`
  Deprecated.
  Since 5.5.1, this method has been replaced by `D3Node.getD3SlaveFromRepositoryId(String)`.
  `D3Slave`
  `getD3SlaveFromRepositoryLabel(String aRepositoryLabel)`
  Deprecated.
  Since 5.5.1, this method has been replaced by `D3Node.getD3SlaveFromRepositoryLabel(String)`.
  `D3Broadcast`
  `getHandlerForAsynchronousBroadcast(VersionKey aSnapshotKey)`
  Returns the asynchronous broadcast handler in order to perform broadcast using the method `D3Broadcast.broadcast()`.
  `D3Broadcast`
  `getHandlerForSynchronousBroadcast(VersionKey aSnapshotKey)`
  Returns the synchronous broadcast handler in order to perform broadcast using the method `D3Broadcast.broadcast()`.
  `D3Broadcast`
  `getHandlerForSynchronousBroadcast(VersionKey aSnapshotKey, long aTimeOut)`
  Returns the synchronous broadcast handler in order to perform broadcast using the method `D3Broadcast.broadcast()`.
  `List`
  `getRegisteredSlaves(BranchKey aDataSpaceKey)`
  Deprecated.
  Since 5.5.1, this method has been replaced by `D3Node.getRegisteredSlaves(BranchKey)`.

  ### Methods inherited from interface com.orchestranetworks.d3.D3Node

  `getBroadcastVersion, getRepositoryId, getRepositoryLabel, isMasterHome, isSlaveHome`

- ## Method Details

  - ### getHandlerForAsynchronousBroadcast

    D3Broadcast getHandlerForAsynchronousBroadcast(VersionKey aSnapshotKey)
    Returns the asynchronous broadcast handler in order to perform broadcast using the method `D3Broadcast.broadcast()`.

    The timeout is not applicable in asynchronous mode.

    Parameters:
      `aSnapshotKey` - snapshot to be broadcast.
    Throws:
      `IllegalArgumentException` -
      - if `aSnapshotKey` is `null`.
      - if there is no `AdaptationHome` for `aSnapshotKey`.
      - if the snapshot is not valid.
      - if the parent dataspace of the snapshot is not a delivery dataspace.
      - if the delivery dataspace is not associated with a delivery profile.
    Since:
      5.4.2

  - ### getHandlerForSynchronousBroadcast

    D3Broadcast getHandlerForSynchronousBroadcast(VersionKey aSnapshotKey, long aTimeOut)
    Returns the synchronous broadcast handler in order to perform broadcast using the method `D3Broadcast.broadcast()`.
    Parameters:
      `aSnapshotKey` - snapshot to be broadcast.
      `aTimeOut` - the maximum time to wait in milliseconds and if `0` it is considering unlimited.
    Throws:
      `IllegalArgumentException` -
      - See `getHandlerForAsynchronousBroadcast(VersionKey)`.
      - if `aTimeOut` is negative.
    Since:
      5.4.2

  - ### getHandlerForSynchronousBroadcast

    D3Broadcast getHandlerForSynchronousBroadcast(VersionKey aSnapshotKey)
    Returns the synchronous broadcast handler in order to perform broadcast using the method `D3Broadcast.broadcast()`.

    The default timeout of the operation is set to `0` (unlimited).

    Parameters:
      `aSnapshotKey` - snapshot to be broadcast.
    Throws:
      `IllegalArgumentException` - See `getHandlerForAsynchronousBroadcast(VersionKey)`.
    Since:
      5.4.2

  - ### getD3SlaveFromId

    @Deprecated D3Slave getD3SlaveFromId(String aSlaveId)
    Deprecated.
    Since 5.5.1, this method has been replaced by `getD3SlaveFromRepositoryLabel(String)`.
    Returns the replica for the specified identifier. If unknown to the primary repository, it returns `null`.
    Parameters:
      `aSlaveId` - remote repository label.
    Throws:
      `NullPointerException` - if `aSlaveId` is null.
    Since:
      5.4.2

  - ### getD3SlaveFromRepositoryId

    @Deprecated D3Slave getD3SlaveFromRepositoryId(String aRepositoryId)
    Deprecated.
    Since 5.5.1, this method has been replaced by `D3Node.getD3SlaveFromRepositoryId(String)`.
    Returns the replica for the specified identifier. If unknown to the primary repository, it returns `null`.
    Specified by:
      `getD3SlaveFromRepositoryId` in interface `D3Node`
    Parameters:
      `aRepositoryId` - remote replica repository ID.
    Throws:
      `NullPointerException` - if `aRepositoryId` is null.
    Since:
      5.5.0

  - ### getD3SlaveFromRepositoryLabel

    @Deprecated D3Slave getD3SlaveFromRepositoryLabel(String aRepositoryLabel)
    Deprecated.
    Since 5.5.1, this method has been replaced by `D3Node.getD3SlaveFromRepositoryLabel(String)`.
    Returns the replica for the specified label. If unknown to the primary repository, it returns `null`.
    Specified by:
      `getD3SlaveFromRepositoryLabel` in interface `D3Node`
    Parameters:
      `aRepositoryLabel` - remote replica repository label.
    Throws:
      `NullPointerException` - if `aRepositoryLabel` is null.
    Since:
      5.5.0

  - ### getRegisteredSlaves

    @Deprecated List getRegisteredSlaves(BranchKey aDataSpaceKey)
    Deprecated.
    Since 5.5.1, this method has been replaced by `D3Node.getRegisteredSlaves(BranchKey)`.
    Returns the list of the `D3Slave` object(s) subscribed to the dataspace specified in the parameter.
    Specified by:
      `getRegisteredSlaves` in interface `D3Node`
    Parameters:
      `aDataSpaceKey` - D3 dataspace key.
    Since:
      5.4.2