org.alfresco.repo.domain.avm
Class AbstractAVMStoreDAOImpl

java.lang.Object
  extended by org.alfresco.repo.domain.avm.AbstractAVMStoreDAOImpl
All Implemented Interfaces:
AVMStoreDAO
Direct Known Subclasses:
AVMStoreDAOImpl

public abstract class AbstractAVMStoreDAOImpl
extends java.lang.Object
implements AVMStoreDAO

Abstract implementation for AVMStore DAO.

This provides basic services such as caching but defers to the underlying implementation for CRUD operations.

Since:
3.2

Constructor Summary
AbstractAVMStoreDAOImpl()
          Default constructor.
 
Method Summary
 void clearStoreEntityCache()
          
 void createOrUpdateStoreProperty(long storeId, org.alfresco.service.namespace.QName qname, PropertyValue value)
          
 AVMStoreEntity createStore(java.lang.String name)
          Create a new AVM store
protected abstract  AVMStoreEntity createStoreEntity(AVMStoreEntity storeEntity)
           
 void deleteStore(long storeId)
          Delete an existing AVM store
protected abstract  int deleteStoreEntity(long id)
           
 void deleteStoreProperties(long storeId)
          
 void deleteStoreProperty(long storeId, org.alfresco.service.namespace.QName qname)
          
protected abstract  int deleteStorePropertyEntities(long storeId)
           
protected abstract  int deleteStorePropertyEntity(long storeId, long qnameId)
           
protected abstract  java.util.List getAllStoreEntities()
           
 java.util.List getAllStores()
          Get all AVM stores
 AVMStoreEntity getStore(long storeId)
          Get an existing AVM store by Store ID
 AVMStoreEntity getStore(java.lang.String name)
          Get an existing AVM store by name
 AVMStoreEntity getStoreByRoot(long rootNodeId)
          Get an existing AVM store by Root Node ID
protected abstract  AVMStoreEntity getStoreEntity(long id)
           
protected abstract  AVMStoreEntity getStoreEntity(java.lang.String name)
           
protected abstract  AVMStoreEntity getStoreEntityByRoot(long rootNodeId)
           
 java.util.Map getStoreProperties(long storeId)
          
 java.util.Map getStorePropertiesByKeyPattern(java.lang.String uriPattern, java.lang.String localNamePattern)
          
 java.util.Map getStorePropertiesByStoreAndKeyPattern(long storeId, java.lang.String uriPattern, java.lang.String localNamePattern)
          
 PropertyValue getStoreProperty(long storeId, org.alfresco.service.namespace.QName qname)
          
protected abstract  java.util.List getStorePropertyEntities(long storeId)
           
protected abstract  java.util.List getStorePropertyEntitiesByKeyPattern(java.lang.String uriPattern, java.lang.String localNamePattern)
           
protected abstract  java.util.List getStorePropertyEntitiesByStoreAndKeyPattern(long storeId, java.lang.String uriPattern, java.lang.String localNamePattern)
           
protected abstract  AVMStorePropertyEntity getStorePropertyEntity(long storeId, long qnameId)
           
protected abstract  void insertStorePropertyEntity(AVMStorePropertyEntity propEntity)
           
 void setAvmStoreCache(org.alfresco.repo.cache.SimpleCache avmStoreCache)
          Set the cache to use for avm_stores lookups (optional).
 void setAvmStorePropertyCache(org.alfresco.repo.cache.SimpleCache avmStorePropCache)
          Set the cache to use for avm_store_properties lookups (optional).
 void setQnameDAO(QNameDAO qnameDAO)
           
 void updateStore(AVMStoreEntity storeEntity)
          Update an existing AVM store
protected abstract  int updateStoreEntity(AVMStoreEntity storeEntity)
           
protected abstract  int updateStorePropertyEntity(AVMStorePropertyEntity propEntity)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractAVMStoreDAOImpl

public AbstractAVMStoreDAOImpl()
Default constructor.

This sets up the DAO accessors to bypass any caching to handle the case where the caches are not supplied in the setters.

Method Detail

setAvmStoreCache

public void setAvmStoreCache(org.alfresco.repo.cache.SimpleCache avmStoreCache)
Set the cache to use for avm_stores lookups (optional).

Parameters:
avmStoreCache - the cache of IDs to AVMStoreEntities

setAvmStorePropertyCache

public void setAvmStorePropertyCache(org.alfresco.repo.cache.SimpleCache avmStorePropCache)
Set the cache to use for avm_store_properties lookups (optional).

Parameters:
avmStorePropCache - the cache of IDs to AVMStorePropertyEntities

setQnameDAO

public void setQnameDAO(QNameDAO qnameDAO)

createStore

public AVMStoreEntity createStore(java.lang.String name)
Create a new AVM store

Specified by:
createStore in interface AVMStoreDAO
Parameters:
name - the name
Returns:
the store (never null)

getStore

public AVMStoreEntity getStore(long storeId)
Get an existing AVM store by Store ID

Specified by:
getStore in interface AVMStoreDAO
Parameters:
storeId - the unique ID of the store entity
Returns:
the store (never null)

getStoreByRoot

public AVMStoreEntity getStoreByRoot(long rootNodeId)
Get an existing AVM store by Root Node ID

Specified by:
getStoreByRoot in interface AVMStoreDAO
Parameters:
rootNodeId - the unique ID of the root node entity
Returns:
the store (never null)

getStore

public AVMStoreEntity getStore(java.lang.String name)
Get an existing AVM store by name

Specified by:
getStore in interface AVMStoreDAO
Parameters:
name - the name to query for
Returns:
the store or null if it doesn't exist

getAllStores

public java.util.List getAllStores()
Get all AVM stores

Specified by:
getAllStores in interface AVMStoreDAO
Returns:
list of stores or empty if no stores (never null)

updateStore

public void updateStore(AVMStoreEntity storeEntity)
Update an existing AVM store

Specified by:
updateStore in interface AVMStoreDAO
Parameters:
storeEntity - the store

deleteStore

public void deleteStore(long storeId)
Delete an existing AVM store

Specified by:
deleteStore in interface AVMStoreDAO

clearStoreEntityCache

public void clearStoreEntityCache()

Specified by:
clearStoreEntityCache in interface AVMStoreDAO

getStoreEntity

protected abstract AVMStoreEntity getStoreEntity(long id)

getStoreEntity

protected abstract AVMStoreEntity getStoreEntity(java.lang.String name)

getStoreEntityByRoot

protected abstract AVMStoreEntity getStoreEntityByRoot(long rootNodeId)

getAllStoreEntities

protected abstract java.util.List getAllStoreEntities()

createStoreEntity

protected abstract AVMStoreEntity createStoreEntity(AVMStoreEntity storeEntity)

deleteStoreEntity

protected abstract int deleteStoreEntity(long id)

updateStoreEntity

protected abstract int updateStoreEntity(AVMStoreEntity storeEntity)

createOrUpdateStoreProperty

public void createOrUpdateStoreProperty(long storeId,
                                        org.alfresco.service.namespace.QName qname,
                                        PropertyValue value)

Specified by:
createOrUpdateStoreProperty in interface AVMStoreDAO

getStoreProperty

public PropertyValue getStoreProperty(long storeId,
                                      org.alfresco.service.namespace.QName qname)

Specified by:
getStoreProperty in interface AVMStoreDAO

getStoreProperties

public java.util.Map getStoreProperties(long storeId)

Specified by:
getStoreProperties in interface AVMStoreDAO

getStorePropertiesByKeyPattern

public java.util.Map getStorePropertiesByKeyPattern(java.lang.String uriPattern,
                                                    java.lang.String localNamePattern)

Specified by:
getStorePropertiesByKeyPattern in interface AVMStoreDAO

getStorePropertiesByStoreAndKeyPattern

public java.util.Map getStorePropertiesByStoreAndKeyPattern(long storeId,
                                                            java.lang.String uriPattern,
                                                            java.lang.String localNamePattern)

Specified by:
getStorePropertiesByStoreAndKeyPattern in interface AVMStoreDAO

deleteStoreProperty

public void deleteStoreProperty(long storeId,
                                org.alfresco.service.namespace.QName qname)

Specified by:
deleteStoreProperty in interface AVMStoreDAO

deleteStoreProperties

public void deleteStoreProperties(long storeId)

Specified by:
deleteStoreProperties in interface AVMStoreDAO

insertStorePropertyEntity

protected abstract void insertStorePropertyEntity(AVMStorePropertyEntity propEntity)

updateStorePropertyEntity

protected abstract int updateStorePropertyEntity(AVMStorePropertyEntity propEntity)

getStorePropertyEntity

protected abstract AVMStorePropertyEntity getStorePropertyEntity(long storeId,
                                                                 long qnameId)

getStorePropertyEntities

protected abstract java.util.List getStorePropertyEntities(long storeId)

getStorePropertyEntitiesByKeyPattern

protected abstract java.util.List getStorePropertyEntitiesByKeyPattern(java.lang.String uriPattern,
                                                                       java.lang.String localNamePattern)

getStorePropertyEntitiesByStoreAndKeyPattern

protected abstract java.util.List getStorePropertyEntitiesByStoreAndKeyPattern(long storeId,
                                                                               java.lang.String uriPattern,
                                                                               java.lang.String localNamePattern)

deleteStorePropertyEntity

protected abstract int deleteStorePropertyEntity(long storeId,
                                                 long qnameId)

deleteStorePropertyEntities

protected abstract int deleteStorePropertyEntities(long storeId)


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