abstract class ReadOnlySystemAttributesMap
extends java.lang.Object
implements java.util.Map<java.lang.String,java.lang.String>
Map<String, String>
implementation that is backed by system
properties or environment variables.
Used by AbstractApplicationContext
when a SecurityManager
prohibits
access to System.getProperties()
or System.getenv()
. It is for this
reason that the implementations of keySet()
, entrySet()
, and
values()
always return empty even though get(Object)
may in fact
return non-null if the current security manager allows access to individual keys.
Constructor and Description |
---|
ReadOnlySystemAttributesMap() |
Modifier and Type | Method and Description |
---|---|
void |
clear() |
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(java.lang.Object value) |
java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.String>> |
entrySet() |
java.lang.String |
get(java.lang.Object key) |
protected abstract java.lang.String |
getSystemAttribute(java.lang.String attributeName)
Template method that returns the underlying system attribute.
|
boolean |
isEmpty() |
java.util.Set<java.lang.String> |
keySet() |
java.lang.String |
put(java.lang.String key,
java.lang.String value) |
void |
putAll(java.util.Map<? extends java.lang.String,? extends java.lang.String> m) |
java.lang.String |
remove(java.lang.Object key) |
int |
size() |
java.util.Collection<java.lang.String> |
values() |
public boolean containsKey(java.lang.Object key)
containsKey
in interface java.util.Map<java.lang.String,java.lang.String>
public java.lang.String get(java.lang.Object key)
get
in interface java.util.Map<java.lang.String,java.lang.String>
key
- the name of the system attribute to retrievejava.lang.IllegalArgumentException
- if given key is non-Stringpublic boolean isEmpty()
isEmpty
in interface java.util.Map<java.lang.String,java.lang.String>
protected abstract java.lang.String getSystemAttribute(java.lang.String attributeName)
Implementations typically call System.getProperty(String)
or System.getenv(String)
here.
public int size()
size
in interface java.util.Map<java.lang.String,java.lang.String>
public java.lang.String put(java.lang.String key, java.lang.String value)
put
in interface java.util.Map<java.lang.String,java.lang.String>
public boolean containsValue(java.lang.Object value)
containsValue
in interface java.util.Map<java.lang.String,java.lang.String>
public java.lang.String remove(java.lang.Object key)
remove
in interface java.util.Map<java.lang.String,java.lang.String>
public void clear()
clear
in interface java.util.Map<java.lang.String,java.lang.String>
public java.util.Set<java.lang.String> keySet()
keySet
in interface java.util.Map<java.lang.String,java.lang.String>
public void putAll(java.util.Map<? extends java.lang.String,? extends java.lang.String> m)
putAll
in interface java.util.Map<java.lang.String,java.lang.String>
public java.util.Collection<java.lang.String> values()
values
in interface java.util.Map<java.lang.String,java.lang.String>
public java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.String>> entrySet()
entrySet
in interface java.util.Map<java.lang.String,java.lang.String>