Module java.base
Package java.security

Class GuardedObject

java.lang.Object
java.security.GuardedObject
All Implemented Interfaces:
Serializable

public class GuardedObject extends Object implements Serializable
A GuardedObject is an object that is used to protect access to another object.

A GuardedObject encapsulates a target object and a Guard object, such that access to the target object is possible only if the Guard object allows it. Once an object is encapsulated by a GuardedObject, access to that object is controlled by the getObject method, which invokes the checkGuard method on the Guard object that is guarding access. If access is not allowed, an exception is thrown.

Since:
1.2
See Also:
  • Constructor Details

    • GuardedObject

      public GuardedObject(Object object, Guard guard)
      Constructs a GuardedObject using the specified object and guard. If the Guard object is null, then no restrictions will be placed on who can access the object.
      Parameters:
      object - the object to be guarded.
      guard - the Guard object that guards access to the object.
  • Method Details

    • getObject

      public Object getObject() throws SecurityException
      Retrieves the guarded object, or throws an exception if access to the guarded object is denied by the guard.
      Returns:
      the guarded object.
      Throws:
      SecurityException - if access to the guarded object is denied.