Package tigase.workgroupqueues.data
Class RepoPool
- java.lang.Object
-
- tigase.db.beans.MDRepositoryBean<T>
-
- tigase.db.beans.MDRepositoryBeanWithStatistics<Store>
-
- tigase.workgroupqueues.data.RepoPool
-
- All Implemented Interfaces:
DataSourceAware<DataRepository>
,Repository
,Initializable
,RegistrarBean
,RegistrarBeanWithDefaultBeanClass
,UnregisterAware
,ComponentStatisticsProvider
,StatisticsProviderIfc
,Store
@Bean(name="repositoryPool", parent=WorkgroupQueuesComponent.class, active=true) public class RepoPool extends MDRepositoryBeanWithStatistics<Store> implements Store
Created by bmalkow on 22.02.2017.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
RepoPool.MessageArchiveRepositoryConfigBean
-
Nested classes/interfaces inherited from class tigase.db.beans.MDRepositoryBean
MDRepositoryBean.MDRepositoryConfigBean<A extends DataSourceAware>, MDRepositoryBean.SelectorType
-
Nested classes/interfaces inherited from interface tigase.db.Repository
Repository.Meta, Repository.SchemaId
-
-
Field Summary
-
Fields inherited from class tigase.db.beans.MDRepositoryBean
aliases, dataSourceSelection
-
-
Constructor Summary
Constructors Constructor Description RepoPool()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addWorkgroupQueue(WorkgroupQueueEntity queue)
Add queue entity to storage.void
deleteWorkgroupQueue(BareJID queueJid)
protected java.lang.Class
findClassForDataSource(DataSource dataSource)
Method returns class implementing repository which supports data source instance provided in parameter.java.lang.Class<?>
getDefaultBeanClass()
Returns default class for all bean which are defined using configuration as subbeans of bean implementing this interface.WorkgroupQueueEntity
getWorkgroupQueue(BareJID queueJID)
Loads queue entity from storage.java.util.Collection<WorkgroupQueueEntity>
getWorkgroupQueues()
Returns collection of known queues.void
initRepository(java.lang.String resource_uri, java.util.Map<java.lang.String,java.lang.String> params)
Method is deprecated and should not be user any more.void
setDataSource(DataRepository dataSource)
Method called to provide class with instance of a data source.-
Methods inherited from class tigase.db.beans.MDRepositoryBeanWithStatistics
everyHour, everyMinute, everySecond, getRepositories, getRepository, getStatistics, setStatisticsEnabled, updateDataSourceAware, wrapInProxy
-
Methods inherited from class tigase.db.beans.MDRepositoryBean
beforeUnregister, getName, initialize, initializeRepository, onDataSourceChange, register, registerIfNotExists, repositoriesStream, setDataSourceBean, unregister
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface tigase.stats.ComponentStatisticsProvider
belongsTo
-
-
-
-
Method Detail
-
addWorkgroupQueue
public void addWorkgroupQueue(WorkgroupQueueEntity queue)
Description copied from interface:Store
Add queue entity to storage.- Specified by:
addWorkgroupQueue
in interfaceStore
- Parameters:
queue
- queue to add.
-
deleteWorkgroupQueue
public void deleteWorkgroupQueue(BareJID queueJid)
- Specified by:
deleteWorkgroupQueue
in interfaceStore
-
getDefaultBeanClass
public java.lang.Class<?> getDefaultBeanClass()
Description copied from interface:RegistrarBeanWithDefaultBeanClass
Returns default class for all bean which are defined using configuration as subbeans of bean implementing this interface. This allows users to have more convenient configuration file without the need to specify class for each of subbbeans if most of them will have the same class.- Specified by:
getDefaultBeanClass
in interfaceRegistrarBeanWithDefaultBeanClass
-
getWorkgroupQueue
public WorkgroupQueueEntity getWorkgroupQueue(BareJID queueJID)
Description copied from interface:Store
Loads queue entity from storage.- Specified by:
getWorkgroupQueue
in interfaceStore
- Parameters:
queueJID
- JID of queue.- Returns:
- queue instance of
null
if queue doesn't exists.
-
getWorkgroupQueues
public java.util.Collection<WorkgroupQueueEntity> getWorkgroupQueues()
Description copied from interface:Store
Returns collection of known queues.- Specified by:
getWorkgroupQueues
in interfaceStore
- Returns:
- collection of queues.
-
initRepository
public void initRepository(java.lang.String resource_uri, java.util.Map<java.lang.String,java.lang.String> params) throws DBInitException
Description copied from interface:Repository
Method is deprecated and should not be user any more.
The method is called to initialize the data repository. Depending on the implementation all the initialization parameters can be passed either viaresource_uri
parameter as the database connection string or viaparams
map if the required repository parameters are more complex or both.- Specified by:
initRepository
in interfaceRepository
- Parameters:
resource_uri
- value in most cases representing the database connection string.params
- is aMap
with repository properties necessary to initialize and perform all the functions. The initialization parameters are implementation dependent.- Throws:
DBInitException
- if there was an error during repository initialization. Some implementations, though, perform so called lazy initialization so even though there is a problem with the underlying repository it may not be signaled through this method call.
-
setDataSource
public void setDataSource(DataRepository dataSource)
Description copied from interface:DataSourceAware
Method called to provide class with instance of a data source.- Specified by:
setDataSource
in interfaceDataSourceAware<DataRepository>
-
findClassForDataSource
protected java.lang.Class findClassForDataSource(DataSource dataSource) throws DBInitException
Description copied from class:MDRepositoryBean
Method returns class implementing repository which supports data source instance provided in parameter.- Specified by:
findClassForDataSource
in classMDRepositoryBean<Store>
- Returns:
- repository class
- Throws:
DBInitException
-
-