RWOLockManager.@Deprecated public class RWLockManager<OBJECT,CONTEXT> extends Lifecycle implements IRWLockManager<OBJECT,CONTEXT>
write lock at the same time. It will privileges first context that has already
a read lock. If no one has any read lock, it's "first come first serve".| Modifier and Type | Class and Description |
|---|---|
protected static interface |
RWLockManager.LockEntry<OBJECT,CONTEXT>
Deprecated.
Use
RWOLockManager |
protected static interface |
RWLockManager.LockEntryHandler<OBJECT,CONTEXT>
Deprecated.
Use
RWOLockManager |
protected static interface |
RWLockManager.LockStrategy<OBJECT,CONTEXT>
Deprecated.
Use
RWOLockManager |
IRWLockManager.LockTypeILifecycle.DeferrableActivationNO_WAIT, WAIT| Constructor and Description |
|---|
RWLockManager()
Deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
changeContext(CONTEXT oldContext,
CONTEXT newContext)
Deprecated.
|
protected RWLockManager.LockEntry<OBJECT,CONTEXT> |
getLockEntry(OBJECT objectToLock)
Deprecated.
|
protected RWLockManager.LockStrategy<OBJECT,CONTEXT> |
getLockingStrategy(IRWLockManager.LockType type)
Deprecated.
|
protected void |
handleLockEntries(CONTEXT context,
RWLockManager.LockEntryHandler<OBJECT,CONTEXT> handler)
Deprecated.
|
boolean |
hasLock(IRWLockManager.LockType type,
CONTEXT context,
OBJECT objectToLock)
Deprecated.
|
boolean |
hasLockByOthers(IRWLockManager.LockType type,
CONTEXT context,
OBJECT objectToLock)
Deprecated.
|
void |
lock(IRWLockManager.LockType type,
CONTEXT context,
java.util.Collection<? extends OBJECT> objectsToLock,
long timeout)
Deprecated.
|
void |
lock(IRWLockManager.LockType type,
CONTEXT context,
OBJECT objectToLock,
long timeout)
Deprecated.
|
void |
unlock(CONTEXT context)
Deprecated.
Attempts to release all locks(read and write) for a given context.
|
void |
unlock(IRWLockManager.LockType type,
CONTEXT context,
java.util.Collection<? extends OBJECT> objectsToUnlock)
Deprecated.
Attempts to release for a given locktype, context and objects.
|
activate, checkActive, checkArg, checkArg, checkInactive, checkNull, checkState, checkState, deactivate, deferredActivate, doActivate, doAfterActivate, doBeforeActivate, doBeforeDeactivate, doDeactivate, dump, getLifecycleState, isActive, isDeferredActivation, toStringaddListener, fireEvent, fireEvent, fireEvent, fireThrowable, firstListenerAdded, getListeners, getNotificationService, hasListeners, lastListenerRemoved, removeListenerclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddListener, getListeners, hasListeners, removeListenerpublic void lock(IRWLockManager.LockType type, CONTEXT context, java.util.Collection<? extends OBJECT> objectsToLock, long timeout) throws java.lang.InterruptedException
lock in interface IRWLockManager<OBJECT,CONTEXT>java.lang.InterruptedExceptionpublic void lock(IRWLockManager.LockType type, CONTEXT context, OBJECT objectToLock, long timeout) throws java.lang.InterruptedException
lock in interface IRWLockManager<OBJECT,CONTEXT>java.lang.InterruptedExceptionpublic void unlock(IRWLockManager.LockType type, CONTEXT context, java.util.Collection<? extends OBJECT> objectsToUnlock)
unlock in interface IRWLockManager<OBJECT,CONTEXT>java.lang.IllegalMonitorStateException - Unlocking objects without lock.public void unlock(CONTEXT context)
unlock in interface IRWLockManager<OBJECT,CONTEXT>public boolean hasLock(IRWLockManager.LockType type, CONTEXT context, OBJECT objectToLock)
hasLock in interface IRWLockManager<OBJECT,CONTEXT>public boolean hasLockByOthers(IRWLockManager.LockType type, CONTEXT context, OBJECT objectToLock)
hasLockByOthers in interface IRWLockManager<OBJECT,CONTEXT>protected void handleLockEntries(CONTEXT context, RWLockManager.LockEntryHandler<OBJECT,CONTEXT> handler)
protected RWLockManager.LockEntry<OBJECT,CONTEXT> getLockEntry(OBJECT objectToLock)
protected RWLockManager.LockStrategy<OBJECT,CONTEXT> getLockingStrategy(IRWLockManager.LockType type)
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