org.apache.jackrabbit.spi
Interface QNodeTypeDefinition

All Known Implementing Classes:
QNodeTypeDefinitionImpl

public interface QNodeTypeDefinition

QNodeTypeDefinition is the SPI representation of a node type. It refers to Names only and is therefore independant of session-specific namespace mappings.

See Also:
NodeType

Method Summary
 QNodeDefinition[] getChildNodeDefs()
          Returns an array containing the child node definitions.
 Collection<Name> getDependencies()
          Returns a collection of node type Names that are being referenced by this node type definition (e.g. as supertypes, as required/default primary types in child node definitions, as REFERENCE value constraints in property definitions).
 Name getName()
          Returns the name of the node type being defined or null if not set.
 Name getPrimaryItemName()
          Returns the name of the primary item (one of the child items of the node's of this node type) or null if not set.
 QPropertyDefinition[] getPropertyDefs()
          Returns an array containing the property definitions.
 Name[] getSupertypes()
          Returns an array containing the names of the supertypes.
 Name[] getSupportedMixinTypes()
          Returns an array containing the names of additional mixin types supported on this node type.
 boolean hasOrderableChildNodes()
          Returns the value of the orderableChildNodes flag.
 boolean isAbstract()
          Returns true if the definition is abstract; false otherwise.
 boolean isMixin()
          Returns the value of the mixin flag.
 boolean isQueryable()
          Returns true if the definition is queryable; false otherwise.
 

Method Detail

getName

Name getName()
Returns the name of the node type being defined or null if not set.

Returns:
the name of the node type or null if not set.

getSupertypes

Name[] getSupertypes()
Returns an array containing the names of the supertypes. If no supertypes have been specified, then an empty array is returned for mixin types and the nt:base primary type and an array containing just nt:base for other primary types.

The returned array must not be modified by the application.

Returns:
an array of supertype names

getSupportedMixinTypes

Name[] getSupportedMixinTypes()
Returns an array containing the names of additional mixin types supported on this node type.

The returned array must not be modified by the application.

Returns:
an array of mixin type names, or null when there are no known constraints.

isMixin

boolean isMixin()
Returns the value of the mixin flag.

Returns:
true if this is a mixin node type; false otherwise.

isAbstract

boolean isAbstract()
Returns true if the definition is abstract; false otherwise.

Returns:
true if the definition is abstract; false otherwise.
Since:
JCR 2.0

isQueryable

boolean isQueryable()
Returns true if the definition is queryable; false otherwise.

Returns:
true if the definition is queryable; false otherwise.
Since:
JCR 2.0

hasOrderableChildNodes

boolean hasOrderableChildNodes()
Returns the value of the orderableChildNodes flag.

Returns:
true if nodes of this node type can have orderable child nodes; false otherwise.

getPrimaryItemName

Name getPrimaryItemName()
Returns the name of the primary item (one of the child items of the node's of this node type) or null if not set.

Returns:
the name of the primary item or null if not set.

getPropertyDefs

QPropertyDefinition[] getPropertyDefs()
Returns an array containing the property definitions.

Returns:
an array containing the property definitions.

getChildNodeDefs

QNodeDefinition[] getChildNodeDefs()
Returns an array containing the child node definitions.

Returns:
an array containing the child node definitions.

getDependencies

Collection<Name> getDependencies()
Returns a collection of node type Names that are being referenced by this node type definition (e.g. as supertypes, as required/default primary types in child node definitions, as REFERENCE value constraints in property definitions).

Note that self-references (e.g. a child node definition that specifies the declaring node type as the default primary type) are not considered dependencies.

Returns:
a collection of node type Names


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.