public class GetPropertyAction extends Object implements PrivilegedAction<String>
An instance of this class can be used as the argument of
AccessController.doPrivileged.
The following code retrieves the value of the system
property named "prop" as a privileged action:
String s = java.security.AccessController.doPrivileged
(new GetPropertyAction("prop"));
PrivilegedAction,
AccessController| Constructor and Description |
|---|
GetPropertyAction(String theProp)
Constructor that takes the name of the system property whose
string value needs to be determined.
|
GetPropertyAction(String theProp,
String defaultVal)
Constructor that takes the name of the system property and the default
value of that property.
|
| Modifier and Type | Method and Description |
|---|---|
static Properties |
privilegedGetProperties()
Convenience method to call
System.getProperties without
having to go through doPrivileged if no security manager is present. |
static String |
privilegedGetProperty(String theProp)
Convenience method to get a property without going through doPrivileged
if no security manager is present.
|
static String |
privilegedGetProperty(String theProp,
String defaultVal)
Convenience method to get a property without going through doPrivileged
if no security manager is present.
|
String |
run()
Determines the string value of the system property whose
name was specified in the constructor.
|
public GetPropertyAction(String theProp)
theProp - the name of the system property.public String run()
run in interface PrivilegedAction<String>public static String privilegedGetProperty(String theProp)
theProp - the name of the system property.public static String privilegedGetProperty(String theProp, String defaultVal)
theProp - the name of the system property.defaultVal - the default value.public static Properties privilegedGetProperties()
System.getProperties without
having to go through doPrivileged if no security manager is present.
This is unsafe for inclusion in a public API but allowable here since
this class is now encapsulated.
Note that this method performs a privileged action, and callers of
this method should take care to ensure that the returned properties
are not made accessible to untrusted code since it may contain
sensitive information.