Class EntityLinkTree
- java.lang.Object
-
- com.flowable.platform.common.entitylink.EntityLinkTree
-
public class EntityLinkTree extends java.lang.Object
- Author:
- Filip Hrisafov
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
EntityLinkTree.EntityLinkNode
protected static class
EntityLinkTree.Scope
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,org.flowable.entitylink.api.EntityLinkInfo>
entityLinks
protected boolean
needsRefresh
protected java.util.Map<EntityLinkTree.Scope,EntityLinkTree.EntityLinkNode>
nodeMap
-
Constructor Summary
Constructors Constructor Description EntityLinkTree(java.util.Collection<? extends org.flowable.entitylink.api.EntityLinkInfo> entityLinks)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEntityLink(org.flowable.entitylink.api.EntityLinkInfo entityLink)
Add an entity link to the treeprotected static java.util.Map<EntityLinkTree.Scope,EntityLinkTree.EntityLinkNode>
createNodeMap(java.util.Collection<? extends org.flowable.entitylink.api.EntityLinkInfo> entityLinks)
static EntityLinkTree
createTree(java.util.Collection<? extends org.flowable.entitylink.api.EntityLinkInfo> entityLinks)
Create an entity link tree from the givenentityLinks
.EntityLinkTree.EntityLinkNode
get(java.lang.String scopeId, java.lang.String scopeType)
Get the node with the given scope parametersprotected java.util.Map<EntityLinkTree.Scope,EntityLinkTree.EntityLinkNode>
getNodeMap()
EntityLinkTree.EntityLinkNode
getRoot()
Get the root of the tree.boolean
hasNode(java.lang.String scopeId, java.lang.String scopeType)
Check if the tree has a node for the given scope parameters
-
-
-
Field Detail
-
entityLinks
protected final java.util.Map<java.lang.String,org.flowable.entitylink.api.EntityLinkInfo> entityLinks
-
nodeMap
protected final java.util.Map<EntityLinkTree.Scope,EntityLinkTree.EntityLinkNode> nodeMap
-
needsRefresh
protected boolean needsRefresh
-
-
Method Detail
-
get
public EntityLinkTree.EntityLinkNode get(java.lang.String scopeId, java.lang.String scopeType)
Get the node with the given scope parameters- Parameters:
scopeId
- the scope idscopeType
- the scope type- Returns:
- the node in the tree representing the given scope
-
hasNode
public boolean hasNode(java.lang.String scopeId, java.lang.String scopeType)
Check if the tree has a node for the given scope parameters- Parameters:
scopeId
- the scope idscopeType
- the scope type- Returns:
true
if the true has a node for the given tree
-
addEntityLink
public void addEntityLink(org.flowable.entitylink.api.EntityLinkInfo entityLink)
Add an entity link to the tree- Parameters:
entityLink
- the entity link to be added
-
getRoot
public EntityLinkTree.EntityLinkNode getRoot()
Get the root of the tree.- Returns:
- the root of the tree
-
getNodeMap
protected java.util.Map<EntityLinkTree.Scope,EntityLinkTree.EntityLinkNode> getNodeMap()
-
createNodeMap
protected static java.util.Map<EntityLinkTree.Scope,EntityLinkTree.EntityLinkNode> createNodeMap(java.util.Collection<? extends org.flowable.entitylink.api.EntityLinkInfo> entityLinks)
-
createTree
public static EntityLinkTree createTree(java.util.Collection<? extends org.flowable.entitylink.api.EntityLinkInfo> entityLinks)
Create an entity link tree from the givenentityLinks
. The links should represent all links for the same root scope. i.e. retrieved viaEntityLinkService.findEntityLinksWithSameRootScopeForScopeIdAndScopeType(String, String, String)
- Parameters:
entityLinks
- all entity links with the same root scope- Returns:
- the entity link tree for the given entity links
-
-