public class EffectiveNodeTypeImpl extends Object implements Cloneable, EffectiveNodeType
EffectiveNodeType represents one or more
NodeTypes as one 'effective' node type where inheritance
is resolved.
Instances of EffectiveNodeType are immutable.
| Modifier and Type | Method and Description |
|---|---|
void |
checkAddNodeConstraints(Name name,
ItemDefinitionProvider definitionProvider) |
void |
checkAddNodeConstraints(Name name,
QNodeTypeDefinition nodeTypeDefinition,
ItemDefinitionProvider definitionProvider) |
void |
checkRemoveItemConstraints(Name name) |
protected Object |
clone() |
Name[] |
getAllNodeTypes() |
QNodeDefinition[] |
getAllQNodeDefinitions() |
QPropertyDefinition[] |
getAllQPropertyDefinitions() |
QNodeDefinition[] |
getAutoCreateQNodeDefinitions() |
QPropertyDefinition[] |
getAutoCreateQPropertyDefinitions() |
Name[] |
getInheritedNodeTypes() |
QNodeDefinition[] |
getMandatoryQNodeDefinitions() |
QPropertyDefinition[] |
getMandatoryQPropertyDefinitions() |
Name[] |
getMergedNodeTypes() |
QNodeDefinition[] |
getNamedQNodeDefinitions(Name name) |
QPropertyDefinition[] |
getNamedQPropertyDefinitions(Name name) |
QNodeDefinition[] |
getUnnamedQNodeDefinitions() |
QPropertyDefinition[] |
getUnnamedQPropertyDefinitions() |
boolean |
hasRemoveNodeConstraint(Name nodeName)
Returns
true if a single node definition matching the
specified nodeName is either mandatory or protected. |
boolean |
hasRemovePropertyConstraint(Name propertyName)
Returns
true if a single property definition matching the
specified propertyName is either mandatory or protected. |
boolean |
includesNodeType(Name nodeTypeName)
Determines whether this effective node type representation includes
(either through inheritance or aggregation) the given node type.
|
boolean |
includesNodeTypes(Name[] nodeTypeNames)
Determines whether this effective node type representation includes
(either through inheritance or aggregation) all of the given node types.
|
boolean |
supportsMixin(Name mixin)
Determines whether this effective node type supports adding
the specified mixin.
|
public Name[] getInheritedNodeTypes()
getInheritedNodeTypes in interface EffectiveNodeTypeEffectiveNodeType.getInheritedNodeTypes()public Name[] getAllNodeTypes()
getAllNodeTypes in interface EffectiveNodeTypeEffectiveNodeType.getAllNodeTypes()public Name[] getMergedNodeTypes()
getMergedNodeTypes in interface EffectiveNodeTypeEffectiveNodeType.getMergedNodeTypes()public QNodeDefinition[] getAllQNodeDefinitions()
getAllQNodeDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getAllQNodeDefinitions()public QPropertyDefinition[] getAllQPropertyDefinitions()
getAllQPropertyDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getAllQPropertyDefinitions()public QNodeDefinition[] getAutoCreateQNodeDefinitions()
getAutoCreateQNodeDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getAutoCreateQNodeDefinitions()public QPropertyDefinition[] getAutoCreateQPropertyDefinitions()
getAutoCreateQPropertyDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getAutoCreateQPropertyDefinitions()public QPropertyDefinition[] getMandatoryQPropertyDefinitions()
getMandatoryQPropertyDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getMandatoryQPropertyDefinitions()public QNodeDefinition[] getMandatoryQNodeDefinitions()
getMandatoryQNodeDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getMandatoryQNodeDefinitions()public QNodeDefinition[] getNamedQNodeDefinitions(Name name)
getNamedQNodeDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getNamedQNodeDefinitions(Name)public QNodeDefinition[] getUnnamedQNodeDefinitions()
getUnnamedQNodeDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getUnnamedQNodeDefinitions()public QPropertyDefinition[] getNamedQPropertyDefinitions(Name name)
getNamedQPropertyDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getNamedQPropertyDefinitions(Name)public QPropertyDefinition[] getUnnamedQPropertyDefinitions()
getUnnamedQPropertyDefinitions in interface EffectiveNodeTypeEffectiveNodeType.getUnnamedQPropertyDefinitions()public boolean includesNodeType(Name nodeTypeName)
EffectiveNodeTypeincludesNodeType in interface EffectiveNodeTypenodeTypeName - name of node typetrue if the given node type is included, otherwise
falsepublic boolean includesNodeTypes(Name[] nodeTypeNames)
EffectiveNodeTypeincludesNodeTypes in interface EffectiveNodeTypenodeTypeNames - array of node type namestrue if all of the given node types are included,
otherwise falsepublic boolean supportsMixin(Name mixin)
EffectiveNodeTypesupportsMixin in interface EffectiveNodeTypemixin - name of mixin typetrue if the mixin type is supported, otherwise
falseEffectiveNodeType.supportsMixin(Name)public void checkAddNodeConstraints(Name name, ItemDefinitionProvider definitionProvider) throws ConstraintViolationException
checkAddNodeConstraints in interface EffectiveNodeTypeConstraintViolationExceptionEffectiveNodeType.checkAddNodeConstraints(Name, ItemDefinitionProvider)public void checkAddNodeConstraints(Name name, QNodeTypeDefinition nodeTypeDefinition, ItemDefinitionProvider definitionProvider) throws ConstraintViolationException, NoSuchNodeTypeException
checkAddNodeConstraints in interface EffectiveNodeTypedefinitionProvider - @throws ConstraintViolationException @throws NoSuchNodeTypeExceptionConstraintViolationExceptionNoSuchNodeTypeExceptionEffectiveNodeType.checkAddNodeConstraints(org.apache.jackrabbit.spi.Name,QNodeTypeDefinition, ItemDefinitionProvider)public void checkRemoveItemConstraints(Name name) throws ConstraintViolationException
checkRemoveItemConstraints in interface EffectiveNodeTypeConstraintViolationExceptionEffectiveNodeType.checkRemoveItemConstraints(Name)public boolean hasRemoveNodeConstraint(Name nodeName)
EffectiveNodeTypetrue if a single node definition matching the
specified nodeName is either mandatory or protected.hasRemoveNodeConstraint in interface EffectiveNodeTypetrue if a single node definition matching the
specified nodeName is either mandatory or protected.EffectiveNodeType.hasRemoveNodeConstraint(Name)public boolean hasRemovePropertyConstraint(Name propertyName)
EffectiveNodeTypetrue if a single property definition matching the
specified propertyName is either mandatory or protected.hasRemovePropertyConstraint in interface EffectiveNodeTypetrue if a single property definition matching the
specified propertyName is either mandatory or protected.EffectiveNodeType.hasRemovePropertyConstraint(Name)Copyright © 2004–2020 The Apache Software Foundation. All rights reserved.