Class BaseAuthorizableValueMap
java.lang.Object
org.apache.sling.jackrabbit.usermanager.impl.resource.BaseAuthorizableValueMap
- Direct Known Subclasses:
AuthorizableValueMap
,NestedAuthorizableValueMap
base implementation for ValueMap implementations for Authorizable Resources
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.apache.jackrabbit.api.security.user.Authorizable
protected boolean
protected final org.slf4j.Logger
default logprotected final SystemUserManagerPaths
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
BaseAuthorizableValueMap
(org.apache.jackrabbit.api.security.user.Authorizable authorizable, SystemUserManagerPaths systemUserManagerPaths) -
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
boolean
containsKey
(Object key) boolean
containsValue
(Object value) protected <T> T
convertToType
(String name, Class<T> type) entrySet()
<T> T
Get a named property and convert it into the given type.<T> T
Get a named property and convert it into the given type.boolean
isEmpty()
keySet()
void
protected abstract Object
protected abstract void
protected Object
readPropertyAndCache
(String key, String relPath) int
size()
static Object
toJavaObject
(javax.jcr.Value value) Converts a JCR Value to a corresponding Java ObjecttoString()
Reads the authorizable map completely and returns the string representation of the cached properties.values()
protected Object
valuesToJavaObject
(javax.jcr.Value[] values) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Field Details
-
log
protected final org.slf4j.Logger logdefault log -
fullyRead
protected boolean fullyRead -
cache
-
authorizable
protected org.apache.jackrabbit.api.security.user.Authorizable authorizable -
systemUserManagerPaths
-
-
Constructor Details
-
BaseAuthorizableValueMap
protected BaseAuthorizableValueMap(org.apache.jackrabbit.api.security.user.Authorizable authorizable, SystemUserManagerPaths systemUserManagerPaths)
-
-
Method Details
-
get
Description copied from interface:ValueMap
Get a named property and convert it into the given type. This method does not support conversion into a primitive type or an array of a primitive type. It should returnnull
in this case. -
get
Description copied from interface:ValueMap
Get a named property and convert it into the given type. This method does not support conversion into a primitive type or an array of a primitive type. It should return the default value in this case.
Implementation hint: In the past it was allowed to call this with a 2nd parameter beingnull
. Therefore all implementations should internally callMap.get(Object)
when the 2nd parameter has valuenull
.- Specified by:
get
in interfaceValueMap
- Type Parameters:
T
- The expected type- Parameters:
name
- The name of the propertydefaultValue
- The default value to use if the named property does not exist or cannot be converted to the requested type. The default value is also used to define the type to convert the value to. Must not benull
. If you want to returnnull
by default rather rely onValueMap.get(String, Class)
.- Returns:
- Return named value converted to type T or the default value if non existing or can't be converted.
-
containsKey
- Specified by:
containsKey
in interfaceMap<String,
Object>
-
containsValue
- Specified by:
containsValue
in interfaceMap<String,
Object>
-
entrySet
-
get
-
keySet
-
size
public int size() -
isEmpty
public boolean isEmpty() -
values
-
read
-
readPropertyAndCache
protected Object readPropertyAndCache(String key, String relPath) throws javax.jcr.RepositoryException - Throws:
javax.jcr.RepositoryException
-
toJavaObject
Converts a JCR Value to a corresponding Java Object- Parameters:
value
- the JCR Value to convert- Returns:
- the Java Object
- Throws:
javax.jcr.RepositoryException
- if the value cannot be converted
-
valuesToJavaObject
- Throws:
javax.jcr.RepositoryException
-
readFully
protected abstract void readFully() -
toString
Reads the authorizable map completely and returns the string representation of the cached properties. -
remove
-
clear
public void clear() -
put
-
putAll
-
convertToType
-