public final class TreeUtil
extends java.lang.Object
Tree
that are not provided
by the API.Modifier and Type | Method and Description |
---|---|
static @NotNull Tree |
addChild(@NotNull Tree tree,
@NotNull java.lang.String childName,
@NotNull java.lang.String primaryTypeName)
Adds a new child tree with the given name and primary type name.
|
static Tree |
addChild(@NotNull Tree parent,
@NotNull java.lang.String name,
@Nullable java.lang.String typeName,
@NotNull Tree typeRoot,
@Nullable java.lang.String userID) |
static void |
addMixin(@NotNull Tree tree,
@NotNull java.lang.String mixinName,
@NotNull Tree typeRoot,
@Nullable java.lang.String userID) |
static void |
autoCreateItems(@NotNull Tree tree,
@NotNull Tree type,
@NotNull Tree typeRoot,
@Nullable java.lang.String userID) |
static PropertyState |
autoCreateProperty(@NotNull java.lang.String name,
@NotNull Tree definition,
@Nullable java.lang.String userID) |
static java.lang.String |
findDefaultPrimaryType(Tree definitions,
boolean sns) |
static boolean |
getBoolean(@NotNull Tree tree,
@NotNull java.lang.String propertyName)
Returns the boolean representation of the property with the specified
propertyName . |
static java.lang.String |
getDefaultChildType(Tree typeRoot,
Tree parent,
java.lang.String childName)
Finds the default primary type for a new child node with the given name.
|
static java.util.List<Tree> |
getEffectiveType(Tree tree,
Tree typeRoot)
Returns the effective node types of the given node.
|
static long |
getLong(@NotNull Tree tree,
@NotNull java.lang.String name,
long defaultValue) |
static @NotNull java.lang.Iterable<java.lang.String> |
getMixinTypeNames(@NotNull Tree tree) |
static @NotNull java.lang.Iterable<java.lang.String> |
getMixinTypeNames(@NotNull Tree tree,
@NotNull LazyValue<Tree> readOnlyTree) |
static @Nullable java.lang.String |
getName(@NotNull Tree tree,
@NotNull java.lang.String name) |
static @NotNull java.lang.Iterable<java.lang.String> |
getNames(@NotNull Tree tree,
@NotNull java.lang.String name) |
static @NotNull Tree |
getOrAddChild(@NotNull Tree tree,
@NotNull java.lang.String childName,
@NotNull java.lang.String primaryTypeName)
Combination of
Tree.getChild(String) and adding a child including
its jcr:primaryType property (i.e. |
static @Nullable java.lang.String |
getPrimaryTypeName(@NotNull Tree tree) |
static @Nullable java.lang.String |
getPrimaryTypeName(@NotNull Tree tree,
@NotNull LazyValue<Tree> readOnlyTree) |
static @Nullable java.lang.String |
getString(@NotNull Tree tree,
@NotNull java.lang.String propertyName) |
static @Nullable java.lang.String |
getString(@NotNull Tree tree,
@NotNull java.lang.String name,
@Nullable java.lang.String defaultValue) |
static @Nullable java.lang.Iterable<java.lang.String> |
getStrings(@NotNull Tree tree,
@NotNull java.lang.String propertyName) |
static @Nullable Tree |
getTree(@NotNull Tree tree,
@NotNull java.lang.String path)
Return the possibly non existing tree located at the passed
path from
the location of the start tree or null if path results
in a parent of the root. |
static boolean |
isNodeType(Tree tree,
java.lang.String typeName,
Tree typeRoot) |
static boolean |
isReadOnlyTree(@NotNull Tree tree)
Returns
true if the specified tree is a read-only tree.. |
@Nullable public static @Nullable java.lang.String getPrimaryTypeName(@NotNull @NotNull Tree tree)
@Nullable public static @Nullable java.lang.String getPrimaryTypeName(@NotNull @NotNull Tree tree, @NotNull @NotNull LazyValue<Tree> readOnlyTree)
@NotNull public static @NotNull java.lang.Iterable<java.lang.String> getMixinTypeNames(@NotNull @NotNull Tree tree)
@NotNull public static @NotNull java.lang.Iterable<java.lang.String> getMixinTypeNames(@NotNull @NotNull Tree tree, @NotNull @NotNull LazyValue<Tree> readOnlyTree)
@Nullable public static @Nullable java.lang.Iterable<java.lang.String> getStrings(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String propertyName)
@Nullable public static @Nullable java.lang.String getString(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String propertyName)
@Nullable public static @Nullable java.lang.String getString(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String name, @Nullable @Nullable java.lang.String defaultValue)
public static boolean getBoolean(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String propertyName)
propertyName
. If the property does not exist or
is an array
this method returns false
.tree
- The target tree.propertyName
- The name of the property.false
if the property does not exist
or is an multivalued property.@Nullable public static @Nullable java.lang.String getName(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String name)
@NotNull public static @NotNull java.lang.Iterable<java.lang.String> getNames(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String name)
public static long getLong(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String name, long defaultValue)
@Nullable public static @Nullable Tree getTree(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String path)
path
from
the location of the start tree
or null
if path
results
in a parent of the root.tree
- start treepath
- path from the start treepath
from start
or null
public static Tree addChild(@NotNull @NotNull Tree parent, @NotNull @NotNull java.lang.String name, @Nullable @Nullable java.lang.String typeName, @NotNull @NotNull Tree typeRoot, @Nullable @Nullable java.lang.String userID) throws RepositoryException
RepositoryException
@NotNull public static @NotNull Tree addChild(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String childName, @NotNull @NotNull java.lang.String primaryTypeName) throws AccessDeniedException
Tree.addChild(String)
and
Tree.setProperty(String, Object, org.apache.jackrabbit.oak.api.Type)
where the property name is JcrConstants.JCR_PRIMARYTYPE
.
Note, that this method in addition verifies if the created tree exists
and is accessible in order to avoid IllegalStateException
upon
subsequent modification of the new child.childName
- The Oak name of the child item.primaryTypeName
- The Oak name of the primary node type.AccessDeniedException
- If the child does not exist after creation.@NotNull public static @NotNull Tree getOrAddChild(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String childName, @NotNull @NotNull java.lang.String primaryTypeName) throws AccessDeniedException
Tree.getChild(String)
and adding a child including
its jcr:primaryType property (i.e. Tree.addChild(String)
and
Tree.setProperty(PropertyState)
) in case no tree exists with the specified name.childName
- The Oak name of the child item.primaryTypeName
- The Oak name of the primary node type.AccessDeniedException
- If the child does not exist after creation.public static void addMixin(@NotNull @NotNull Tree tree, @NotNull @NotNull java.lang.String mixinName, @NotNull @NotNull Tree typeRoot, @Nullable @Nullable java.lang.String userID) throws RepositoryException
RepositoryException
public static void autoCreateItems(@NotNull @NotNull Tree tree, @NotNull @NotNull Tree type, @NotNull @NotNull Tree typeRoot, @Nullable @Nullable java.lang.String userID) throws RepositoryException
RepositoryException
public static PropertyState autoCreateProperty(@NotNull @NotNull java.lang.String name, @NotNull @NotNull Tree definition, @Nullable @Nullable java.lang.String userID)
public static java.lang.String getDefaultChildType(Tree typeRoot, Tree parent, java.lang.String childName)
typeRoot
- root of the /jcr:system/jcr:nodeTypes
treeparent
- parent nodechildName
- name of the new child nodenull
if not availablepublic static java.util.List<Tree> getEffectiveType(Tree tree, Tree typeRoot)
public static java.lang.String findDefaultPrimaryType(Tree definitions, boolean sns)
Copyright © 2010 - 2020 Adobe. All Rights Reserved