org.eclipse.emf.cdo.common.lock

## Interface CDOLockChangeInfo

- All Superinterfaces:
    CDOBranchPoint, CDOBranchProvider, CDOTimeProvider
  All Known Subinterfaces:
    CDOSessionLocksChangedEvent, CDOViewLocksChangedEvent

      public interface CDOLockChangeInfo
      extends CDOBranchPoint

  Represents a change in the lock state of a set of objects. Instances are meant to be sent from the server to the client for the purpose of notifying the latter.
  Since:
    4.1
  Author:
    Caspar De Groot
  No Implement
    This interface is not intended to be implemented by clients.
  No Extend
    This interface is not intended to be extended by clients.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `CDOLockChangeInfo.Operation` Enumerates the possible locking operations.

  - ### Field Summary

    - ### Fields inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchPoint

      `INVALID_DATE, UNSPECIFIED_DATE`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `CDOBranch` | `getBranch()` Returns the branch of this branch point, or `null` if this branch point is the `base` of the `main branch`.
    `CDOLockOwner` | `getLockOwner()`
    `CDOLockState[]` | `getLockStates()`
    `IRWLockManager.LockType` | `getLockType()`
    `CDOLockChangeInfo.Operation` | `getOperation()`
    `long` | `getTimeStamp()` Returns the time stamp of this branch point, or the fixed special time stamp `unspecified` if this branch point marks the `head` of a branch.
    `boolean` | `isInvalidateAll()`

- - ### Method Detail

    - #### isInvalidateAll

          boolean isInvalidateAll()

      Returns:
        `true` if this instance signals that all `lock states` must be invalidated, `false` otherwise

    - #### getBranch

          CDOBranch getBranch()

      Description copied from interface: `CDOBranchPoint`
      Returns the branch of this branch point, or `null` if this branch point is the `base` of the `main branch`.
      Specified by:
        `getBranch` in interface `CDOBranchPoint`
      Specified by:
        `getBranch` in interface `CDOBranchProvider`
      Returns:
        The branch at which the lock changes took place, same as `getView().getBranch()`.

    - #### getTimeStamp

          long getTimeStamp()

      Description copied from interface: `CDOBranchPoint`
      Returns the time stamp of this branch point, or the fixed special time stamp `unspecified` if this branch point marks the `head` of a branch.
      Specified by:
        `getTimeStamp` in interface `CDOBranchPoint`
      Specified by:
        `getTimeStamp` in interface `CDOTimeProvider`
      Returns:
        The repository time at which the lock changes took place. This is only an informal indication; no formal relation (e.g. an ordering) with commit time stamps is guaranteed.

    - #### getOperation

          CDOLockChangeInfo.Operation getOperation()

      Returns:
        the type of lock operation that caused the lock changes

    - #### getLockType

          IRWLockManager.LockType getLockType()

      Returns:
        the type of locks that were affected by the lock operation

    - #### getLockOwner

          CDOLockOwner getLockOwner()

      Returns:
        The view, represented as a `CDOLockOwner`, that authored the lock changes.

    - #### getLockStates

          CDOLockState[] getLockStates()

      Returns:
        The new lock states of the objects that were affected by the change

Copyright (c) 2004-2019 Eike Stepper (Loehne, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html