Class QNodeDefinitionImpl

java.lang.Object
org.apache.jackrabbit.spi.commons.QItemDefinitionImpl
org.apache.jackrabbit.spi.commons.QNodeDefinitionImpl
All Implemented Interfaces:
Serializable, QItemDefinition, QNodeDefinition

public class QNodeDefinitionImpl extends QItemDefinitionImpl implements QNodeDefinition
QNodeDefinitionImpl implements a QNodeDefinition.
See Also:
  • Constructor Details

    • QNodeDefinitionImpl

      public QNodeDefinitionImpl(QNodeDefinition nodeDef)
      Copy constructor.
      Parameters:
      nodeDef - some other node definition.
    • QNodeDefinitionImpl

      public QNodeDefinitionImpl(Name name, Name declaringNodeType, boolean isAutoCreated, boolean isMandatory, int onParentVersion, boolean isProtected, Name defaultPrimaryType, Name[] requiredPrimaryTypes, boolean allowsSameNameSiblings)
      Creates a new SPI node definition based on a JCR NodeDefinition.
      Parameters:
      name - the name of the child item.
      declaringNodeType - the declaring node type
      isAutoCreated - if this item is auto created.
      isMandatory - if this is a mandatory item.
      onParentVersion - the on parent version behaviour.
      isProtected - if this item is protected.
      defaultPrimaryType - the default primary type name
      requiredPrimaryTypes - the required primary type name
      allowsSameNameSiblings - if this node allows SNS
    • QNodeDefinitionImpl

      public QNodeDefinitionImpl(NodeDefinition nodeDef, NamePathResolver resolver) throws NameException, NamespaceException
      Creates a new node definition based on a JCR NodeDefinition.
      Parameters:
      nodeDef - the node definition.
      resolver - the name/path resolver of the session that provided the node definition
      Throws:
      NameException - if nodeDef contains an illegal name.
      NamespaceException - if nodeDef contains a name with an namespace prefix that is unknown to resolver.
  • Method Details

    • getDefaultPrimaryType

      public Name getDefaultPrimaryType()
      Returns the name of the default primary type.
      Specified by:
      getDefaultPrimaryType in interface QNodeDefinition
      Returns:
      the name of the default primary type.
    • getRequiredPrimaryTypes

      public Name[] getRequiredPrimaryTypes()
      Returns the array of names of the required primary types.
      Specified by:
      getRequiredPrimaryTypes in interface QNodeDefinition
      Returns:
      the array of names of the required primary types.
    • allowsSameNameSiblings

      public boolean allowsSameNameSiblings()
      Reports whether this node can have same-name siblings.
      Specified by:
      allowsSameNameSiblings in interface QNodeDefinition
      Returns:
      the 'allowsSameNameSiblings' flag.
    • definesNode

      public boolean definesNode()
      Determines whether this item definition defines a node.
      Specified by:
      definesNode in interface QItemDefinition
      Returns:
      always true
    • equals

      public boolean equals(Object obj)
      Compares two node definitions for equality. Returns true if the given object is a node definition and has the same attributes as this node definition.
      Overrides:
      equals in class QItemDefinitionImpl
      Parameters:
      obj - the object to compare this node definition with
      Returns:
      true if the object is equal to this node definition, false otherwise
      See Also:
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class QItemDefinitionImpl
      Returns:
      the hash code