Class TreeStorageNodePrescription
java.lang.Object
org.keycloak.models.map.storage.tree.DefaultTreeNode<TreeStorageNodePrescription>
org.keycloak.models.map.storage.tree.TreeStorageNodePrescription
- All Implemented Interfaces:
TreeNode<TreeStorageNodePrescription>
Prescription of the tree storage. This prescription can
be externalized and contains e.g. details on the particular storage type
represented by this node, or properties of the node and edge between this
and the parent storage.
Realization of this prescription is in TreeStorageNodeInstance
, namely it does not
contain a map storage instance that can be directly used
for accessing data.
- Author:
- hmlnarik
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.keycloak.models.map.storage.tree.TreeNode
TreeNode.PathOrientation
-
Field Summary
Fields inherited from class org.keycloak.models.map.storage.tree.DefaultTreeNode
edgeProperties, nodeProperties, treeProperties
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<V extends AbstractEntity>
TreeStorageNodePrescriptionforEntityClass
(Class<V> targetEntityClass) protected String
getLabel()
<V extends AbstractEntity>
TreeStorageNodeInstance<V>instantiate
(KeycloakSession session) isCacheFor
(EntityField<?> field, Object parameter) isPrimarySourceFor
(EntityField<?> field, Object parameter) Returns if the given field is primary source for the field, potentially specified further by a parameter.boolean
Methods inherited from class org.keycloak.models.map.storage.tree.DefaultTreeNode
addChild, addChild, cloneTree, equals, findFirstBfs, findFirstBottommostDfs, findFirstDfs, forEachParent, getChild, getChildren, getEdgeProperties, getEdgeProperty, getId, getNodeProperties, getNodeProperty, getParent, getParentsStream, getPathToRoot, getTreeProperties, getTreeProperty, hasChildren, hashCode, hasNoChildren, removeChild, removeChild, setEdgeProperty, setId, setNodeProperty, setParent, toString, walkBfs, walkDfs
-
Constructor Details
-
TreeStorageNodePrescription
-
TreeStorageNodePrescription
-
-
Method Details
-
forEntityClass
public <V extends AbstractEntity> TreeStorageNodePrescription forEntityClass(Class<V> targetEntityClass) -
instantiate
-
isReadOnly
public boolean isReadOnly() -
isPrimarySourceFor
public TreeStorageNodePrescription.FieldContainedStatus isPrimarySourceFor(EntityField<?> field, Object parameter) Returns if the given field is primary source for the field, potentially specified further by a parameter.- Parameters:
field
- Fieldparameter
- First parameter, which in case of maps is the key to that map, e.g. attribute name.- Returns:
- For a fully specified field and a parameter (e.g. "attribute" and "attr1"), or a parameterless field (e.g. "client_id"),
returns either
FULLY
orNOT_CONTAINED
. May also returnPARTIAL
for a field that requires a parameter but the parameter is not specified.
-
isCacheFor
public TreeStorageNodePrescription.FieldContainedStatus isCacheFor(EntityField<?> field, Object parameter) -
getLabel
- Overrides:
getLabel
in classDefaultTreeNode<TreeStorageNodePrescription>
-