wt.locks
Interface LockService

All Known Implementing Classes:
LockServiceFwd, StandardLockService

public interface LockService

Provides an abstraction that specifies and promotes server-side functionality as a service that's remotely available for use by a client. The intent is that this interface defines all the necessary server-side functionality for locking.

Supported API: true

Extendable: false


Method Summary
 Lockable lock(Lockable object)
          Defaults the note to be null, the principal to be null, which makes the principal the session's user, and invokes the main lock method.
 Lockable lock(Lockable object, String note)
          Defaults the principal to be null, which makes the principal the session's user, and invokes the main lock method.
 Lockable lock(Lockable object, WTPrincipalReference locker)
          Defaults the note to be null and invokes the main lock method.
 Lockable lock(Lockable object, WTPrincipalReference locker, String note)
          Provides server-side functionality for the locking of business objects.
 Lockable unlock(Lockable object)
          Defaults the principal to be null, which makes the principal the session's user, and invokes the main unlock method.
 Lockable unlock(Lockable object, WTPrincipalReference locker)
          Provides server-side functionality for releasing a business object's lock.
 

Method Detail

lock

public Lockable lock(Lockable object,
                     WTPrincipalReference locker,
                     String note)
              throws WTException,
                     LockException,
                     WTPropertyVetoException,
                     PersistenceException
Provides server-side functionality for the locking of business objects. This type of lock is a logical mechanism to restrict concurrent access, not a database lock. If the given principal is null then the current session's principal is used as the locker. When a lock is placed on an object by a principal, that user or group is typically the only agency able to then modify the object.

However, if an object is lockable but has not yet been locked, then any agency has unrestricted access to the object until it has been locked.



Supported API: true

Parameters:
object -
locker -
note -
Returns:
Lockable
Throws:
WTException
LockException
WTPropertyVetoException
PersistenceException

lock

public Lockable lock(Lockable object,
                     WTPrincipalReference locker)
              throws WTException,
                     LockException,
                     WTPropertyVetoException,
                     PersistenceException
Defaults the note to be null and invokes the main lock method.

Supported API: true

Parameters:
object -
locker -
Returns:
Lockable
Throws:
WTException
LockException
WTPropertyVetoException
PersistenceException
See Also:
lock(Lockable,WTPrincipalReference,String)

lock

public Lockable lock(Lockable object,
                     String note)
              throws WTException,
                     LockException,
                     WTPropertyVetoException,
                     PersistenceException
Defaults the principal to be null, which makes the principal the session's user, and invokes the main lock method.

Supported API: true

Parameters:
object -
note -
Returns:
Lockable
Throws:
WTException
LockException
WTPropertyVetoException
PersistenceException
See Also:
lock(Lockable,WTPrincipalReference,String)

lock

public Lockable lock(Lockable object)
              throws WTException,
                     LockException,
                     WTPropertyVetoException,
                     PersistenceException
Defaults the note to be null, the principal to be null, which makes the principal the session's user, and invokes the main lock method.

Supported API: true

Parameters:
object -
Returns:
Lockable
Throws:
WTException
LockException
WTPropertyVetoException
PersistenceException
See Also:
lock(Lockable,WTPrincipalReference,String)

unlock

public Lockable unlock(Lockable object,
                       WTPrincipalReference locker)
                throws WTException,
                       LockException,
                       WTPropertyVetoException,
                       PersistenceException
Provides server-side functionality for releasing a business object's lock. If the given principal is null then the current session's principal is used as the locker. When a lock is released off of an object, its access becomes unrestricted.

Supported API: true

Parameters:
object -
locker -
Returns:
Lockable
Throws:
WTException
LockException
WTPropertyVetoException
PersistenceException

unlock

public Lockable unlock(Lockable object)
                throws WTException,
                       LockException,
                       WTPropertyVetoException,
                       PersistenceException
Defaults the principal to be null, which makes the principal the session's user, and invokes the main unlock method.

Supported API: true

Parameters:
object -
Returns:
Lockable
Throws:
WTException
LockException
WTPropertyVetoException
PersistenceException
See Also:
unlock(Lockable,WTPrincipalReference)