Package tigase.muc.history
Class JDBCHistoryProvider
java.lang.Object
tigase.muc.history.AbstractHistoryProvider<tigase.db.DataRepository>
tigase.muc.history.JDBCHistoryProvider
- All Implemented Interfaces:
tigase.db.DataSourceAware<tigase.db.DataRepository>,tigase.db.util.RepositoryVersionAware,HistoryProvider<tigase.db.DataRepository>,tigase.xmpp.mam.MAMRepository
public class JDBCHistoryProvider
extends AbstractHistoryProvider<tigase.db.DataRepository>
implements HistoryProvider<tigase.db.DataRepository>, tigase.xmpp.mam.MAMRepository, tigase.db.util.RepositoryVersionAware
Created by andrzej on 17.10.2016.
-
Nested Class Summary
Nested 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> Nested classes/interfaces inherited from interface tigase.db.util.RepositoryVersionAware
tigase.db.util.RepositoryVersionAware.SchemaVersion -
Field Summary
FieldsFields inherited from class tigase.muc.history.AbstractHistoryProvider
parser -
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.voiddestroy()Destroys this instance of HistoryProvider releasing all resources allocated but this provider if they should be releasedvoidgetHistoryMessages(Room room, tigase.xmpp.jid.JID senderJID, Integer maxchars, Integer maxstanzas, Integer seconds, Date since, tigase.component.PacketWriter writer) protected voidgetMessagesSince(Room room, tigase.xmpp.jid.JID senderJID, int maxMessages, Timestamp since, tigase.component.PacketWriter writer) protected voidinitPreparedStatements(tigase.db.DataRepository repo) booleanisPersistent(Room room) tigase.xmpp.mam.QuerynewQuery()protected voidprocessResultSet(Room room, tigase.xmpp.jid.JID senderJID, tigase.component.PacketWriter writer, ResultSet rs) voidqueryItems(tigase.xmpp.mam.Query query, tigase.xmpp.mam.MAMRepository.ItemHandler itemHandler) voidremoveHistory(Room room) voidsetDataSource(tigase.db.DataRepository dataSource) Methods inherited from class tigase.muc.history.AbstractHistoryProvider
calculateOffsetAndPosition, createMessage, createMessageElement, isAllowedToSeeJIDsMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface tigase.xmpp.mam.MAMRepository
newQueryMethods inherited from interface tigase.db.util.RepositoryVersionAware
getVersion, updateSchema
-
Field Details
-
data_repo
protected tigase.db.DataRepository data_repo
-
-
Constructor Details
-
JDBCHistoryProvider
public JDBCHistoryProvider()
-
-
Method Details
-
addJoinEvent
Description copied from interface:HistoryProviderAdds join event.- Specified by:
addJoinEventin interfaceHistoryProvider<tigase.db.DataRepository>
-
addLeaveEvent
- Specified by:
addLeaveEventin interfaceHistoryProvider<tigase.db.DataRepository>
-
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<tigase.db.DataRepository>
-
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<tigase.db.DataRepository>
-
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<tigase.db.DataRepository>
-
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<tigase.db.DataRepository>
-
isPersistent
- Specified by:
isPersistentin interfaceHistoryProvider<tigase.db.DataRepository>
-
removeHistory
- Specified by:
removeHistoryin interfaceHistoryProvider<tigase.db.DataRepository>
-
queryItems
public void queryItems(tigase.xmpp.mam.Query query, tigase.xmpp.mam.MAMRepository.ItemHandler itemHandler) throws tigase.db.TigaseDBException, tigase.component.exceptions.ComponentException - Specified by:
queryItemsin interfacetigase.xmpp.mam.MAMRepository- Throws:
tigase.db.TigaseDBExceptiontigase.component.exceptions.ComponentException
-
newQuery
public tigase.xmpp.mam.Query newQuery()- Specified by:
newQueryin interfacetigase.xmpp.mam.MAMRepository
-
setDataSource
public void setDataSource(tigase.db.DataRepository dataSource) - Specified by:
setDataSourcein interfacetigase.db.DataSourceAware<tigase.db.DataRepository>
-
getMessagesSince
protected void getMessagesSince(Room room, tigase.xmpp.jid.JID senderJID, int maxMessages, Timestamp since, tigase.component.PacketWriter writer) throws SQLException, tigase.util.stringprep.TigaseStringprepException - Throws:
SQLExceptiontigase.util.stringprep.TigaseStringprepException
-
processResultSet
protected void processResultSet(Room room, tigase.xmpp.jid.JID senderJID, tigase.component.PacketWriter writer, ResultSet rs) throws SQLException, tigase.util.stringprep.TigaseStringprepException - Throws:
SQLExceptiontigase.util.stringprep.TigaseStringprepException
-
initPreparedStatements
- Throws:
SQLException
-