pl.edu.agh.cast.data.persistence
Class AbstractPersistenceProviderDecorator

java.lang.Object
  extended by pl.edu.agh.cast.data.persistence.AbstractPersistenceProviderDecorator
All Implemented Interfaces:
IPersistenceProvider
Direct Known Subclasses:
ObservablePersistenceProvider

public abstract class AbstractPersistenceProviderDecorator
extends Object
implements IPersistenceProvider

An abstract implementation of persistence provider decorator. Its a convenience class for various decorators which only need to decorate a few methods.

Author:
AGH CAST Team

Constructor Summary
AbstractPersistenceProviderDecorator(IPersistenceProvider provider)
          Constructor.
 
Method Summary
 void destroy()
          Destroys the instance of IPersistenceProvider.
 String getConfig()
           
<T extends IDataSet<? extends IElement>>
T
getDataSet(DataSetDescriptor descriptor)
          Returns the data set described by given descriptor.
<T extends IDataSet<? extends IElement>>
T
getDataSet(UUID id)
          Returns the data set with given ID.
 DataSetDescriptor getDataSetDescriptor(UUID id)
          Returns the descriptor of data set with given ID.
 List<DataSetDescriptor> getDataSetDescriptors()
          Returns descriptors of all available data sets.
 List<DataSetDescriptor> getDataSetDescriptors(Type dsType)
          Returns descriptors of all available data sets of given type (and sub-types).
<T extends IDataSet<? extends IElement>>
Map<UUID,T>
getDataSets(Collection<DataSetDescriptor> descs)
          Returns the data sets described by given descriptors.
<T extends IDataSet<? extends IElement>>
Map<UUID,T>
getDataSetsById(Collection<UUID> ids)
          Returns the data sets with given IDs.
 List<DomainDataSetDescriptor> getDomainDataSetDescriptors()
          Returns descriptors of all available domain data sets.
 List<PresentationDataSetDescriptor> getPresentationDataSetDescriptors()
          Returns descriptors of all available presentation data sets.
protected  IPersistenceProvider getProvider()
          Returns the decorated provider.
 List<VisualDataSetDescriptor> getVisualDataSetDescriptors()
          Returns descriptors of all available visual data sets.
 void initialize()
          Initializes the instance of IPersistenceProvider.
 UUID renameDataSet(UUID id, String newName)
          Changes the name of the data set with given ID.
 UUID saveDataSet(IDataSet<? extends IElement> dataSet)
          Saves the given data set.
 UUID saveDataSet(IDataSet<? extends IElement> dataSet, org.eclipse.core.runtime.IProgressMonitor monitor)
          Saves the given data set.
 Map<UUID,UUID> saveDataSets(Collection<IDataSet<? extends IElement>> dataSets)
          Saves the given collection of data sets.
 Map<UUID,UUID> saveDataSets(Collection<IDataSet<? extends IElement>> dataSets, org.eclipse.core.runtime.IProgressMonitor monitor)
          Saves the given collection of data sets.
<T extends IPresentationDataSet<? extends IPresentationElement<? extends IElement>>>
T
saveDiagram(T presentationDataSet)
          Saves the given presentation data set with associated visual data set and returns their new version.
<T extends IPresentationDataSet<? extends IPresentationElement<? extends IElement>>>
T
saveDiagram(T presentationDataSet, org.eclipse.core.runtime.IProgressMonitor monitor)
          Saves the given presentation data set with associated visual data set and returns their new version.
 void setConfig(String filePath)
          Sets the path to configuration/storage file.
protected  void setProvider(IPersistenceProvider provider)
          Sets the decorated provider.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractPersistenceProviderDecorator

public AbstractPersistenceProviderDecorator(IPersistenceProvider provider)
Constructor.

Parameters:
provider - the persistence provider to decorate
Method Detail

getProvider

protected final IPersistenceProvider getProvider()
Returns the decorated provider.

Returns:
the provider

setProvider

protected final void setProvider(IPersistenceProvider provider)
Sets the decorated provider.

Parameters:
provider - the provider to set

destroy

public void destroy()
Destroys the instance of IPersistenceProvider.

Specified by:
destroy in interface IPersistenceProvider
See Also:
IPersistenceProvider.destroy()

getDataSet

public <T extends IDataSet<? extends IElement>> T getDataSet(DataSetDescriptor descriptor)
Returns the data set described by given descriptor.

Specified by:
getDataSet in interface IPersistenceProvider
Type Parameters:
T - the type of data set to be returned
Parameters:
descriptor - the descriptor of the data set
Returns:
the data set with described by given descriptor
See Also:
#getDataSet(pl.edu.agh.cast.data.model.DataSetDescriptor)

getDataSet

public <T extends IDataSet<? extends IElement>> T getDataSet(UUID id)
Returns the data set with given ID.

Specified by:
getDataSet in interface IPersistenceProvider
Type Parameters:
T - the type of data set to be returned
Parameters:
id - the ID of the data set
Returns:
the data set with given ID
See Also:
IPersistenceProvider.getDataSet(java.util.UUID)

getDataSetDescriptor

public DataSetDescriptor getDataSetDescriptor(UUID id)
Returns the descriptor of data set with given ID.

Specified by:
getDataSetDescriptor in interface IPersistenceProvider
Parameters:
id - the ID of the data set
Returns:
the descriptor of data set with given ID
See Also:
IPersistenceProvider.getDataSetDescriptor(java.util.UUID)

getDataSetDescriptors

public List<DataSetDescriptor> getDataSetDescriptors()
Returns descriptors of all available data sets.

Specified by:
getDataSetDescriptors in interface IPersistenceProvider
Returns:
list of descriptors of available data sets
See Also:
IPersistenceProvider.getDataSetDescriptors()

getDataSetDescriptors

public List<DataSetDescriptor> getDataSetDescriptors(Type dsType)
Returns descriptors of all available data sets of given type (and sub-types).

Specified by:
getDataSetDescriptors in interface IPersistenceProvider
Parameters:
dsType - the type (super-type) of the data sets whose descriptors should be returned
Returns:
list of descriptors of data sets of given type
See Also:
IPersistenceProvider.getDataSetDescriptors(pl.edu.agh.cast.data.model.Type)

getDataSets

public <T extends IDataSet<? extends IElement>> Map<UUID,T> getDataSets(Collection<DataSetDescriptor> descs)
Returns the data sets described by given descriptors.

Specified by:
getDataSets in interface IPersistenceProvider
Type Parameters:
T - the type of data sets to be returned
Parameters:
descs - collection of descriptor of the data sets
Returns:
a map of data sets described by given descriptors, indexed by IDs
See Also:
IPersistenceProvider.getDataSets(java.util.Collection)

getDataSetsById

public <T extends IDataSet<? extends IElement>> Map<UUID,T> getDataSetsById(Collection<UUID> ids)
Returns the data sets with given IDs.

Specified by:
getDataSetsById in interface IPersistenceProvider
Type Parameters:
T - the type of data sets to be returned
Parameters:
ids - collection of data set IDs
Returns:
a map of data sets with given IDs, indexed by IDs
See Also:
IPersistenceProvider.getDataSetsById(java.util.Collection)

getDomainDataSetDescriptors

public List<DomainDataSetDescriptor> getDomainDataSetDescriptors()
Returns descriptors of all available domain data sets.

Specified by:
getDomainDataSetDescriptors in interface IPersistenceProvider
Returns:
list of descriptors of available domain data sets
See Also:
IPersistenceProvider.getDomainDataSetDescriptors()

getPresentationDataSetDescriptors

public List<PresentationDataSetDescriptor> getPresentationDataSetDescriptors()
Returns descriptors of all available presentation data sets.

Specified by:
getPresentationDataSetDescriptors in interface IPersistenceProvider
Returns:
list of descriptors of available presentation data sets
See Also:
IPersistenceProvider.getPresentationDataSetDescriptors()

getVisualDataSetDescriptors

public List<VisualDataSetDescriptor> getVisualDataSetDescriptors()
Returns descriptors of all available visual data sets.

Specified by:
getVisualDataSetDescriptors in interface IPersistenceProvider
Returns:
list of descriptors of available visual data sets
See Also:
IPersistenceProvider.getVisualDataSetDescriptors()

initialize

public void initialize()
Initializes the instance of IPersistenceProvider.

Specified by:
initialize in interface IPersistenceProvider
See Also:
IPersistenceProvider.initialize()

saveDataSet

public UUID saveDataSet(IDataSet<? extends IElement> dataSet,
                        org.eclipse.core.runtime.IProgressMonitor monitor)
Saves the given data set.

Specified by:
saveDataSet in interface IPersistenceProvider
Parameters:
dataSet - the data set to save
monitor - operation progress monitor
Returns:
the ID of the data set (as saved)
See Also:
IPersistenceProvider.saveDataSet(pl.edu.agh.cast.data.model.IDataSet, org.eclipse.core.runtime.IProgressMonitor)

saveDataSet

public UUID saveDataSet(IDataSet<? extends IElement> dataSet)
Saves the given data set.

Specified by:
saveDataSet in interface IPersistenceProvider
Parameters:
dataSet - the data set to save
Returns:
the ID of the data set (as saved)
See Also:
IPersistenceProvider.saveDataSet(pl.edu.agh.cast.data.model.IDataSet)

saveDataSets

public Map<UUID,UUID> saveDataSets(Collection<IDataSet<? extends IElement>> dataSets,
                                   org.eclipse.core.runtime.IProgressMonitor monitor)
Saves the given collection of data sets.

Specified by:
saveDataSets in interface IPersistenceProvider
Parameters:
dataSets - collection of data sets to save
monitor - operation progress monitor
Returns:
a map containing new IDs (as saved) of the data sets indexed by their old IDs
See Also:
IPersistenceProvider.saveDataSets(java.util.Collection, org.eclipse.core.runtime.IProgressMonitor)

saveDataSets

public Map<UUID,UUID> saveDataSets(Collection<IDataSet<? extends IElement>> dataSets)
Saves the given collection of data sets.

Specified by:
saveDataSets in interface IPersistenceProvider
Parameters:
dataSets - collection of data sets to save
Returns:
a map containing new IDs (as saved) of the data sets indexed by their old IDs
See Also:
IPersistenceProvider.saveDataSets(java.util.Collection)

saveDiagram

public <T extends IPresentationDataSet<? extends IPresentationElement<? extends IElement>>> T saveDiagram(T presentationDataSet,
                                                                                                          org.eclipse.core.runtime.IProgressMonitor monitor)
Saves the given presentation data set with associated visual data set and returns their new version.

Specified by:
saveDiagram in interface IPersistenceProvider
Type Parameters:
T - the type of presentation data set
Parameters:
presentationDataSet - the presentation data set to save
monitor - operation progress monitor
Returns:
the new version of presentation data set (with associated visual data set) as saved
See Also:
#saveDiagram(pl.edu.agh.cast.data.model.presentation.IPresentationDataSet, org.eclipse.core.runtime.IProgressMonitor)

saveDiagram

public <T extends IPresentationDataSet<? extends IPresentationElement<? extends IElement>>> T saveDiagram(T presentationDataSet)
Saves the given presentation data set with associated visual data set and returns their new version.

Specified by:
saveDiagram in interface IPersistenceProvider
Type Parameters:
T - the type of presentation data set
Parameters:
presentationDataSet - the presentation data set to save
Returns:
the new version of presentation data set (with associated visual data set) as saved
See Also:
#saveDiagram(pl.edu.agh.cast.data.model.presentation.IPresentationDataSet)

renameDataSet

public UUID renameDataSet(UUID id,
                          String newName)
Changes the name of the data set with given ID.

Specified by:
renameDataSet in interface IPersistenceProvider
Parameters:
id - the data set ID
newName - the new name to set
Returns:
the ID of renamed data set
See Also:
IPersistenceProvider.renameDataSet(java.util.UUID, java.lang.String)

setConfig

public void setConfig(String filePath)
Sets the path to configuration/storage file.

Specified by:
setConfig in interface IPersistenceProvider
Parameters:
filePath - path to configuration/storage file
See Also:
IPersistenceProvider.setConfig(java.lang.String)

getConfig

public String getConfig()


Copyright © 2007-2009 IISG AGH-UST Krakow, Poland. All Rights Reserved.