atg.repository.dp
Class ChildFoldersPropertyDescriptor

java.lang.Object
  extended by java.beans.FeatureDescriptor
      extended by atg.beans.SerializableFeatureDescriptor
          extended by atg.beans.DynamicPropertyDescriptor
              extended by atg.repository.RepositoryPropertyDescriptor
                  extended by atg.adapter.gsa.GSAPropertyDescriptor
                      extended by atg.repository.dp.ChildFoldersPropertyDescriptor
All Implemented Interfaces:
atg.adapter.gsa.Constants, java.io.Serializable, java.lang.Cloneable, java.lang.Comparable

public class ChildFoldersPropertyDescriptor
extends GSAPropertyDescriptor

This custom property descriptor gives the List of child folders for the folder item Contains special handling for special (My Searches and Shared Searches) folders

See Also:
Serialized Form

Field Summary
static java.lang.String CLASS_VERSION
           
static SearchTestingPropertyManager sPropertyManager
           
 
Fields inherited from class atg.adapter.gsa.GSAPropertyDescriptor
ARRAY, BIG_STRING, BINARY, BOOLEAN, BYTE, DATE, DOUBLE, ENUMERATED, ENUMERATED_STRING, FLOAT, GSAID, INT, INVALID_DATA_TYPE, LIST, LONG, MAP, mMapSub, mResultSetGetters, SET, SHORT, STRING, TIMESTAMP
 
Fields inherited from class atg.repository.RepositoryPropertyDescriptor
EMPTY_LIST, EMPTY_MAP, EMPTY_SET, FOREIGN_REPOSITORY_NAME, FOREIGN_REPOSITORY_PATH, mCollectionOrMap
 
Fields inherited from class atg.beans.DynamicPropertyDescriptor
PORTABLE_VALUE_KEY
 
Fields inherited from class atg.beans.SerializableFeatureDescriptor
BUNDLE_ATTRIBUTE_NAME, LOCALE_ATTRIBUTE_NAME
 
Fields inherited from interface atg.adapter.gsa.Constants
ATTR_CASCADE_DELETE_ORDER, ATTR_CSW_PROPERTIES, ATTR_CSW_QUERIES, ATTR_CURRENT_ITEM_CACHE_SIZE, ATTR_CURRENT_ITEM_CACHE_TIMEOUT, ATTR_DEFAULT_UNCACHED_ITEM_QUERIES, ATTR_HEAD_OF_LINE_CACHE_SIZE, ATTR_HEAD_OF_LINE_CACHE_TIMEOUT, ATTR_LOADING_STRATEGY, ATTR_SPLIT_QUERIES, ATTR_TEXT_HANDLE_COLUMN, ATTR_TEXT_INDEX_TABLE, ATTR_UPDATE_LAST_MODIFIED, CASCADE_DELETE_AFTER_AUX_BEFORE_PRI, CASCADE_DELETE_FIRST, CASCADE_DELETE_LAST, CASCADE_DELETE_ORDER_NAMES, DEFAULT_EVENT_SERVER, DEFAULT_GSA_CACHE_CLIENT_MANAGER, DEFAULT_INVALIDATOR_SERVICE, ERR_ADD_MISSING_PROPERTIES, ERR_ADD_NON_TRANSIENT, ERR_ARGS_FOR_NON_PARAMETER_QUERY, ERR_BAD_EVENT_DATA, ERR_BAD_TABLE, ERR_CACHE_LOCALITY_MODE_CONFLICT, ERR_CIRCULAR_REFERENCE, ERR_CLASS_NOT_FOUND, ERR_COMPARE_MULTI, ERR_COMPARE_NONCOMPARABLE, ERR_CONTENT_PROPERTIES_NOT_DEFINED, ERR_COULD_NOT_UNSUBSCRIBE, ERR_DEPENDENT_PROP_NOT_EXISTS, ERR_DEPENDENT_PROP_NULL, ERR_DS_PREPARE, ERR_DS_SWITCH, ERR_DUPLICATES, ERR_FOLDER_PROPERTIES_NOT_DEFINED, ERR_HANDLING_INVALIDATE_CACHE_ENTRY, ERR_ID_SPACE_CONFIGURATION, ERR_ILLEGAL_PARAM_TYPE, ERR_INITIALIZING_ID_GENERATOR, ERR_INVALID_COMPARISON_QUERY, ERR_INVALID_DATA_TYPE_NAME, ERR_INVALID_ITEM, ERR_INVALID_ITEM_DESCRIPTOR_NAME, ERR_INVALID_KEY, ERR_INVALID_KEY_ELEMENT, ERR_INVALID_KEY_ENCODING, ERR_INVALID_KEY_VALUES, ERR_INVALID_LIST_INDEX, ERR_INVALID_PATTERNMATCH_QUERY, ERR_INVALID_PROPERTY, ERR_INVALID_QUERY, ERR_INVALID_QUERY_ELEMENT, ERR_INVALID_TEXT_SEARCH_QUERY, ERR_INVALID_TM_DS_COMBO, ERR_ITEM_NOT_EXIST, ERR_LOAD_COLUMN_INFO, ERR_MISSING_ID_SPACE, ERR_NO_ARGS_FOR_QUERY, ERR_NO_DATABASE_TABLE_INFO, ERR_NO_DATATYPE_FOR_PROPERTY, ERR_NO_DB2_HANDLE, ERR_NO_DEFAULT_SEARCH_PROPERTIES, ERR_NO_EVENT_SERVER, ERR_NO_IDS, ERR_NO_LOWER_FUNCTION, ERR_NO_PARAMETER_EXPRESSION, ERR_NO_PARSER, ERR_NO_PRIMARY_TABLE, ERR_NO_SUB_PROPERTIES, ERR_NO_SUBSCRIBER_ITEM_DESCRIPTOR, ERR_NO_SYB_TEXT_INDEX, ERR_NO_TEMPLATE_FILES, ERR_NO_TRANSACTION, ERR_NO_TRANSIENT_QUERIES, ERR_NOT_DISTRIBUTED_MODE, ERR_NULL_ARGUMENT, ERR_NULL_ID, ERR_NULL_ITEM, ERR_NULL_QUERY_OPTIONS, ERR_PARSING_TEMPLATE, ERR_PROCEDURE_HELPER_INIT, ERR_PROPERTY_NOT_QUERYABLE, ERR_RETURN_PROP_NOT_EXISTS, ERR_RETURN_PROP_NOT_GSA, ERR_RETURN_PROP_NOT_READ, ERR_RETURN_PROP_NULL, ERR_RQL_FILTER, ERR_SQL_STRING_NULL, ERR_SUB_TYPE_PROPERTY_ON_NON_ROOT_TYPE, ERR_TABLE_KEY_UNMATCHED, ERR_TRANSACTION, ERR_TYPE_MATCHING, ERR_UNABLE_TO_READ_TEMPLATE_FILE, ERR_UNKNOWN_EVENT_TYPE, ERR_VERSION_PROPERTY_INVALID_TYPE, ERR_VIEW_IS_TRANSIENT, ERR_WRONG_NUMBER_ARGS_FOR_QUERY, FTS_LANG_DB2, FTS_LANG_MSSQL, FTS_LANG_MSSQL_INLINE, FTS_LANG_ORACLE, FTS_LANG_SYBASE, INFO_STARTUP_BEGIN, INFO_STARTUP_END, ISOLATION_LEVEL_NAMES, LOADING_STRATEGY_DEFAULT, LOADING_STRATEGY_EAGER, LOADING_STRATEGY_LAZY, READ_COMMITTED, REPEATABLE_READ, REPOSITORY_COMPONENT_NAME, RESOURCE_BUNDLE_NAME, SERIALIZABLE, SUBSCRIBER_ADDRESS_PROPERTY, SUBSCRIBER_ITEM_DESCRIPTOR_NAME, SUBSCRIBER_ITEM_DESCRIPTOR_PROPERTY, SUBSCRIBER_PORT_PROPERTY, SUBSCRIBER_REPOSITORY_PROPERTY, WARN_PROBLEM_SENDING_EVENT, WARN_RETURN_PROP_MULTI, WARN_RETURN_PROP_TRANSIENT
 
Constructor Summary
ChildFoldersPropertyDescriptor()
          Constructs an instanceof ChildFoldersPropertyDescriptor
 
Method Summary
 Query getAppQuery(RepositoryItem pItem, QueryBuilder pBuilder)
          Returns additional query for application to allow repository to be split by app
 boolean getCascadeDelete()
           
 Query getMainQuery(RepositoryItem pItem, QueryBuilder pBuilder)
          Returns main query (child folders of the given folder)
 Query getMyQuery(QueryBuilder pBuilder)
          Returns additional query for shared folders (folders whose owner equals to the profile from current request)
 java.lang.String getProfilePath()
           
 java.lang.Object getPropertyValue(RepositoryItemImpl pItem, java.lang.Object pValue)
          This method is called to retrieve a read-only value for this property.
 
Methods inherited from class atg.adapter.gsa.GSAPropertyDescriptor
compareTo, compareTo, createDBPropertyEditor, equals, getAllowNullValues, getCacheMode, getCacheReferencesById, getColumnCount, getColumnNames, getComponentPropertyType, getDataTypeByClass, getDataTypeByName, getDataTypeClass, getDataTypeName, getDataTypeNameFromClass, getDataTypes, getErrorCode, getGroup, getGroupProperties, getHandleColumn, getId, getIdPartIndices, getJDBCColumnLengths, getJDBCPrimaryKeyNames, getJDBCTypeByName, getJDBCTypeName, getJDBCTypes, getJDBCTypesKnown, getLoadingStrategy, getLocalizedResourceBundle, getManyToOneIdProperty, getManyToOneMultiProperty, getReciprocalProperty, getRemoveNullValues, getRepository, getResourceBundle, getResultSetGetters, getReverseReferenceProperties, getTable, getTextIndexTable, getTypeName, getTypeSQL, getUnmodifiableDefaultValue, getValue, hashCode, hasReciprocalProperty, isComposite, isDefaultProperty, isGSAId, isInherited, isInternallyWritable, isJDBCColumnLengthsKnown, isJDBCPrimaryKey, isJDBCPrimaryKeyNamesKnown, isJDBCTypesKnown, isLoggingDebug, isLoggingError, isLoggingWarning, isMapSub, isMultiValued, isProhibitDuplicates, isValidValue, isVersionable, logDebug, logDebug, logError, logError, logWarning, rawToReal, rawToReal, rawToReal, realToRaw, setAllowNullValues, setCacheMode, setCacheReferencesById, setCascadeDelete, setCascadeInsert, setCascadeUpdate, setColumnNames, setComponentPropertyType, setDataTypes, setGroup, setGroupProperties, setHandleColumn, setId, setIdPartIndices, setInherited, setInternallyWritable, setJDBCColumnLengths, setJDBCColumnLengthsKnown, setJDBCPrimaryKey, setJDBCPrimaryKeyNames, setJDBCPrimaryKeyNamesKnown, setJDBCTypes, setJDBCTypesByName, setJDBCTypesKnown, setLoadingStrategy, setManyToOneIdProperty, setManyToOneMultiProperty, setProhibitDuplicates, setPropertyValue, setRemoveNullValues, setTable, setTextIndexTable, setValue, toGSAId, toGSAId, toString, updatePropertyDescriptor
 
Methods inherited from class atg.repository.RepositoryPropertyDescriptor
clone, createPropertyDescriptorFromType, getCascadeInsert, getCascadeUpdate, getComponentItemDescriptor, getComponentPropertyBeanInfo, getDefaultValue, getDefaultValueString, getItemDescriptor, getPropertyBeanInfo, getPropertyItemDescriptor, getResourceBundleName, isAssignableFrom, isCacheable, isCollectionOrMap, isDerived, isIdProperty, isIgnoreNullValue, isPersistent, isQueryable, isVersionableSet, registerPropertyDescriptorClass, setCacheable, setComponentItemDescriptor, setDefaultValue, setDefaultValueString, setDerived, setIdProperty, setIgnoreNullValue, setItemDescriptor, setLoggingDebug, setPersistent, setPropertyItemDescriptor, setPropertyType, setQueryable, setResourceBundleName, setVersionable
 
Methods inherited from class atg.beans.DynamicPropertyDescriptor
createLocalePropertyEditor, createLocalePropertyEditor, createPropertyEditor, getPropertyEditorClass, getPropertyType, getUIPropertyEditor, isReadable, isRequired, isWritable, setPropertyEditorClass, setReadable, setRequired, setWritable
 
Methods inherited from class atg.beans.SerializableFeatureDescriptor
copyFeatureDescriptor, getDisplayName, getDisplayNameResource, getDisplaySortString, getShortDescription, getShortDescriptionResource, getSortString, setDisplayNameResource, setShortDescriptionResource
 
Methods inherited from class java.beans.FeatureDescriptor
attributeNames, getName, isExpert, isHidden, isPreferred, setDisplayName, setExpert, setHidden, setName, setPreferred, setShortDescription
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

CLASS_VERSION

public static final java.lang.String CLASS_VERSION
See Also:
Constant Field Values

sPropertyManager

public static SearchTestingPropertyManager sPropertyManager
Constructor Detail

ChildFoldersPropertyDescriptor

public ChildFoldersPropertyDescriptor()
Constructs an instanceof ChildFoldersPropertyDescriptor

Method Detail

getProfilePath

public java.lang.String getProfilePath()

getMainQuery

public Query getMainQuery(RepositoryItem pItem,
                          QueryBuilder pBuilder)
                   throws RepositoryException
Returns main query (child folders of the given folder)

Parameters:
pItem - folder repository item
pBuilder - Query Builder
Returns:
main query (child folders of the given folder)
Throws:
RepositoryException - repository exception from creating queries

getMyQuery

public Query getMyQuery(QueryBuilder pBuilder)
                 throws RepositoryException
Returns additional query for shared folders (folders whose owner equals to the profile from current request)

Parameters:
pBuilder - Query Builder
Returns:
additional query for shared folders (folders whose owner equals to the profile from current request)
Throws:
RepositoryException - repository exception from creating queries

getAppQuery

public Query getAppQuery(RepositoryItem pItem,
                         QueryBuilder pBuilder)
                  throws RepositoryException
Returns additional query for application to allow repository to be split by app

Parameters:
pBuilder - Query Builder
Returns:
additional query for application
Throws:
RepositoryException - repository exception from creating queries

getPropertyValue

public java.lang.Object getPropertyValue(RepositoryItemImpl pItem,
                                         java.lang.Object pValue)
Description copied from class: GSAPropertyDescriptor
This method is called to retrieve a read-only value for this property. Once a repository has computed the value it would like to return for this property, this property descriptor gets a chance to modify it based on how the property is defined. For example, if null is to be returned, we return the default value.

Overrides:
getPropertyValue in class GSAPropertyDescriptor
Parameters:
pItem - RepositoryItemImpl
pValue -
Returns:
Set of searchTestFolder repository items
See Also:
This implementation checks the folder type and if it is a normal folder then the child folders are retrieved by executing the query 'folders whose parentFolder is this'. If the folder type is mySearches then the normal query is AND'd with 'and whose ownerId is ' If the folder type is sharedSearches then the normal query is AND'd with 'and whose ownerId is null'

getCascadeDelete

public boolean getCascadeDelete()
Overrides:
getCascadeDelete in class RepositoryPropertyDescriptor
Returns:
The value of the property CascadeDelete.