Class AbstractStore<T>
- java.lang.Object
-
- org.wso2.carbon.mediation.initializer.persistence.AbstractStore<T>
-
- Type Parameters:
T
-
- Direct Known Subclasses:
APIStore
,EndpointStore
,EndpointTemplateStore
,EventSourceStore
,ExecutorStore
,ImportStore
,InboundStore
,LocalEntryStore
,MessageProcessorStore
,MessageStoreStore
,ProxyServiceStore
,SequenceStore
,StartupStore
,SynapseRegistryStore
,TemplateStore
public abstract class AbstractStore<T> extends Object
The abstract class which can be used to access a persistence storage of a specific type of mediation configuration elements. Implementations of this abstract class should ideally be parameterized to prevent it from handling more than one type of objects. This abstract class provides supports basic persistence activities of save and delete. Registry persistence activities can also be handled by this implementation if required.
-
-
Field Summary
Fields Modifier and Type Field Description protected String
configPath
protected org.apache.commons.logging.Log
log
protected AbstractRegistryStore
registryStore
protected org.apache.synapse.config.xml.MultiXMLConfigurationSerializer
serializer
-
Constructor Summary
Constructors Constructor Description AbstractStore(String configPath)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
delete(String name, String fileName, org.apache.synapse.config.SynapseConfiguration config)
protected abstract void
deleteFile(String fileName, org.apache.synapse.config.SynapseConfiguration config)
Delete the specified file from the persistence store.protected void
deleteFromRegistry(String name)
void
deleteItemFromRegistry(String name)
protected abstract String
getFileName(T obj)
Inspect the given object and find the file name to which it should be serialized toprotected abstract T
getObjectToPersist(String name, org.apache.synapse.config.SynapseConfiguration config)
Find the specified object from the SynaspeConfiguration to be saved to the persistence storeprotected void
handleException(String msg, Exception e)
void
save(String name, org.apache.synapse.config.SynapseConfiguration config)
void
saveItemToRegistry(String name, org.apache.synapse.config.SynapseConfiguration config)
protected abstract org.apache.axiom.om.OMElement
saveToFile(T obj, org.apache.synapse.config.SynapseConfiguration synapseConfig)
Serialize and save the given object to the local file systemprotected void
saveToRegistry(String name, org.apache.axiom.om.OMElement element, String fileName)
protected abstract org.apache.axiom.om.OMElement
serialize(T obj)
Serialize the given object into XML
-
-
-
Field Detail
-
log
protected org.apache.commons.logging.Log log
-
configPath
protected String configPath
-
registryStore
protected AbstractRegistryStore registryStore
-
serializer
protected org.apache.synapse.config.xml.MultiXMLConfigurationSerializer serializer
-
-
Constructor Detail
-
AbstractStore
public AbstractStore(String configPath)
-
-
Method Detail
-
save
public void save(String name, org.apache.synapse.config.SynapseConfiguration config)
-
delete
public void delete(String name, String fileName, org.apache.synapse.config.SynapseConfiguration config)
-
saveToFile
protected abstract org.apache.axiom.om.OMElement saveToFile(T obj, org.apache.synapse.config.SynapseConfiguration synapseConfig)
Serialize and save the given object to the local file system- Parameters:
obj
- Object to be savedsynapseConfig
- synapse configuration- Returns:
- The OMElement generated as a result of the serialization or null
-
deleteFile
protected abstract void deleteFile(String fileName, org.apache.synapse.config.SynapseConfiguration config)
Delete the specified file from the persistence store. File name is provided as an argument and it is up to the implementation to the calculate the exact file path using the file name and other available data.- Parameters:
fileName
- Name of the file to be deletedconfig
- synapse configuration
-
getObjectToPersist
protected abstract T getObjectToPersist(String name, org.apache.synapse.config.SynapseConfiguration config)
Find the specified object from the SynaspeConfiguration to be saved to the persistence store- Parameters:
name
- Name or unique ID of the objectconfig
- Current SynapseConfiguration- Returns:
- The named object or null if such an object doesn't exist
-
getFileName
protected abstract String getFileName(T obj)
Inspect the given object and find the file name to which it should be serialized to- Parameters:
obj
- The object to be inspected- Returns:
- A file name as a string or null if no file name is specified
-
serialize
protected abstract org.apache.axiom.om.OMElement serialize(T obj)
Serialize the given object into XML- Parameters:
obj
- The object to be serialized- Returns:
- The resulting OMElement
-
saveItemToRegistry
public void saveItemToRegistry(String name, org.apache.synapse.config.SynapseConfiguration config)
-
deleteItemFromRegistry
public void deleteItemFromRegistry(String name)
-
saveToRegistry
protected void saveToRegistry(String name, org.apache.axiom.om.OMElement element, String fileName)
-
deleteFromRegistry
protected void deleteFromRegistry(String name)
-
-