org.apache.jackrabbit.spi.commons
Class QPropertyDefinitionImpl

java.lang.Object
  extended by org.apache.jackrabbit.spi.commons.QItemDefinitionImpl
      extended by org.apache.jackrabbit.spi.commons.QPropertyDefinitionImpl
All Implemented Interfaces:
Serializable, QItemDefinition, QPropertyDefinition

public class QPropertyDefinitionImpl
extends QItemDefinitionImpl
implements QPropertyDefinition

QPropertyDefinitionImpl implements SPI property definition interface.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.apache.jackrabbit.spi.commons.QItemDefinitionImpl
hashCode
 
Fields inherited from interface org.apache.jackrabbit.spi.QPropertyDefinition
EMPTY_ARRAY
 
Constructor Summary
QPropertyDefinitionImpl(Name name, Name declaringNodeType, boolean isAutoCreated, boolean isMandatory, int onParentVersion, boolean isProtected, QValue[] defaultValues, boolean isMultiple, int requiredType, QValueConstraint[] valueConstraints, String[] availableQueryOperators, boolean isFullTextSearchable, boolean isQueryOrderable)
          Creates a new serializable property definition.
QPropertyDefinitionImpl(PropertyDefinition propDef, NamePathResolver resolver, QValueFactory qValueFactory)
          Creates a new property definition based on propDef.
QPropertyDefinitionImpl(QPropertyDefinition propDef)
          Copy constructor.
 
Method Summary
 boolean definesNode()
          Determines whether this item definition defines a node.
 boolean equals(Object obj)
          Compares two property definitions for equality.
 String[] getAvailableQueryOperators()
          Returns the availabe query operators.
 QValue[] getDefaultValues()
          Returns the array of default values or null if no default values are defined.
 int getRequiredType()
          Returns the required type.
 QValueConstraint[] getValueConstraints()
          Returns the array of value constraints.
 int hashCode()
          Overrides QItemDefinitionImpl.hashCode().
 boolean isFullTextSearchable()
          Reports whether this property definition is full text searchable.
 boolean isMultiple()
          Reports whether this property can have multiple values.
 boolean isQueryOrderable()
          Reports whether this property definition is query-orderable.
 
Methods inherited from class org.apache.jackrabbit.spi.commons.QItemDefinitionImpl
definesResidual, getDeclaringNodeType, getName, getOnParentVersion, isAutoCreated, isMandatory, isProtected
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.jackrabbit.spi.QItemDefinition
definesResidual, getDeclaringNodeType, getName, getOnParentVersion, isAutoCreated, isMandatory, isProtected
 

Constructor Detail

QPropertyDefinitionImpl

public QPropertyDefinitionImpl(QPropertyDefinition propDef)
Copy constructor.

Parameters:
propDef - some other property definition.

QPropertyDefinitionImpl

public QPropertyDefinitionImpl(Name name,
                               Name declaringNodeType,
                               boolean isAutoCreated,
                               boolean isMandatory,
                               int onParentVersion,
                               boolean isProtected,
                               QValue[] defaultValues,
                               boolean isMultiple,
                               int requiredType,
                               QValueConstraint[] valueConstraints,
                               String[] availableQueryOperators,
                               boolean isFullTextSearchable,
                               boolean isQueryOrderable)
Creates a new serializable property definition.

Parameters:
name - the name of the child item.
declaringNodeType - the delaring 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.
defaultValues - the default values or null if there are none.
isMultiple - if this property is multi-valued.
requiredType - the required type for this property.
valueConstraints - the value constraints for this property. If none exist an empty array must be passed.
availableQueryOperators - the available query operators
isFullTextSearchable - if this is fulltext searchable
isQueryOrderable - if this is queryable
Throws:
NullPointerException - if valueConstraints or availableQueryOperators is null.
Since:
JCR 2.0

QPropertyDefinitionImpl

public QPropertyDefinitionImpl(PropertyDefinition propDef,
                               NamePathResolver resolver,
                               QValueFactory qValueFactory)
                        throws RepositoryException
Creates a new property definition based on propDef.

Parameters:
propDef - the JCR property definition.
resolver - the name/path resolver of the session that provided the property definition.
qValueFactory - the QValue factory.
Throws:
RepositoryException - if an error occurs while reading from propDef.
Method Detail

getRequiredType

public int getRequiredType()
Returns the required type.

Specified by:
getRequiredType in interface QPropertyDefinition
Returns:
the required type.

getValueConstraints

public QValueConstraint[] getValueConstraints()
Returns the array of value constraints.

Specified by:
getValueConstraints in interface QPropertyDefinition
Returns:
the array of value constraints.

getDefaultValues

public QValue[] getDefaultValues()
Returns the array of default values or null if no default values are defined.

Specified by:
getDefaultValues in interface QPropertyDefinition
Returns:
the array of default values or null

isMultiple

public boolean isMultiple()
Reports whether this property can have multiple values.

Specified by:
isMultiple in interface QPropertyDefinition
Returns:
the 'multiple' flag.

getAvailableQueryOperators

public String[] getAvailableQueryOperators()
Returns the availabe query operators.

Specified by:
getAvailableQueryOperators in interface QPropertyDefinition
Returns:
the availabe query operators.

isFullTextSearchable

public boolean isFullTextSearchable()
Reports whether this property definition is full text searchable.

Specified by:
isFullTextSearchable in interface QPropertyDefinition
Returns:
true if this property definition is full text searchable.

isQueryOrderable

public boolean isQueryOrderable()
Reports whether this property definition is query-orderable.

Specified by:
isQueryOrderable in interface QPropertyDefinition
Returns:
true if this property definition is query-orderable.

definesNode

public boolean definesNode()
Determines whether this item definition defines a node.

Specified by:
definesNode in interface QItemDefinition
Returns:
always false

equals

public boolean equals(Object obj)
Compares two property definitions for equality. Returns true if the given object is a property definition and has the same attributes as this property definition.

Overrides:
equals in class QItemDefinitionImpl
Parameters:
obj - the object to compare this property definition with
Returns:
true if the object is equal to this property definition, false otherwise
See Also:
Object.equals(Object)

hashCode

public int hashCode()
Overrides QItemDefinitionImpl.hashCode().

Overrides:
hashCode in class QItemDefinitionImpl
Returns:
the hash code


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