Class 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:
Guard, Permission, Serialized Form

Constructors

Constructor Description
GuardedObject​(Object object, Guard guard)

Constructs a GuardedObject using the specified object and guard.

Methods

Modifier and Type Method Description
Object getObject()

Retrieves the guarded object, or throws an exception if access to the guarded object is denied by the guard.

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructors

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.

Methods

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.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/security/GuardedObject.html