|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.jackrabbit.core.nodetype.NodeTypeRegistry
public class NodeTypeRegistry
A NodeTypeRegistry
...
Constructor Summary | |
---|---|
protected |
NodeTypeRegistry(NamespaceRegistry nsReg,
FileSystem ntStore)
Protected constructor |
Method Summary | |
---|---|
void |
addListener(NodeTypeRegistryListener listener)
Add a NodeTypeRegistryListener |
protected void |
checkForConflictingContent(NodeTypeDef ntd)
Checks whether there is existing content that would conflict with the given node type definition. |
protected void |
checkForReferencesInContent(Name nodeTypeName)
Checks whether there is existing content that directly or indirectly refers to the specified node type. |
static NodeTypeRegistry |
create(NamespaceRegistry nsReg,
FileSystem ntStore)
Create a new NodeTypeRegistry |
void |
dump(PrintStream ps)
Dumps the state of this instance in a human readable format for diagnostic purposes. |
void |
externalRegistered(Collection ntDefs)
Called when one or more node types have been externally registered. |
void |
externalReregistered(NodeTypeDef ntDef)
Called when a node type has been externally re-registered. |
void |
externalUnregistered(Collection ntNames)
Called when one or more node types have been externally unregistered. |
Set |
getDependentNodeTypes(Name nodeTypeName)
Returns the names of those registered node types that have dependencies on the given node type. |
EffectiveNodeType |
getEffectiveNodeType(Name ntName)
|
EffectiveNodeType |
getEffectiveNodeType(Name[] ntNames)
|
NodeDef |
getNodeDef(NodeDefId id)
|
NodeTypeDef |
getNodeTypeDef(Name nodeTypeName)
Returns the node type definition of the node type with the given name. |
PropDef |
getPropDef(PropDefId id)
|
Name[] |
getRegisteredNodeTypes()
Returns the names of all registered node types. |
NodeDef |
getRootNodeDef()
|
boolean |
isBuiltIn(Name nodeTypeName)
|
boolean |
isRegistered(Name nodeTypeName)
|
protected void |
loadBuiltInNodeTypeDefs(NodeTypeDefStore store)
Loads the built-in node type definitions into the given store . |
protected void |
loadCustomNodeTypeDefs(NodeTypeDefStore store)
Loads the custom node type definitions into the given store . |
protected void |
persistCustomNodeTypeDefs(NodeTypeDefStore store)
Persists the custom node type definitions contained in the given store . |
EffectiveNodeType |
registerNodeType(NodeTypeDef ntd)
Validates the NodeTypeDef and returns
an EffectiveNodeType object representing the newly
registered node type. |
void |
registerNodeTypes(Collection ntDefs)
Same as except
that a collection of NodeTypeDef s is registered instead of
just one. |
void |
removeListener(NodeTypeRegistryListener listener)
Remove a NodeTypeRegistryListener |
EffectiveNodeType |
reregisterNodeType(NodeTypeDef ntd)
Reregister a node type. |
void |
setEventChannel(NodeTypeEventChannel eventChannel)
Set an event channel to inform about changes. |
void |
unregisterNodeType(Name ntName)
Unregisters the specified node type. |
void |
unregisterNodeTypes(Collection ntNames)
Same as except
that a set of node types is unregistered instead of just one. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected NodeTypeRegistry(NamespaceRegistry nsReg, FileSystem ntStore) throws RepositoryException
nsReg
- ntStore
-
RepositoryException
Method Detail |
---|
public static NodeTypeRegistry create(NamespaceRegistry nsReg, FileSystem ntStore) throws RepositoryException
NodeTypeRegistry
- Parameters:
nsReg
- ntStore
-
- Returns:
NodeTypeRegistry object
- Throws:
RepositoryException
public Name[] getRegisteredNodeTypes()
public EffectiveNodeType registerNodeType(NodeTypeDef ntd) throws InvalidNodeTypeDefException, RepositoryException
NodeTypeDef
and returns
an EffectiveNodeType
object representing the newly
registered node type.
The validation includes the following checks:
ntd
- the definition of the new node type
EffectiveNodeType
instance
InvalidNodeTypeDefException
- if the given node type definition is invalid.
RepositoryException
- if a repository error occurs.public void registerNodeTypes(Collection ntDefs) throws InvalidNodeTypeDefException, RepositoryException
registerNodeType(NodeTypeDef)
except
that a collection of NodeTypeDef
s is registered instead of
just one.
This method can be used to register a set of node types that have
dependencies on each other.
ntDefs
- a collection of NodeTypeDef objects
- Throws:
InvalidNodeTypeDefException
- if the given node type definition is invalid.
RepositoryException
- if a repository error occurs.
public void unregisterNodeTypes(Collection ntNames) throws NoSuchNodeTypeException, RepositoryException
unregisterNodeType(Name)
except
that a set of node types is unregistered instead of just one.
This method can be used to unregister a set of node types that depend on
each other.
ntNames
- a collection of Name
objects denoting the
node types to be unregistered
NoSuchNodeTypeException
- if any of the specified names does not
denote a registered node type.
RepositoryException
- if another error occursunregisterNodeType(Name)
public void unregisterNodeType(Name ntName) throws NoSuchNodeTypeException, RepositoryException
ntName
- name of the node type to be unregistered
NoSuchNodeTypeException
- if ntName
does not
denote a registered node type.
RepositoryException
- if another error occurs.unregisterNodeTypes(Collection)
public EffectiveNodeType reregisterNodeType(NodeTypeDef ntd) throws NoSuchNodeTypeException, InvalidNodeTypeDefException, RepositoryException
ntd
- node type definition
NoSuchNodeTypeException
- if ntd
refers to an
unknown node type
InvalidNodeTypeDefException
- if the node type definition
is invalid
RepositoryException
- if another error occurspublic EffectiveNodeType getEffectiveNodeType(Name ntName) throws NoSuchNodeTypeException
ntName
-
NoSuchNodeTypeException
public EffectiveNodeType getEffectiveNodeType(Name[] ntNames) throws NodeTypeConflictException, NoSuchNodeTypeException
ntNames
-
NodeTypeConflictException
NoSuchNodeTypeException
public Set getDependentNodeTypes(Name nodeTypeName) throws NoSuchNodeTypeException
nodeTypeName
- node type name
Name
s
NoSuchNodeTypeException
public NodeTypeDef getNodeTypeDef(Name nodeTypeName) throws NoSuchNodeTypeException
nodeTypeName
- name of node type whose definition should be returned.
NoSuchNodeTypeException
- if a node type with the given name
does not existpublic boolean isRegistered(Name nodeTypeName)
nodeTypeName
-
true
if the specified node type is registered;
false
otherwise.public boolean isBuiltIn(Name nodeTypeName)
nodeTypeName
-
true
if the specified node type is built-in;
false
otherwise.public NodeDef getNodeDef(NodeDefId id)
id
-
public PropDef getPropDef(PropDefId id)
id
-
public void addListener(NodeTypeRegistryListener listener)
NodeTypeRegistryListener
listener
- the new listener to be informed on (un)registration
of node typespublic void removeListener(NodeTypeRegistryListener listener)
NodeTypeRegistryListener
listener
- an existing listenerpublic void dump(PrintStream ps)
dump
in interface Dumpable
ps
- stream to dump state topublic void externalRegistered(Collection ntDefs) throws RepositoryException, InvalidNodeTypeDefException
externalRegistered
in interface NodeTypeEventListener
ntDefs
- node type definitions
RepositoryException
- if an error occurs
InvalidNodeTypeDefException
- if the node type definition is invalidpublic void externalReregistered(NodeTypeDef ntDef) throws NoSuchNodeTypeException, InvalidNodeTypeDefException, RepositoryException
externalReregistered
in interface NodeTypeEventListener
ntDef
- node type definition
NoSuchNodeTypeException
- if the node type had not yet been registered
InvalidNodeTypeDefException
- if the node type definition is invalid
RepositoryException
- if an error occurspublic void externalUnregistered(Collection ntNames) throws RepositoryException, NoSuchNodeTypeException
externalUnregistered
in interface NodeTypeEventListener
ntNames
- node type qnames
RepositoryException
- if an error occurs
NoSuchNodeTypeException
- if a node type is already unregisteredprotected void loadBuiltInNodeTypeDefs(NodeTypeDefStore store) throws RepositoryException
store
.
This method may be overridden by extensions of this class; It must
only be called once and only from within the constructor though.
store
- The NodeTypeDefStore
into which the node type
definitions are loaded.
RepositoryException
- If an error occurrs while loading the
built-in node type definitions.protected void loadCustomNodeTypeDefs(NodeTypeDefStore store) throws RepositoryException
store
.
This method may be overridden by extensions of this class; It must
only be called once and only from within the constructor though.
store
- The NodeTypeDefStore
into which the node type
definitions are loaded.
RepositoryException
- If an error occurrs while loading the
custom node type definitions.protected void persistCustomNodeTypeDefs(NodeTypeDefStore store) throws RepositoryException
store
.
store
- The NodeTypeDefStore
containing the definitions to
be persisted.
RepositoryException
- If an error occurs while persisting the
custom node type definitions.protected void checkForConflictingContent(NodeTypeDef ntd) throws RepositoryException
RepositoryException
.
TODO
ntd
- The node type definition replacing the former node type
definition of the same name.
RepositoryException
- If there is conflicting content or if the
check failed for some other reason.protected void checkForReferencesInContent(Name nodeTypeName) throws RepositoryException
RepositoryException
.
TODO:
nodeTypeName
- The name of the node type to be checked.
RepositoryException
- If the specified node type is currently
being referenced or if the check failed for
some other reason.public NodeDef getRootNodeDef()
public void setEventChannel(NodeTypeEventChannel eventChannel)
eventChannel
- event channel
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |