@Bean(name="repositoryPool", parent=MessageArchiveComponent.class, active=true) public class MessageArchiveRepositoryPool<Q extends QueryCriteria,R extends MessageArchiveRepository<Q,tigase.db.DataSource>> extends tigase.db.beans.MDRepositoryBeanWithStatistics<R> implements MessageArchiveRepository<Q,tigase.db.DataSource>
Modifier and Type | Class and Description |
---|---|
static class |
MessageArchiveRepositoryPool.MessageArchiveRepositoryConfigBean |
tigase.db.beans.MDRepositoryBean.MDRepositoryConfigBean<A extends tigase.db.DataSourceAware>, tigase.db.beans.MDRepositoryBean.SelectorType
MessageArchiveRepository.CollectionHandler<Q extends tigase.xmpp.mam.Query>, MessageArchiveRepository.Direction, MessageArchiveRepository.Item
Constructor and Description |
---|
MessageArchiveRepositoryPool() |
MessageArchiveRepositoryPool(Class<? extends MessageArchiveRepository>... classess) |
Modifier and Type | Method and Description |
---|---|
void |
archiveMessage(tigase.xmpp.jid.BareJID owner,
tigase.xmpp.jid.JID buddy,
MessageArchiveRepository.Direction direction,
Date timestamp,
tigase.xml.Element msg,
Set tags) |
boolean |
belongsTo(Class<? extends tigase.server.BasicComponent> component) |
void |
deleteExpiredMessages(tigase.xmpp.jid.BareJID owner,
LocalDateTime before) |
protected Class |
findClassForDataSource(tigase.db.DataSource dataSource) |
Class<?> |
getDefaultBeanClass() |
List<String> |
getTags(tigase.xmpp.jid.BareJID owner,
String startsWith,
Q criteria) |
Q |
newQuery() |
void |
queryCollections(Q query,
MessageArchiveRepository.CollectionHandler<Q> collectionHandler) |
void |
queryItems(Q query,
tigase.xmpp.mam.MAMRepository.ItemHandler<Q,tigase.xmpp.mam.MAMRepository.Item> itemHandler) |
void |
removeItems(tigase.xmpp.jid.BareJID owner,
String withJid,
Date start,
Date end) |
void |
setDataSource(tigase.db.DataSource dataSource) |
everyHour, everyMinute, everySecond, getRepositories, getRepository, getStatistics, setStatisticsEnabled, updateDataSourceAware, wrapInProxy
beforeUnregister, getName, initialize, initializeRepository, onDataSourceChange, register, registerIfNotExists, repositoriesStream, setDataSourceBean, unregister
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
destroy
public MessageArchiveRepositoryPool()
public MessageArchiveRepositoryPool(Class<? extends MessageArchiveRepository>... classess)
public boolean belongsTo(Class<? extends tigase.server.BasicComponent> component)
belongsTo
in interface tigase.stats.ComponentStatisticsProvider
public void archiveMessage(tigase.xmpp.jid.BareJID owner, tigase.xmpp.jid.JID buddy, MessageArchiveRepository.Direction direction, Date timestamp, tigase.xml.Element msg, Set tags)
archiveMessage
in interface MessageArchiveRepository<Q extends QueryCriteria,tigase.db.DataSource>
public void deleteExpiredMessages(tigase.xmpp.jid.BareJID owner, LocalDateTime before) throws tigase.db.TigaseDBException
deleteExpiredMessages
in interface MessageArchiveRepository<Q extends QueryCriteria,tigase.db.DataSource>
tigase.db.TigaseDBException
public Q newQuery()
newQuery
in interface tigase.xmpp.mam.MAMRepository<Q extends QueryCriteria,tigase.xmpp.mam.MAMRepository.Item>
public void queryCollections(Q query, MessageArchiveRepository.CollectionHandler<Q> collectionHandler) throws tigase.db.TigaseDBException
queryCollections
in interface MessageArchiveRepository<Q extends QueryCriteria,tigase.db.DataSource>
tigase.db.TigaseDBException
public void queryItems(Q query, tigase.xmpp.mam.MAMRepository.ItemHandler<Q,tigase.xmpp.mam.MAMRepository.Item> itemHandler) throws tigase.component.exceptions.RepositoryException, tigase.component.exceptions.ComponentException
queryItems
in interface tigase.xmpp.mam.MAMRepository<Q extends QueryCriteria,tigase.xmpp.mam.MAMRepository.Item>
tigase.component.exceptions.RepositoryException
tigase.component.exceptions.ComponentException
public void removeItems(tigase.xmpp.jid.BareJID owner, String withJid, Date start, Date end) throws tigase.db.TigaseDBException
removeItems
in interface MessageArchiveRepository<Q extends QueryCriteria,tigase.db.DataSource>
tigase.db.TigaseDBException
public List<String> getTags(tigase.xmpp.jid.BareJID owner, String startsWith, Q criteria) throws tigase.db.TigaseDBException
getTags
in interface MessageArchiveRepository<Q extends QueryCriteria,tigase.db.DataSource>
tigase.db.TigaseDBException
public void setDataSource(tigase.db.DataSource dataSource)
setDataSource
in interface tigase.db.DataSourceAware<tigase.db.DataSource>
public Class<?> getDefaultBeanClass()
getDefaultBeanClass
in interface tigase.kernel.beans.RegistrarBeanWithDefaultBeanClass
protected Class findClassForDataSource(tigase.db.DataSource dataSource) throws tigase.db.DBInitException
findClassForDataSource
in class tigase.db.beans.MDRepositoryBean<R extends MessageArchiveRepository<Q,tigase.db.DataSource>>
tigase.db.DBInitException
Copyright © 2012–2019 "Tigase, Inc.". All rights reserved.