Package tigase.archive.unified.db
Class JDBCUnifiedArchiveRepository
- java.lang.Object
-
- tigase.archive.db.AbstractMessageArchiveRepository<tigase.archive.db.JDBCMessageArchiveRepository.Criteria>
-
- tigase.archive.db.JDBCMessageArchiveRepository
-
- tigase.archive.unified.db.JDBCUnifiedArchiveRepository
-
- All Implemented Interfaces:
tigase.archive.db.MessageArchiveRepository<tigase.archive.db.JDBCMessageArchiveRepository.Criteria>,tigase.db.Repository
- Direct Known Subclasses:
JDBCUnifiedArchiveRepositoryWithRecents
public class JDBCUnifiedArchiveRepository extends tigase.archive.db.JDBCMessageArchiveRepositoryExtended JDBCMessageArchivingRepository class to add unique features required for Unified Archive to work
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJDBCUnifiedArchiveRepository.Criteriaprotected static classJDBCUnifiedArchiveRepository.Item
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.StringMSGS_ITEM_TYPEprotected static java.lang.StringMSGS_OFFLINEprotected static java.lang.StringOFFLINE_STORE_KEY
-
Constructor Summary
Constructors Constructor Description JDBCUnifiedArchiveRepository()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected tigase.xml.ElementaddCollectionToResults(java.util.List<tigase.xml.Element> results, tigase.archive.db.JDBCMessageArchiveRepository.Criteria criteria_, java.lang.String with, java.util.Date start, java.lang.String type)protected intaddMessageAdditionalInfo(java.sql.PreparedStatement stmt, int i, java.util.Map<java.lang.String,java.lang.Object> additionalData)protected tigase.xml.ElementaddMessageToResults(java.util.List<tigase.xml.Element> msgs, tigase.archive.db.JDBCMessageArchiveRepository.Criteria crit, java.util.Date startTimestamp, tigase.archive.db.JDBCMessageArchiveRepository.Item item_, tigase.xml.Element msg)voidarchiveMessage(tigase.xmpp.BareJID owner, tigase.xmpp.JID buddy, tigase.archive.db.MessageArchiveRepository.Direction direction, java.util.Date timestamp, tigase.xml.Element msg, java.util.Set<java.lang.String> tags)protected byte[]generateHashOfMessage(tigase.archive.db.MessageArchiveRepository.Direction direction, tigase.xml.Element msg, java.util.Date ts, java.util.Map<java.lang.String,java.lang.Object> additionalData)protected java.lang.String[]getCollectionsCombinations()protected java.lang.String[][]getCollectionsWheres()protected tigase.db.DataRepositorygetDataRepository()protected java.util.List<java.lang.String>getMessageFields(java.lang.String combination)protected voidinitPreparedStatements(java.util.Map<java.lang.String,java.lang.String> params)voidinitRepository(java.lang.String conn_str, java.util.Map<java.lang.String,java.lang.String> params)protected voidinitRepositoryDbSchema()tigase.archive.AbstractCriterianewCriteriaInstance()protected JDBCUnifiedArchiveRepository.ItemnewItemInstance()
-
-
-
Field Detail
-
MSGS_ITEM_TYPE
protected static final java.lang.String MSGS_ITEM_TYPE
- See Also:
- Constant Field Values
-
MSGS_OFFLINE
protected static final java.lang.String MSGS_OFFLINE
- See Also:
- Constant Field Values
-
OFFLINE_STORE_KEY
protected static final java.lang.String OFFLINE_STORE_KEY
- See Also:
- Constant Field Values
-
-
Method Detail
-
initRepository
public void initRepository(java.lang.String conn_str, java.util.Map<java.lang.String,java.lang.String> params) throws tigase.db.DBInitException- Specified by:
initRepositoryin interfacetigase.db.Repository- Overrides:
initRepositoryin classtigase.archive.db.JDBCMessageArchiveRepository- Throws:
tigase.db.DBInitException
-
getCollectionsCombinations
protected java.lang.String[] getCollectionsCombinations()
- Overrides:
getCollectionsCombinationsin classtigase.archive.db.JDBCMessageArchiveRepository
-
getCollectionsWheres
protected java.lang.String[][] getCollectionsWheres()
- Overrides:
getCollectionsWheresin classtigase.archive.db.JDBCMessageArchiveRepository
-
initRepositoryDbSchema
protected void initRepositoryDbSchema() throws java.sql.SQLException- Overrides:
initRepositoryDbSchemain classtigase.archive.db.JDBCMessageArchiveRepository- Throws:
java.sql.SQLException
-
initPreparedStatements
protected void initPreparedStatements(java.util.Map<java.lang.String,java.lang.String> params) throws java.sql.SQLException- Overrides:
initPreparedStatementsin classtigase.archive.db.JDBCMessageArchiveRepository- Throws:
java.sql.SQLException
-
archiveMessage
public void archiveMessage(tigase.xmpp.BareJID owner, tigase.xmpp.JID buddy, tigase.archive.db.MessageArchiveRepository.Direction direction, java.util.Date timestamp, tigase.xml.Element msg, java.util.Set<java.lang.String> tags)- Specified by:
archiveMessagein interfacetigase.archive.db.MessageArchiveRepository<tigase.archive.db.JDBCMessageArchiveRepository.Criteria>- Overrides:
archiveMessagein classtigase.archive.db.JDBCMessageArchiveRepository
-
addMessageAdditionalInfo
protected int addMessageAdditionalInfo(java.sql.PreparedStatement stmt, int i, java.util.Map<java.lang.String,java.lang.Object> additionalData) throws java.sql.SQLException- Overrides:
addMessageAdditionalInfoin classtigase.archive.db.JDBCMessageArchiveRepository- Throws:
java.sql.SQLException
-
newCriteriaInstance
public tigase.archive.AbstractCriteria newCriteriaInstance()
- Specified by:
newCriteriaInstancein interfacetigase.archive.db.MessageArchiveRepository<tigase.archive.db.JDBCMessageArchiveRepository.Criteria>- Overrides:
newCriteriaInstancein classtigase.archive.db.JDBCMessageArchiveRepository
-
newItemInstance
protected JDBCUnifiedArchiveRepository.Item newItemInstance()
- Overrides:
newItemInstancein classtigase.archive.db.JDBCMessageArchiveRepository
-
getMessageFields
protected java.util.List<java.lang.String> getMessageFields(java.lang.String combination)
- Overrides:
getMessageFieldsin classtigase.archive.db.JDBCMessageArchiveRepository
-
addCollectionToResults
protected tigase.xml.Element addCollectionToResults(java.util.List<tigase.xml.Element> results, tigase.archive.db.JDBCMessageArchiveRepository.Criteria criteria_, java.lang.String with, java.util.Date start, java.lang.String type)- Overrides:
addCollectionToResultsin classtigase.archive.db.AbstractMessageArchiveRepository<tigase.archive.db.JDBCMessageArchiveRepository.Criteria>
-
addMessageToResults
protected tigase.xml.Element addMessageToResults(java.util.List<tigase.xml.Element> msgs, tigase.archive.db.JDBCMessageArchiveRepository.Criteria crit, java.util.Date startTimestamp, tigase.archive.db.JDBCMessageArchiveRepository.Item item_, tigase.xml.Element msg)- Overrides:
addMessageToResultsin classtigase.archive.db.JDBCMessageArchiveRepository
-
getDataRepository
protected tigase.db.DataRepository getDataRepository()
-
generateHashOfMessage
protected byte[] generateHashOfMessage(tigase.archive.db.MessageArchiveRepository.Direction direction, tigase.xml.Element msg, java.util.Date ts, java.util.Map<java.lang.String,java.lang.Object> additionalData)- Overrides:
generateHashOfMessagein classtigase.archive.db.AbstractMessageArchiveRepository<tigase.archive.db.JDBCMessageArchiveRepository.Criteria>
-
-