org.eclipse.emf.cdo.common.lock

## Interface CDOLockState

- All Known Subinterfaces:
    InternalCDOLockState

      public interface CDOLockState

  A client-side representation of all the locks on a single CDOObject.

  As an individual lock is always owned by view, which in turn is owned by a session, the methods on this interface return instances of `CDOLockOwner` which carry that information.

  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.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `DEPTH_INFINITE`
    `static int` | `DEPTH_NONE`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `getLockedObject()` Gets a unique identifier for the object that is locked; typically a `CDOID` or a `CDOIDAndBranch`, depending on whether branching support is enabled or not
    `java.util.Set<CDOLockOwner>` | `getReadLockOwners()`
    `CDOLockOwner` | `getWriteLockOwner()`
    `CDOLockOwner` | `getWriteOptionOwner()`
    `boolean` | `isLocked(IRWLockManager.LockType lockType, CDOLockOwner lockOwner, boolean others)` If the 'others' argument is `false`, this method returns `true` if this lock is currently held by the requesting CDOView, `false` otherwise.

- - ### Field Detail

    - #### DEPTH_NONE

          static final int DEPTH_NONE

      Since:
        4.4
      See Also:
        Constant Field Values

    - #### DEPTH_INFINITE

          static final int DEPTH_INFINITE

      Since:
        4.4
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getLockedObject

          java.lang.Object getLockedObject()

      Gets a unique identifier for the object that is locked; typically a `CDOID` or a `CDOIDAndBranch`, depending on whether branching support is enabled or not
      Returns:
        the identifier

    - #### isLocked

          boolean isLocked(IRWLockManager.LockType lockType,
                           CDOLockOwner lockOwner,
                           boolean others)

      If the 'others' argument is `false`, this method returns `true` if this lock is currently held by the requesting CDOView, `false` otherwise.

      If the 'others' argument is `true`, this method returns `true` if this lock is currently held by another view (i.e. any view different from the requesting one), `false` otherwise.

    - #### getReadLockOwners

          java.util.Set<CDOLockOwner> getReadLockOwners()

    - #### getWriteLockOwner

          CDOLockOwner getWriteLockOwner()

    - #### getWriteOptionOwner

          CDOLockOwner getWriteOptionOwner()

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