Class ModelLockProvider
- java.lang.Object
 - 
- com.nomagic.magicdraw.foundation.util.ModelLockProvider
 
 
- 
public abstract class ModelLockProvider extends java.lang.ObjectThe class implementation provides a bridge between model's implementation and the application. Model will use single instance of the class in order to get a lock and the locking configuration by an object. Application will be able to provide a lock and the locking configuration via configuring single instance. 
- 
- 
Field Summary
Fields Modifier and Type Field Description private static ModelLockProviderinstanceSingle instance. 
- 
Constructor Summary
Constructors Constructor Description ModelLockProvider() 
- 
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static ModelLockProvidergetInstance()Returns configured instance ofModelLockProvider.abstract java.util.concurrent.locks.LockgetLock(org.eclipse.emf.ecore.EObject object)Returns a lock object by the specified object.abstract java.util.concurrent.TimeUnitgetTimeUnit(org.eclipse.emf.ecore.EObject object)Returns time unit of the time that will be used to try lock.abstract longgetTryLockTime(org.eclipse.emf.ecore.EObject object)Returns time that will be used to try lock.static voidsetInstance(ModelLockProvider instance)Configures single instance ofModelLockProvider. 
 - 
 
- 
- 
Field Detail
- 
instance
private static ModelLockProvider instance
Single instance. 
 - 
 
- 
Method Detail
- 
getInstance
public static ModelLockProvider getInstance()
Returns configured instance ofModelLockProvider.- Returns:
 - single instance.
 
 
- 
setInstance
public static void setInstance(ModelLockProvider instance)
Configures single instance ofModelLockProvider.- Parameters:
 instance- new instance.
 
- 
getLock
public abstract java.util.concurrent.locks.Lock getLock(org.eclipse.emf.ecore.EObject object)
Returns a lock object by the specified object. Implementation can return null if the object is unknown/unrecognized by implementation. Implementation of the method should be as fast as possible. User actions during this call are not acceptable.- Parameters:
 object- an object.- Returns:
 - lock object.
 
 
- 
getTryLockTime
public abstract long getTryLockTime(org.eclipse.emf.ecore.EObject object)
Returns time that will be used to try lock. Implementation can return any value if the object is unknown/unrecognized by implementation.- Parameters:
 object- an object.- Returns:
 - try lock time.
 
 
- 
getTimeUnit
public abstract java.util.concurrent.TimeUnit getTimeUnit(org.eclipse.emf.ecore.EObject object)
Returns time unit of the time that will be used to try lock. Implementation should return null if the object is unknown/unrecognized by implementation.- Parameters:
 object- an object.- Returns:
 - try lock time unit.
 
 
 - 
 
 -