Package tigase.muc.history
Class HistoryProviderMDBean
java.lang.Object
tigase.db.beans.MDRepositoryBean<T>
tigase.db.beans.MDRepositoryBeanWithStatistics<HistoryProvider>
tigase.muc.history.HistoryProviderMDBean
- All Implemented Interfaces:
tigase.db.DataSourceAware,tigase.kernel.beans.Initializable,tigase.kernel.beans.RegistrarBean,tigase.kernel.beans.RegistrarBeanWithDefaultBeanClass,tigase.kernel.beans.UnregisterAware,HistoryProvider,tigase.stats.ComponentStatisticsProvider,tigase.stats.StatisticsProviderIfc,tigase.xmpp.mam.MAMRepository
@Bean(name="historyProviderPool",
parent=MUCComponent.class,
active=true)
public class HistoryProviderMDBean
extends tigase.db.beans.MDRepositoryBeanWithStatistics<HistoryProvider>
implements HistoryProvider, tigase.xmpp.mam.MAMRepository
Created by andrzej on 25.08.2016.
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class tigase.db.beans.MDRepositoryBean
tigase.db.beans.MDRepositoryBean.MDRepositoryConfigBean<A extends tigase.db.DataSourceAware>, tigase.db.beans.MDRepositoryBean.SelectorTypeNested classes/interfaces inherited from interface tigase.xmpp.mam.MAMRepository
tigase.xmpp.mam.MAMRepository.Item, tigase.xmpp.mam.MAMRepository.ItemHandler<Q extends tigase.xmpp.mam.Query,I extends tigase.xmpp.mam.MAMRepository.Item> -
Field Summary
Fields inherited from class tigase.db.beans.MDRepositoryBean
aliases, dataSourceSelection -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddJoinEvent(Room room, Date date, tigase.xmpp.jid.JID senderJID, String nickName) Adds join event.voidaddLeaveEvent(Room room, Date date, tigase.xmpp.jid.JID senderJID, String nickName) voidaddMessage(Room room, tigase.xml.Element message, String body, tigase.xmpp.jid.JID senderJid, String senderNickname, Date time) voidaddSubjectChange(Room room, tigase.xml.Element message, String subject, tigase.xmpp.jid.JID senderJid, String senderNickname, Date time) Adds subject changes to log/history.booleanvoiddestroy()Destroys this instance of HistoryProvider releasing all resources allocated but this provider if they should be releasedprotected Class<? extends HistoryProvider>findClassForDataSource(tigase.db.DataSource dataSource) Class<?>voidgetHistoryMessages(Room room, tigase.xmpp.jid.JID senderJID, Integer maxchars, Integer maxstanzas, Integer seconds, Date since, tigase.component.PacketWriter writer) protected HistoryProvidergetRepository(String domain) protected HistoryProvidergetRepository(Room room) booleanisPersistent(Room room) tigase.xmpp.mam.QuerynewQuery()voidqueryItems(tigase.xmpp.mam.Query query, tigase.xmpp.mam.MAMRepository.ItemHandler itemHandler) voidremoveHistory(Room room) voidsetDataSource(tigase.db.DataSource dataSource) Methods inherited from class tigase.db.beans.MDRepositoryBeanWithStatistics
everyHour, everyMinute, everySecond, getRepositories, getStatistics, setStatisticsEnabled, updateDataSourceAware, wrapInProxyMethods inherited from class tigase.db.beans.MDRepositoryBean
beforeUnregister, getName, initialize, initializeRepository, onDataSourceChange, register, registerIfNotExists, repositoriesStream, setDataSourceBean, unregisterMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface tigase.xmpp.mam.MAMRepository
newQuery
-
Constructor Details
-
HistoryProviderMDBean
public HistoryProviderMDBean()
-
-
Method Details
-
belongsTo
- Specified by:
belongsToin interfacetigase.stats.ComponentStatisticsProvider
-
getDefaultBeanClass
- Specified by:
getDefaultBeanClassin interfacetigase.kernel.beans.RegistrarBeanWithDefaultBeanClass
-
setDataSource
public void setDataSource(tigase.db.DataSource dataSource) - Specified by:
setDataSourcein interfacetigase.db.DataSourceAware
-
addJoinEvent
Description copied from interface:HistoryProviderAdds join event.- Specified by:
addJoinEventin interfaceHistoryProvider
-
addLeaveEvent
- Specified by:
addLeaveEventin interfaceHistoryProvider
-
addMessage
public void addMessage(Room room, tigase.xml.Element message, String body, tigase.xmpp.jid.JID senderJid, String senderNickname, Date time) - Specified by:
addMessagein interfaceHistoryProvider
-
addSubjectChange
public void addSubjectChange(Room room, tigase.xml.Element message, String subject, tigase.xmpp.jid.JID senderJid, String senderNickname, Date time) Description copied from interface:HistoryProviderAdds subject changes to log/history.- Specified by:
addSubjectChangein interfaceHistoryProvider
-
destroy
public void destroy()Description copied from interface:HistoryProviderDestroys this instance of HistoryProvider releasing all resources allocated but this provider if they should be released- Specified by:
destroyin interfaceHistoryProvider
-
getHistoryMessages
public void getHistoryMessages(Room room, tigase.xmpp.jid.JID senderJID, Integer maxchars, Integer maxstanzas, Integer seconds, Date since, tigase.component.PacketWriter writer) - Specified by:
getHistoryMessagesin interfaceHistoryProvider
-
isPersistent
- Specified by:
isPersistentin interfaceHistoryProvider
-
removeHistory
- Specified by:
removeHistoryin interfaceHistoryProvider
-
queryItems
public void queryItems(tigase.xmpp.mam.Query query, tigase.xmpp.mam.MAMRepository.ItemHandler itemHandler) throws tigase.component.exceptions.RepositoryException, tigase.component.exceptions.ComponentException - Specified by:
queryItemsin interfacetigase.xmpp.mam.MAMRepository- Throws:
tigase.component.exceptions.RepositoryExceptiontigase.component.exceptions.ComponentException
-
newQuery
public tigase.xmpp.mam.Query newQuery()- Specified by:
newQueryin interfacetigase.xmpp.mam.MAMRepository
-
getRepository
-
getRepository
- Overrides:
getRepositoryin classtigase.db.beans.MDRepositoryBeanWithStatistics<HistoryProvider>
-
findClassForDataSource
protected Class<? extends HistoryProvider> findClassForDataSource(tigase.db.DataSource dataSource) throws tigase.db.DBInitException - Specified by:
findClassForDataSourcein classtigase.db.beans.MDRepositoryBean<HistoryProvider>- Throws:
tigase.db.DBInitException
-