@Immutable public class NodeTypeSchemata extends Object implements Schemata
Schemata
implementation that is constructed from the NodeType
s and PropertyDefinition
s contained
within a RepositoryNodeTypeManager
. The resulting Schemata.Table
s will never
change, so the RepositoryNodeTypeManager
must replace it's cached instance whenever the node types change.Modifier and Type | Class and Description |
---|---|
protected class |
NodeTypeSchemata.SessionSchemata
Implementation class that builds the tables lazily.
|
Schemata.Column, Schemata.Key, Schemata.Table, Schemata.View
Modifier and Type | Field and Description |
---|---|
protected static boolean |
DEFAULT_CAN_CONTAIN_REFERENCES |
protected static boolean |
DEFAULT_FULL_TEXT_SEARCHABLE |
Modifier and Type | Method and Description |
---|---|
protected void |
addAllNodesTable(ImmutableSchemata.Builder builder,
IndexRules.Builder indexRuleBuilder,
ExecutionContext context,
List<org.modeshape.jcr.JcrPropertyDefinition> additionalProperties) |
protected void |
addIndexRule(IndexRules.Builder builder,
org.modeshape.jcr.JcrPropertyDefinition defn,
String type,
TypeSystem typeSystem,
boolean canBeReference,
boolean isStrongReference)
Add an index rule for the given property definition and the type in the
TypeSystem . |
protected void |
addView(ImmutableSchemata.Builder builder,
ExecutionContext context,
org.modeshape.jcr.JcrNodeType nodeType) |
IndexRules |
getIndexRules()
Get the index rules ...
|
protected org.modeshape.jcr.JcrNodeType |
getNodeType(Name nodeTypeName) |
Schemata |
getSchemataForSession(JcrSession session)
Get a schemata instance that works with the supplied session and that uses the session-specific namespace mappings.
|
Schemata.Table |
getTable(SelectorName name)
Get the information for the table or view with the supplied name within this schema.
|
protected Set<Operator> |
operatorsFor(org.modeshape.jcr.JcrPropertyDefinition defn) |
protected org.modeshape.jcr.JcrPropertyDefinition |
pseudoProperty(ExecutionContext context,
Name name,
int propertyType) |
String |
toString() |
protected static final boolean DEFAULT_CAN_CONTAIN_REFERENCES
protected static final boolean DEFAULT_FULL_TEXT_SEARCHABLE
protected org.modeshape.jcr.JcrPropertyDefinition pseudoProperty(ExecutionContext context, Name name, int propertyType)
public IndexRules getIndexRules()
protected org.modeshape.jcr.JcrNodeType getNodeType(Name nodeTypeName)
protected final void addAllNodesTable(ImmutableSchemata.Builder builder, IndexRules.Builder indexRuleBuilder, ExecutionContext context, List<org.modeshape.jcr.JcrPropertyDefinition> additionalProperties)
protected final void addIndexRule(IndexRules.Builder builder, org.modeshape.jcr.JcrPropertyDefinition defn, String type, TypeSystem typeSystem, boolean canBeReference, boolean isStrongReference)
TypeSystem
.builder
- the index rule builder; never nulldefn
- the property definition; never nulltype
- the TypeSystem type, which may be a more general type than dictated by the definition, since multiple
definitions with the same name require the index rule to use the common base type; never nulltypeSystem
- the type system; never nullcanBeReference
- true if the property described the rule can hold reference values, or false otherwiseisStrongReference
- true if the index rule can be a reference and it should be included in referential integrity
checksprotected final void addView(ImmutableSchemata.Builder builder, ExecutionContext context, org.modeshape.jcr.JcrNodeType nodeType)
public Schemata.Table getTable(SelectorName name)
Schemata
The resulting definition is immutable.
public Schemata getSchemataForSession(JcrSession session)
session
- the session; may not be nullCopyright © 2008-2014 JBoss, a division of Red Hat. All Rights Reserved.