Package tigase.pubsub.repository
Class PubSubDAOPool<T,S extends tigase.db.DataSource,Q extends PubSubQuery>
java.lang.Object
tigase.db.beans.MDRepositoryBean<T>
tigase.db.beans.MDRepositoryBeanWithStatistics<IPubSubDAO<T,S,Q>>
tigase.pubsub.repository.PubSubDAOPool<T,S,Q>
- All Implemented Interfaces:
tigase.db.DataSourceAware<S>
,tigase.kernel.beans.Initializable
,tigase.kernel.beans.RegistrarBean
,tigase.kernel.beans.RegistrarBeanWithDefaultBeanClass
,tigase.kernel.beans.UnregisterAware
,IExtendedPubSubDAO<T,
,S, Q> IPubSubDAO<T,
,S, Q> tigase.stats.ComponentStatisticsProvider
,tigase.stats.StatisticsProviderIfc
@Bean(name="dao",
parent=PubSubComponent.class,
active=true)
public class PubSubDAOPool<T,S extends tigase.db.DataSource,Q extends PubSubQuery>
extends tigase.db.beans.MDRepositoryBeanWithStatistics<IPubSubDAO<T,S,Q>>
implements IExtendedPubSubDAO<T,S,Q>
-
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.SelectorType
-
Field Summary
Fields inherited from class tigase.db.beans.MDRepositoryBean
aliases, dataSourceSelection
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addMAMItem
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String uuid, tigase.xml.Element message, String itemId) boolean
createNode
(tigase.xmpp.jid.BareJID serviceJid, String nodeName, tigase.xmpp.jid.BareJID ownerJid, AbstractNodeConfig nodeConfig, NodeType nodeType, T collectionId, boolean autocreateService) void
createService
(tigase.xmpp.jid.BareJID serviceJID, boolean isPublic) void
deleteItem
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String id) void
deleteNode
(tigase.xmpp.jid.BareJID serviceJid, T nodeId) void
deleteService
(tigase.xmpp.jid.BareJID serviceJid) void
destroy()
protected Class<? extends IPubSubDAO<T,
S, Q>> findClassForDataSource
(tigase.db.DataSource dataSource) String[]
getAllNodesList
(tigase.xmpp.jid.BareJID serviceJid) String[]
getChildNodes
(tigase.xmpp.jid.BareJID serviceJid, String nodeName) Class<?>
getItems
(tigase.xmpp.jid.BareJID serviceJid, List<T> nodesIds, Date after, Date before, tigase.xmpp.rsm.RSM rsm, CollectionItemsOrdering ordering) String[]
getItemsIds
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, CollectionItemsOrdering order) String[]
getItemsIdsSince
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, CollectionItemsOrdering order, Date since) getItemsMeta
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String nodeName) tigase.xmpp.mam.MAMRepository.Item
getMAMItem
(tigase.xmpp.jid.BareJID serviceJID, T nodeId, String stableId) Map<tigase.xmpp.jid.BareJID,
UsersAffiliation> getNodeAffiliations
(tigase.xmpp.jid.BareJID serviceJid, T nodeId) getNodeMeta
(tigase.xmpp.jid.BareJID serviceJid, String nodeName) long
getNodesCount
(tigase.xmpp.jid.BareJID serviceJid) String[]
getNodesList
(tigase.xmpp.jid.BareJID serviceJid, String nodeName) Map<tigase.xmpp.jid.BareJID,
UsersSubscription> getNodeSubscriptions
(tigase.xmpp.jid.BareJID serviceJid, T nodeId) protected String
getPoolDetails
(tigase.xmpp.jid.BareJID serviceJid) Deprecated.List<tigase.xmpp.jid.BareJID>
getServices
(tigase.xmpp.jid.BareJID domain, Boolean isPublic) getUserAffiliations
(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid) Map<tigase.xmpp.jid.BareJID,
tigase.xmpp.impl.roster.RosterElement> getUserRoster
(tigase.xmpp.jid.BareJID owner) getUserSubscriptions
(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid) newQuery
(tigase.xmpp.jid.BareJID serviceJid) protected void
offerDao
(tigase.xmpp.jid.BareJID serviceJid, IPubSubDAO dao) Deprecated.parseConfig
(String nodeName, String cfgData) void
queryItems
(Q query, T nodeId, tigase.xmpp.mam.MAMRepository.ItemHandler<Q, tigase.xmpp.mam.MAMRepository.Item> itemHandler) void
removeNodeSubscription
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, tigase.xmpp.jid.BareJID jid) void
setDataSource
(tigase.db.DataSource dataSource) takeDao
(tigase.xmpp.jid.BareJID serviceJid) void
updateMAMItem
(tigase.xmpp.jid.BareJID serviceJID, T nodeId, String stableId, tigase.xml.Element message) void
updateNodeAffiliation
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String nodeName, UsersAffiliation affiliation) void
updateNodeConfig
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String serializedData, T collectionId) void
updateNodeSubscription
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String nodeName, UsersSubscription subscription) void
writeItem
(tigase.xmpp.jid.BareJID serviceJid, T nodeId, long timeInMilis, String id, String publisher, tigase.xml.Element item, String uuid) Methods inherited from class tigase.db.beans.MDRepositoryBeanWithStatistics
everyHour, everyMinute, everySecond, getRepositories, getRepository, getStatistics, setStatisticsEnabled, updateDataSourceAware, wrapInProxy
Methods inherited from class tigase.db.beans.MDRepositoryBean
beforeUnregister, getName, initialize, initializeRepository, onDataSourceChange, register, registerIfNotExists, repositoriesStream, setDataSourceBean, unregister
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface tigase.pubsub.repository.IPubSubDAO
newQuery
-
Constructor Details
-
PubSubDAOPool
public PubSubDAOPool()
-
-
Method Details
-
belongsTo
- Specified by:
belongsTo
in interfacetigase.stats.ComponentStatisticsProvider
-
createNode
public T createNode(tigase.xmpp.jid.BareJID serviceJid, String nodeName, tigase.xmpp.jid.BareJID ownerJid, AbstractNodeConfig nodeConfig, NodeType nodeType, T collectionId, boolean autocreateService) throws tigase.component.exceptions.RepositoryException - Specified by:
createNode
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - 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<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getMAMItem
public tigase.xmpp.mam.MAMRepository.Item getMAMItem(tigase.xmpp.jid.BareJID serviceJID, T nodeId, String stableId) throws tigase.component.exceptions.RepositoryException - Specified by:
getMAMItem
in interfaceIExtendedPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
updateMAMItem
public void updateMAMItem(tigase.xmpp.jid.BareJID serviceJID, T nodeId, String stableId, tigase.xml.Element message) throws tigase.component.exceptions.RepositoryException - Specified by:
updateMAMItem
in interfaceIExtendedPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getServices
public List<tigase.xmpp.jid.BareJID> getServices(tigase.xmpp.jid.BareJID domain, Boolean isPublic) throws tigase.component.exceptions.RepositoryException - Specified by:
getServices
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
deleteItem
public void deleteItem(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String id) throws tigase.component.exceptions.RepositoryException - Specified by:
deleteItem
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
deleteNode
public void deleteNode(tigase.xmpp.jid.BareJID serviceJid, T nodeId) throws tigase.component.exceptions.RepositoryException - Specified by:
deleteNode
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
destroy
public void destroy()- Specified by:
destroy
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery>
-
getAllNodesList
public String[] getAllNodesList(tigase.xmpp.jid.BareJID serviceJid) throws tigase.component.exceptions.RepositoryException - Specified by:
getAllNodesList
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getChildNodes
public String[] getChildNodes(tigase.xmpp.jid.BareJID serviceJid, String nodeName) throws tigase.component.exceptions.RepositoryException - Specified by:
getChildNodes
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getItem
public IItems.IItem getItem(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String id) throws tigase.component.exceptions.RepositoryException - Specified by:
getItem
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getItems
public List<IItems.IItem> getItems(tigase.xmpp.jid.BareJID serviceJid, List<T> nodesIds, Date after, Date before, tigase.xmpp.rsm.RSM rsm, CollectionItemsOrdering ordering) throws tigase.component.exceptions.RepositoryException - Specified by:
getItems
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getItemsIds
public String[] getItemsIds(tigase.xmpp.jid.BareJID serviceJid, T nodeId, CollectionItemsOrdering order) throws tigase.component.exceptions.RepositoryException - Specified by:
getItemsIds
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getItemsIdsSince
public String[] getItemsIdsSince(tigase.xmpp.jid.BareJID serviceJid, T nodeId, CollectionItemsOrdering order, Date since) throws tigase.component.exceptions.RepositoryException - Specified by:
getItemsIdsSince
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getItemsMeta
public List<IItems.ItemMeta> getItemsMeta(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String nodeName) throws tigase.component.exceptions.RepositoryException - Specified by:
getItemsMeta
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getNodeAffiliations
public Map<tigase.xmpp.jid.BareJID,UsersAffiliation> getNodeAffiliations(tigase.xmpp.jid.BareJID serviceJid, T nodeId) throws tigase.component.exceptions.RepositoryException - Specified by:
getNodeAffiliations
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getNodeMeta
public INodeMeta<T> getNodeMeta(tigase.xmpp.jid.BareJID serviceJid, String nodeName) throws tigase.component.exceptions.RepositoryException - Specified by:
getNodeMeta
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getNodesCount
public long getNodesCount(tigase.xmpp.jid.BareJID serviceJid) throws tigase.component.exceptions.RepositoryException - Specified by:
getNodesCount
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getNodesList
public String[] getNodesList(tigase.xmpp.jid.BareJID serviceJid, String nodeName) throws tigase.component.exceptions.RepositoryException - Specified by:
getNodesList
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getNodeSubscriptions
public Map<tigase.xmpp.jid.BareJID,UsersSubscription> getNodeSubscriptions(tigase.xmpp.jid.BareJID serviceJid, T nodeId) throws tigase.component.exceptions.RepositoryException - Specified by:
getNodeSubscriptions
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getUserAffiliations
public Map<String,UsersAffiliation> getUserAffiliations(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid) throws tigase.component.exceptions.RepositoryException - Specified by:
getUserAffiliations
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getUserRoster
public Map<tigase.xmpp.jid.BareJID,tigase.xmpp.impl.roster.RosterElement> getUserRoster(tigase.xmpp.jid.BareJID owner) throws tigase.component.exceptions.RepositoryException - Specified by:
getUserRoster
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
getUserSubscriptions
public Map<String,UsersSubscription> getUserSubscriptions(tigase.xmpp.jid.BareJID serviceJid, tigase.xmpp.jid.BareJID jid) throws tigase.component.exceptions.RepositoryException - Specified by:
getUserSubscriptions
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
parseConfig
public AbstractNodeConfig parseConfig(String nodeName, String cfgData) throws tigase.component.exceptions.RepositoryException - Specified by:
parseConfig
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
addMAMItem
public void addMAMItem(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String uuid, tigase.xml.Element message, String itemId) throws tigase.component.exceptions.RepositoryException - Specified by:
addMAMItem
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
newQuery
- Specified by:
newQuery
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery>
-
queryItems
public void queryItems(Q query, T nodeId, tigase.xmpp.mam.MAMRepository.ItemHandler<Q, tigase.xmpp.mam.MAMRepository.Item> itemHandler) throws tigase.component.exceptions.RepositoryException, tigase.component.exceptions.ComponentException- Specified by:
queryItems
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
tigase.component.exceptions.ComponentException
-
removeNodeSubscription
public void removeNodeSubscription(tigase.xmpp.jid.BareJID serviceJid, T nodeId, tigase.xmpp.jid.BareJID jid) throws tigase.component.exceptions.RepositoryException - Specified by:
removeNodeSubscription
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
takeDao
-
updateNodeAffiliation
public void updateNodeAffiliation(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String nodeName, UsersAffiliation affiliation) throws tigase.component.exceptions.RepositoryException - Specified by:
updateNodeAffiliation
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
updateNodeConfig
public void updateNodeConfig(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String serializedData, T collectionId) throws tigase.component.exceptions.RepositoryException - Specified by:
updateNodeConfig
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
updateNodeSubscription
public void updateNodeSubscription(tigase.xmpp.jid.BareJID serviceJid, T nodeId, String nodeName, UsersSubscription subscription) throws tigase.component.exceptions.RepositoryException - Specified by:
updateNodeSubscription
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
writeItem
public void writeItem(tigase.xmpp.jid.BareJID serviceJid, T nodeId, long timeInMilis, String id, String publisher, tigase.xml.Element item, String uuid) throws tigase.component.exceptions.RepositoryException - Specified by:
writeItem
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
deleteService
public void deleteService(tigase.xmpp.jid.BareJID serviceJid) throws tigase.component.exceptions.RepositoryException - Specified by:
deleteService
in interfaceIPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery> - Throws:
tigase.component.exceptions.RepositoryException
-
setDataSource
public void setDataSource(tigase.db.DataSource dataSource) - Specified by:
setDataSource
in interfacetigase.db.DataSourceAware<T>
-
getDefaultBeanClass
- Specified by:
getDefaultBeanClass
in interfacetigase.kernel.beans.RegistrarBeanWithDefaultBeanClass
-
getPoolDetails
Deprecated. -
offerDao
Deprecated. -
findClassForDataSource
protected Class<? extends IPubSubDAO<T,S, findClassForDataSourceQ>> (tigase.db.DataSource dataSource) throws tigase.db.DBInitException - Specified by:
findClassForDataSource
in classtigase.db.beans.MDRepositoryBean<IPubSubDAO<T,
S extends tigase.db.DataSource, Q extends PubSubQuery>> - Throws:
tigase.db.DBInitException
-