Package tigase.pubsub.repository
Class PubSubDAOJDBC
- java.lang.Object
-
- tigase.pubsub.repository.PubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
-
- tigase.pubsub.repository.PubSubDAOJDBC
-
- All Implemented Interfaces:
tigase.db.DataSourceAware<tigase.db.DataRepository>
,tigase.db.util.RepositoryVersionAware
,IPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
public class PubSubDAOJDBC extends PubSubDAO<java.lang.Long,tigase.db.DataRepository,Query> implements tigase.db.util.RepositoryVersionAware
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class tigase.pubsub.repository.PubSubDAO
PubSubDAO.MAMItem
-
-
Constructor Summary
Constructors Constructor Description PubSubDAOJDBC()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addMAMItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String uuid, tigase.xml.Element message, java.lang.String itemId)
protected java.lang.Integer
countMAMItems(Query query, java.lang.Long nodeId)
java.lang.Long
createNode(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName, tigase.xmpp.jid.BareJID ownerJid, AbstractNodeConfig nodeConfig, NodeType nodeType, java.lang.Long collectionId, boolean autocreateService)
void
createService(tigase.xmpp.jid.BareJID serviceJID, boolean isPublic)
void
deleteItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String id)
void
deleteNode(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId)
void
deleteService(tigase.xmpp.jid.BareJID serviceJid)
java.lang.String[]
getAllNodesList(tigase.xmpp.jid.BareJID serviceJid)
java.lang.String[]
getChildNodes(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName)
IItems.IItem
getItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String id)
java.util.List<IItems.IItem>
getItems(tigase.xmpp.jid.BareJID serviceJid, java.util.List<java.lang.Long> nodesIds, java.util.Date afterDate, java.util.Date beforeDate, tigase.xmpp.rsm.RSM rsm, CollectionItemsOrdering ordering)
java.lang.String[]
getItemsIds(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, CollectionItemsOrdering order)
java.lang.String[]
getItemsIdsSince(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, CollectionItemsOrdering order, java.util.Date since)
java.util.List<IItems.ItemMeta>
getItemsMeta(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String nodeName)
protected java.lang.Integer
getMAMItemPosition(Query query, java.lang.Long nodeId, java.lang.String itemUuid)
java.util.Map<tigase.xmpp.jid.BareJID,UsersAffiliation>
getNodeAffiliations(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId)
NodeMeta<java.lang.Long>
getNodeMeta(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName)
long
getNodesCount(tigase.xmpp.jid.BareJID serviceJid)
java.lang.String[]
getNodesList(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName)
java.util.Map<tigase.xmpp.jid.BareJID,UsersSubscription>
getNodeSubscriptions(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId)
java.util.List<tigase.xmpp.jid.BareJID>
getServices(tigase.xmpp.jid.BareJID domain, java.lang.Boolean isPublic)
java.util.Map<java.lang.String,UsersAffiliation>
getUserAffiliations(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid)
java.util.Map<java.lang.String,UsersSubscription>
getUserSubscriptions(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid)
protected void
offerDao(tigase.pubsub.repository.PubSubDAOJDBC.HashCode hash)
void
queryItems(Query query, java.lang.Long nodeId, tigase.xmpp.mam.MAMRepository.ItemHandler<Query,tigase.xmpp.mam.MAMRepository.Item> itemHandler)
void
removeNodeSubscription(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, tigase.xmpp.jid.BareJID jid)
void
setDataSource(tigase.db.DataRepository dataSource)
protected int
setStatementParamsForMAM(java.sql.PreparedStatement st, Query query, java.lang.Long nodeId)
protected tigase.pubsub.repository.PubSubDAOJDBC.HashCode
takeDao()
void
updateNodeAffiliation(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String nodeName, UsersAffiliation affiliation)
void
updateNodeConfig(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String serializedData, java.lang.Long collectionId)
void
updateNodeSubscription(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String nodeName, UsersSubscription subscription)
void
writeItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, long timeInMilis, java.lang.String id, java.lang.String publisher, tigase.xml.Element item, java.lang.String uuid)
-
Methods inherited from class tigase.pubsub.repository.PubSubDAO
calculateOffsetAndPosition, destroy, getNodeConfig, getUserRoster, itemDataToElement, itemDataToElement, parseConfig, parseConfigForm
-
-
-
-
Method Detail
-
createNode
public java.lang.Long createNode(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName, tigase.xmpp.jid.BareJID ownerJid, AbstractNodeConfig nodeConfig, NodeType nodeType, java.lang.Long collectionId, boolean autocreateService) throws tigase.component.exceptions.RepositoryException
- Specified by:
createNode
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
createService
public void createService(tigase.xmpp.jid.BareJID serviceJID, boolean isPublic) throws tigase.component.exceptions.RepositoryException
- Specified by:
createService
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getServices
public java.util.List<tigase.xmpp.jid.BareJID> getServices(tigase.xmpp.jid.BareJID domain, java.lang.Boolean isPublic) throws tigase.component.exceptions.RepositoryException
- Specified by:
getServices
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
deleteItem
public void deleteItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String id) throws tigase.component.exceptions.RepositoryException
- Specified by:
deleteItem
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
deleteNode
public void deleteNode(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId) throws tigase.component.exceptions.RepositoryException
- Specified by:
deleteNode
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getAllNodesList
public java.lang.String[] getAllNodesList(tigase.xmpp.jid.BareJID serviceJid) throws tigase.component.exceptions.RepositoryException
- Specified by:
getAllNodesList
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getChildNodes
public java.lang.String[] getChildNodes(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName) throws tigase.component.exceptions.RepositoryException
- Specified by:
getChildNodes
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getItem
public IItems.IItem getItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String id) throws tigase.component.exceptions.RepositoryException
- Specified by:
getItem
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getItemsIds
public java.lang.String[] getItemsIds(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, CollectionItemsOrdering order) throws tigase.component.exceptions.RepositoryException
- Specified by:
getItemsIds
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getItemsIdsSince
public java.lang.String[] getItemsIdsSince(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, CollectionItemsOrdering order, java.util.Date since) throws tigase.component.exceptions.RepositoryException
- Specified by:
getItemsIdsSince
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getItems
public java.util.List<IItems.IItem> getItems(tigase.xmpp.jid.BareJID serviceJid, java.util.List<java.lang.Long> nodesIds, java.util.Date afterDate, java.util.Date beforeDate, tigase.xmpp.rsm.RSM rsm, CollectionItemsOrdering ordering) throws tigase.component.exceptions.RepositoryException
- Specified by:
getItems
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getItemsMeta
public java.util.List<IItems.ItemMeta> getItemsMeta(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String nodeName) throws tigase.component.exceptions.RepositoryException
- Specified by:
getItemsMeta
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getNodeAffiliations
public java.util.Map<tigase.xmpp.jid.BareJID,UsersAffiliation> getNodeAffiliations(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId) throws tigase.component.exceptions.RepositoryException
- Specified by:
getNodeAffiliations
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getNodeMeta
public NodeMeta<java.lang.Long> getNodeMeta(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName) throws tigase.component.exceptions.RepositoryException
- Specified by:
getNodeMeta
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getNodesList
public java.lang.String[] getNodesList(tigase.xmpp.jid.BareJID serviceJid, java.lang.String nodeName) throws tigase.component.exceptions.RepositoryException
- Specified by:
getNodesList
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getNodesCount
public long getNodesCount(tigase.xmpp.jid.BareJID serviceJid) throws tigase.component.exceptions.RepositoryException
- Specified by:
getNodesCount
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getNodeSubscriptions
public java.util.Map<tigase.xmpp.jid.BareJID,UsersSubscription> getNodeSubscriptions(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId) throws tigase.component.exceptions.RepositoryException
- Specified by:
getNodeSubscriptions
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getUserAffiliations
public java.util.Map<java.lang.String,UsersAffiliation> getUserAffiliations(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid) throws tigase.component.exceptions.RepositoryException
- Specified by:
getUserAffiliations
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
getUserSubscriptions
public java.util.Map<java.lang.String,UsersSubscription> getUserSubscriptions(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid) throws tigase.component.exceptions.RepositoryException
- Specified by:
getUserSubscriptions
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
addMAMItem
public void addMAMItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String uuid, tigase.xml.Element message, java.lang.String itemId) throws tigase.component.exceptions.RepositoryException
- Specified by:
addMAMItem
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
queryItems
public void queryItems(Query query, java.lang.Long nodeId, tigase.xmpp.mam.MAMRepository.ItemHandler<Query,tigase.xmpp.mam.MAMRepository.Item> itemHandler) throws tigase.component.exceptions.RepositoryException, tigase.component.exceptions.ComponentException
- Specified by:
queryItems
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
tigase.component.exceptions.ComponentException
-
removeNodeSubscription
public void removeNodeSubscription(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, tigase.xmpp.jid.BareJID jid) throws tigase.component.exceptions.RepositoryException
- Specified by:
removeNodeSubscription
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
deleteService
public void deleteService(tigase.xmpp.jid.BareJID serviceJid) throws tigase.component.exceptions.RepositoryException
- Specified by:
deleteService
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
updateNodeAffiliation
public void updateNodeAffiliation(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String nodeName, UsersAffiliation affiliation) throws tigase.component.exceptions.RepositoryException
- Specified by:
updateNodeAffiliation
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
updateNodeConfig
public void updateNodeConfig(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String serializedData, java.lang.Long collectionId) throws tigase.component.exceptions.RepositoryException
- Specified by:
updateNodeConfig
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
updateNodeSubscription
public void updateNodeSubscription(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, java.lang.String nodeName, UsersSubscription subscription) throws tigase.component.exceptions.RepositoryException
- Specified by:
updateNodeSubscription
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
writeItem
public void writeItem(tigase.xmpp.jid.BareJID serviceJid, java.lang.Long nodeId, long timeInMilis, java.lang.String id, java.lang.String publisher, tigase.xml.Element item, java.lang.String uuid) throws tigase.component.exceptions.RepositoryException
- Specified by:
writeItem
in interfaceIPubSubDAO<java.lang.Long,tigase.db.DataRepository,Query>
- Throws:
tigase.component.exceptions.RepositoryException
-
setDataSource
public void setDataSource(tigase.db.DataRepository dataSource)
- Specified by:
setDataSource
in interfacetigase.db.DataSourceAware<tigase.db.DataRepository>
-
countMAMItems
protected java.lang.Integer countMAMItems(Query query, java.lang.Long nodeId) throws tigase.db.TigaseDBException
- Throws:
tigase.db.TigaseDBException
-
getMAMItemPosition
protected java.lang.Integer getMAMItemPosition(Query query, java.lang.Long nodeId, java.lang.String itemUuid) throws tigase.component.exceptions.RepositoryException, tigase.component.exceptions.ComponentException
- Throws:
tigase.component.exceptions.RepositoryException
tigase.component.exceptions.ComponentException
-
setStatementParamsForMAM
protected int setStatementParamsForMAM(java.sql.PreparedStatement st, Query query, java.lang.Long nodeId) throws java.sql.SQLException
- Throws:
java.sql.SQLException
-
takeDao
protected tigase.pubsub.repository.PubSubDAOJDBC.HashCode takeDao()
-
offerDao
protected void offerDao(tigase.pubsub.repository.PubSubDAOJDBC.HashCode hash)
-
-