org.alfresco.cmis.dictionary
Class CMISAbstractTypeDefinition

java.lang.Object
  extended by org.alfresco.cmis.dictionary.CMISAbstractTypeDefinition
All Implemented Interfaces:
java.io.Serializable, CMISTypeDefinition
Direct Known Subclasses:
CMISDocumentTypeDefinition, CMISFolderTypeDefinition, CMISObjectTypeDefinition, CMISPolicyTypeDefinition, CMISRelationshipTypeDefinition

public abstract class CMISAbstractTypeDefinition
extends java.lang.Object
implements CMISTypeDefinition, java.io.Serializable

CMIS Object Type Definition

See Also:
Serialized Form

Field Summary
protected  java.util.Map actionEvaluators
           
protected  org.alfresco.service.cmr.dictionary.ClassDefinition cmisClassDef
           
protected  java.lang.Boolean controllableACL
           
protected  java.lang.Boolean controllablePolicy
           
protected  java.lang.Boolean creatable
           
protected  java.lang.String description
           
protected  java.lang.String displayName
           
protected  java.lang.Boolean fullTextIndexed
           
protected  java.lang.Boolean includedInSuperTypeQuery
           
protected  java.util.Map inheritedProperties
           
protected  CMISAbstractTypeDefinition internalParentType
           
protected  java.lang.Boolean isPublic
           
protected static org.apache.commons.logging.Log logger
           
protected  CMISTypeId objectTypeId
           
protected  java.lang.String objectTypeQueryName
           
protected  java.util.Map ownedProperties
           
protected  CMISTypeDefinition parentType
           
protected  CMISTypeId parentTypeId
           
protected  java.util.Map properties
           
protected  java.lang.Boolean queryable
           
protected  CMISTypeDefinition rootType
           
protected  java.util.Collection subTypeIds
           
protected  java.util.Collection subTypes
           
 
Constructor Summary
CMISAbstractTypeDefinition()
           
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 java.util.Map getActionEvaluators()
          Gets the Action evaluators for this type
 java.util.Collection getAllowedSourceTypes()
          For an association, get the collection of valid source types.
 java.util.Collection getAllowedTargetTypes()
          For an association, get the collection of valid target types.
 CMISTypeDefinition getBaseType()
          Get the base type
 CMISContentStreamAllowedEnum getContentStreamAllowed()
          Is a content stream allowed for this type? It may be disallowed, optional or mandatory.
 java.lang.String getDescription()
          Get the description for the type
 java.lang.String getDisplayName()
          Get the display name for the type.
 CMISAbstractTypeDefinition getInternalParentType()
          Get internal parent type
 java.util.Map getOwnedPropertyDefinitions()
          Gets the property definitions owned by this type
 CMISTypeDefinition getParentType()
          Get the type for the parent
 java.util.Map getPropertyDefinitions()
          Gets the property definitions for this type (owned and inherited)
 java.lang.String getQueryName()
          Get the table name used for queries against the type.
 java.util.Collection getSubTypes(boolean includeDescendants)
          Get the sub-types
 CMISTypeId getTypeId()
          Get the unique identifier for the type
 int hashCode()
           
 boolean isControllableACL()
          Are objects of this type controllable via ACLs.
 boolean isControllablePolicy()
          Are objects of this type controllable via Policies.
 boolean isCreatable()
          Can objects of this type be created?
 boolean isFileable()
          Are objects of this type fileable?
 boolean isFullTextIndexed()
          Is the type full text indexed for querying via CONTAINS()
 boolean isIncludedInSuperTypeQuery()
          Are objects of this type included in super type queries
 boolean isPublic()
           
 boolean isQueryable()
          Is this type queryable? If not, the type may not appear in the FROM clause of a query.
 boolean isVersionable()
          Is this type versionable? If true this implies all instances of the type are versionable.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected static final org.apache.commons.logging.Log logger

isPublic

protected java.lang.Boolean isPublic

cmisClassDef

protected org.alfresco.service.cmr.dictionary.ClassDefinition cmisClassDef

objectTypeId

protected CMISTypeId objectTypeId

objectTypeQueryName

protected java.lang.String objectTypeQueryName

displayName

protected java.lang.String displayName

parentTypeId

protected CMISTypeId parentTypeId

parentType

protected CMISTypeDefinition parentType

internalParentType

protected CMISAbstractTypeDefinition internalParentType

rootType

protected CMISTypeDefinition rootType

description

protected java.lang.String description

creatable

protected java.lang.Boolean creatable

queryable

protected java.lang.Boolean queryable

fullTextIndexed

protected java.lang.Boolean fullTextIndexed

controllablePolicy

protected java.lang.Boolean controllablePolicy

controllableACL

protected java.lang.Boolean controllableACL

includedInSuperTypeQuery

protected java.lang.Boolean includedInSuperTypeQuery

subTypeIds

protected java.util.Collection subTypeIds

subTypes

protected java.util.Collection subTypes

properties

protected java.util.Map properties

inheritedProperties

protected java.util.Map inheritedProperties

ownedProperties

protected java.util.Map ownedProperties

actionEvaluators

protected java.util.Map actionEvaluators
Constructor Detail

CMISAbstractTypeDefinition

public CMISAbstractTypeDefinition()
Method Detail

getInternalParentType

public CMISAbstractTypeDefinition getInternalParentType()
Get internal parent type

Returns:

isPublic

public boolean isPublic()
Specified by:
isPublic in interface CMISTypeDefinition
Returns:
true => type definition is for public consumption

getTypeId

public CMISTypeId getTypeId()
Description copied from interface: CMISTypeDefinition
Get the unique identifier for the type

Specified by:
getTypeId in interface CMISTypeDefinition
Returns:
- the type id

getQueryName

public java.lang.String getQueryName()
Description copied from interface: CMISTypeDefinition
Get the table name used for queries against the type. This is also a unique identifier for the type. The string conforms to SQL table naming conventions. TODO: Should we impose a maximum length and if so how do we avoid collisions from truncations?

Specified by:
getQueryName in interface CMISTypeDefinition
Returns:
the sql table name

getDisplayName

public java.lang.String getDisplayName()
Description copied from interface: CMISTypeDefinition
Get the display name for the type.

Specified by:
getDisplayName in interface CMISTypeDefinition
Returns:
- the display name

getParentType

public CMISTypeDefinition getParentType()
Description copied from interface: CMISTypeDefinition
Get the type for the parent

Specified by:
getParentType in interface CMISTypeDefinition
Returns:
- the parent type id

getBaseType

public CMISTypeDefinition getBaseType()
Description copied from interface: CMISTypeDefinition
Get the base type

Specified by:
getBaseType in interface CMISTypeDefinition
Returns:

getSubTypes

public java.util.Collection getSubTypes(boolean includeDescendants)
Description copied from interface: CMISTypeDefinition
Get the sub-types

Specified by:
getSubTypes in interface CMISTypeDefinition
Returns:

getDescription

public java.lang.String getDescription()
Description copied from interface: CMISTypeDefinition
Get the description for the type

Specified by:
getDescription in interface CMISTypeDefinition
Returns:
- the description

isCreatable

public boolean isCreatable()
Description copied from interface: CMISTypeDefinition
Can objects of this type be created?

Specified by:
isCreatable in interface CMISTypeDefinition
Returns:

isQueryable

public boolean isQueryable()
Description copied from interface: CMISTypeDefinition
Is this type queryable? If not, the type may not appear in the FROM clause of a query. This property of the type is not inherited in the type hierarchy. It is set on each type.

Specified by:
isQueryable in interface CMISTypeDefinition
Returns:
true if queryable

isFullTextIndexed

public boolean isFullTextIndexed()
Description copied from interface: CMISTypeDefinition
Is the type full text indexed for querying via CONTAINS()

Specified by:
isFullTextIndexed in interface CMISTypeDefinition
Returns:

isControllablePolicy

public boolean isControllablePolicy()
Description copied from interface: CMISTypeDefinition
Are objects of this type controllable via Policies.

Specified by:
isControllablePolicy in interface CMISTypeDefinition
Returns:

isControllableACL

public boolean isControllableACL()
Description copied from interface: CMISTypeDefinition
Are objects of this type controllable via ACLs.

Specified by:
isControllableACL in interface CMISTypeDefinition
Returns:

isIncludedInSuperTypeQuery

public boolean isIncludedInSuperTypeQuery()
Description copied from interface: CMISTypeDefinition
Are objects of this type included in super type queries

Specified by:
isIncludedInSuperTypeQuery in interface CMISTypeDefinition
Returns:

getPropertyDefinitions

public java.util.Map getPropertyDefinitions()
Description copied from interface: CMISTypeDefinition
Gets the property definitions for this type (owned and inherited)

Specified by:
getPropertyDefinitions in interface CMISTypeDefinition
Returns:
property definitions

getOwnedPropertyDefinitions

public java.util.Map getOwnedPropertyDefinitions()
Description copied from interface: CMISTypeDefinition
Gets the property definitions owned by this type

Specified by:
getOwnedPropertyDefinitions in interface CMISTypeDefinition
Returns:

getActionEvaluators

public java.util.Map getActionEvaluators()
Description copied from interface: CMISTypeDefinition
Gets the Action evaluators for this type

Specified by:
getActionEvaluators in interface CMISTypeDefinition
Returns:

isFileable

public boolean isFileable()
Description copied from interface: CMISTypeDefinition
Are objects of this type fileable?

Specified by:
isFileable in interface CMISTypeDefinition
Returns:

isVersionable

public boolean isVersionable()
Description copied from interface: CMISTypeDefinition
Is this type versionable? If true this implies all instances of the type are versionable.

Specified by:
isVersionable in interface CMISTypeDefinition
Returns:
true if versionable

getContentStreamAllowed

public CMISContentStreamAllowedEnum getContentStreamAllowed()
Description copied from interface: CMISTypeDefinition
Is a content stream allowed for this type? It may be disallowed, optional or mandatory.

Specified by:
getContentStreamAllowed in interface CMISTypeDefinition
Returns:

getAllowedSourceTypes

public java.util.Collection getAllowedSourceTypes()
Description copied from interface: CMISTypeDefinition
For an association, get the collection of valid source types. For non-associations the collection will be empty.

Specified by:
getAllowedSourceTypes in interface CMISTypeDefinition
Returns:

getAllowedTargetTypes

public java.util.Collection getAllowedTargetTypes()
Description copied from interface: CMISTypeDefinition
For an association, get the collection of valid target types. For non-associations the collection will be empty.

Specified by:
getAllowedTargetTypes in interface CMISTypeDefinition
Returns:

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object


Copyright © 2005 - 2010 Alfresco Software, Inc. All Rights Reserved.