Class MessageQueryImpl
java.lang.Object
org.flowable.common.engine.impl.db.ListQueryParameterObject
org.flowable.common.engine.impl.query.AbstractQuery<MessageQuery,Message>
com.flowable.engage.engine.impl.message.MessageQueryImpl
- All Implemented Interfaces:
MessageQuery
,java.io.Serializable
,org.flowable.common.engine.api.query.CacheAwareQuery<MessageEntity>
,org.flowable.common.engine.api.query.Query<MessageQuery,Message>
,org.flowable.common.engine.impl.interceptor.Command<java.lang.Object>
public class MessageQueryImpl extends org.flowable.common.engine.impl.query.AbstractQuery<MessageQuery,Message> implements MessageQuery, org.flowable.common.engine.api.query.CacheAwareQuery<MessageEntity>
- Author:
- Filip Hrisafov
- See Also:
- Serialized Form
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MessageQueryImpl.Range
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Collection<java.lang.String>
accessibleByGroups
protected java.lang.String
accessibleByUser
protected java.lang.String
actionInstanceId
protected boolean
bothAccessibleByUserAndGroups
protected Category
category
protected java.lang.String
conversationId
protected java.util.Date
createdAfter
protected java.util.Date
createdAfterOrEqual
protected java.util.Date
createdBefore
protected java.util.Date
createdBeforeOrEqual
protected java.lang.String
externalId
protected java.lang.String
id
protected boolean
includeMessageAudits
protected boolean
includeOnlyStickyMessages
protected boolean
includePrivate
protected boolean
includeSticky
protected java.lang.String
isNotType
protected java.util.Collection<java.lang.String>
notSenderIds
protected java.util.List<MessageQueryImpl.Range>
ranges
protected java.lang.String
referenceId
protected java.lang.String
referenceType
protected java.lang.String
senderId
protected java.util.Collection<java.lang.String>
senderIds
protected java.lang.String
subType
protected java.lang.String
type
-
Constructor Summary
Constructors Constructor Description MessageQueryImpl(org.flowable.common.engine.impl.interceptor.CommandExecutor commandExecutor)
-
Method Summary
Modifier and Type Method Description MessageQuery
accessibleByUserOrGroups(java.lang.String userId, java.util.Collection<java.lang.String> groupIds)
Query all messages for the given user (it will also fetch private messages for that user) or the given groups.MessageQuery
actionInstanceId(java.lang.String actionInstanceId)
MessageQuery
category(Category category)
protected void
computeAccessibleRanges(org.flowable.common.engine.impl.interceptor.CommandContext commandContext)
MessageQuery
conversationId(java.lang.String conversationId)
MessageQuery
createdAfter(java.util.Date createdAfter)
MessageQuery
createdAfterOrEqual(java.util.Date createdAfterOrEqual)
MessageQuery
createdBefore(java.util.Date createdBefore)
MessageQuery
createdBeforeOrEqual(java.util.Date createdBeforeOrEqual)
long
executeCount(org.flowable.common.engine.impl.interceptor.CommandContext commandContext)
java.util.List<Message>
executeList(org.flowable.common.engine.impl.interceptor.CommandContext commandContext)
MessageQuery
externalId(java.lang.String externalId)
java.lang.String
getAccessibleByUser()
java.lang.String
getActionInstanceId()
Category
getCategory()
java.lang.String
getConversationId()
java.util.Date
getCreatedAfter()
java.util.Date
getCreatedAfterOrEqual()
java.util.Date
getCreatedBefore()
java.util.Date
getCreatedBeforeOrEqual()
java.lang.String
getExternalId()
java.lang.String
getId()
java.util.Collection<java.lang.String>
getNotSenderIds()
java.lang.String
getOrderByColumns()
java.util.List<MessageQueryImpl.Range>
getRanges()
java.lang.String
getReferenceId()
java.lang.String
getReferenceType()
java.lang.String
getSenderId()
java.util.Collection<java.lang.String>
getSenderIds()
java.lang.String
getSubType()
MessageQuery
id(java.lang.String id)
MessageQuery
includeMessageAudits()
Include the message audits for the queried messagesMessageQuery
includeOnlyStickyMessages()
Query on sticky messages only.MessageQuery
includePrivate()
Query all messages (even private ones).MessageQuery
includeSticky()
Query on sticky messages.boolean
isBothAccessibleByUserAndGroups()
boolean
isFalse()
We can't usefalse
in SQL in a DB agnostic way.boolean
isIncludeMessageAudits()
boolean
isIncludePrivate()
boolean
isIncludeSticky()
MessageQuery
isNotType(java.lang.String notType)
boolean
isTrue()
MessageQuery
orderByConversationId()
MessageQuery
orderByCreationTime()
MessageQuery
referenceId(java.lang.String referenceId)
MessageQuery
referenceType(java.lang.String referenceType)
MessageQuery
senderId(java.lang.String senderId)
Query all messages send by the user with thesenderId
.MessageQuery
senderIdIn(java.util.Collection<java.lang.String> senderIds)
MessageQuery
senderIdNotIn(java.util.Collection<java.lang.String> notSenderIds)
MessageQuery
subType(java.lang.String subType)
MessageQuery
type(java.lang.String type)
Methods inherited from class org.flowable.common.engine.impl.query.AbstractQuery
asc, checkQueryOk, count, desc, direction, execute, executeSingleResult, list, listPage, orderBy, orderBy, setCommandExecutor, singleResult
Methods inherited from class org.flowable.common.engine.impl.db.ListQueryParameterObject
addOrder, getDatabaseType, getFirstResult, getFirstRow, getLastRow, getMaxResults, getNullHandlingColumn, getOrderBy, getOrderByColumnMap, getParameter, setDatabaseType, setFirstResult, setMaxResults, setNullHandlingColumn, setOrderByColumns, setParameter
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
id
protected java.lang.String id -
externalId
protected java.lang.String externalId -
category
-
conversationId
protected java.lang.String conversationId -
actionInstanceId
protected java.lang.String actionInstanceId -
createdAfter
protected java.util.Date createdAfter -
createdAfterOrEqual
protected java.util.Date createdAfterOrEqual -
createdBefore
protected java.util.Date createdBefore -
createdBeforeOrEqual
protected java.util.Date createdBeforeOrEqual -
accessibleByUser
protected java.lang.String accessibleByUser -
accessibleByGroups
protected java.util.Collection<java.lang.String> accessibleByGroups -
subType
protected java.lang.String subType -
type
protected java.lang.String type -
isNotType
protected java.lang.String isNotType -
referenceId
protected java.lang.String referenceId -
referenceType
protected java.lang.String referenceType -
senderId
protected java.lang.String senderId -
senderIds
protected java.util.Collection<java.lang.String> senderIds -
notSenderIds
protected java.util.Collection<java.lang.String> notSenderIds -
ranges
-
includePrivate
protected boolean includePrivate -
includeSticky
protected boolean includeSticky -
includeOnlyStickyMessages
protected boolean includeOnlyStickyMessages -
includeMessageAudits
protected boolean includeMessageAudits -
bothAccessibleByUserAndGroups
protected boolean bothAccessibleByUserAndGroups
-
-
Constructor Details
-
MessageQueryImpl
public MessageQueryImpl(org.flowable.common.engine.impl.interceptor.CommandExecutor commandExecutor)
-
-
Method Details
-
id
- Specified by:
id
in interfaceMessageQuery
-
externalId
- Specified by:
externalId
in interfaceMessageQuery
-
category
- Specified by:
category
in interfaceMessageQuery
-
conversationId
- Specified by:
conversationId
in interfaceMessageQuery
-
actionInstanceId
- Specified by:
actionInstanceId
in interfaceMessageQuery
-
createdAfter
- Specified by:
createdAfter
in interfaceMessageQuery
-
createdAfterOrEqual
- Specified by:
createdAfterOrEqual
in interfaceMessageQuery
-
createdBefore
- Specified by:
createdBefore
in interfaceMessageQuery
-
createdBeforeOrEqual
- Specified by:
createdBeforeOrEqual
in interfaceMessageQuery
-
accessibleByUserOrGroups
public MessageQuery accessibleByUserOrGroups(java.lang.String userId, java.util.Collection<java.lang.String> groupIds)Description copied from interface:MessageQuery
Query all messages for the given user (it will also fetch private messages for that user) or the given groups.MessageQuery.conversationId(String)
must bbe set when doing the query.- Specified by:
accessibleByUserOrGroups
in interfaceMessageQuery
- Parameters:
userId
- the id of the user for which messages should be queriedgroupIds
- the groups ids for which the messages should be queried
-
subType
- Specified by:
subType
in interfaceMessageQuery
-
type
- Specified by:
type
in interfaceMessageQuery
-
isNotType
- Specified by:
isNotType
in interfaceMessageQuery
-
referenceId
- Specified by:
referenceId
in interfaceMessageQuery
-
referenceType
- Specified by:
referenceType
in interfaceMessageQuery
-
senderId
Description copied from interface:MessageQuery
Query all messages send by the user with thesenderId
.- Specified by:
senderId
in interfaceMessageQuery
- Parameters:
senderId
- the id of the sender
-
senderIdIn
- Specified by:
senderIdIn
in interfaceMessageQuery
-
senderIdNotIn
- Specified by:
senderIdNotIn
in interfaceMessageQuery
-
includePrivate
Description copied from interface:MessageQuery
Query all messages (even private ones). IfMessageQuery.accessibleByUser(String)
is used than this has no effect.- Specified by:
includePrivate
in interfaceMessageQuery
-
includeSticky
Description copied from interface:MessageQuery
Query on sticky messages.- Specified by:
includeSticky
in interfaceMessageQuery
-
includeOnlyStickyMessages
Description copied from interface:MessageQuery
Query on sticky messages only.- Specified by:
includeOnlyStickyMessages
in interfaceMessageQuery
-
includeMessageAudits
Description copied from interface:MessageQuery
Include the message audits for the queried messages- Specified by:
includeMessageAudits
in interfaceMessageQuery
-
executeCount
public long executeCount(org.flowable.common.engine.impl.interceptor.CommandContext commandContext)- Specified by:
executeCount
in classorg.flowable.common.engine.impl.query.AbstractQuery<MessageQuery,Message>
-
executeList
public java.util.List<Message> executeList(org.flowable.common.engine.impl.interceptor.CommandContext commandContext)- Specified by:
executeList
in classorg.flowable.common.engine.impl.query.AbstractQuery<MessageQuery,Message>
-
computeAccessibleRanges
protected void computeAccessibleRanges(org.flowable.common.engine.impl.interceptor.CommandContext commandContext) -
getId
public java.lang.String getId()- Specified by:
getId
in interfaceorg.flowable.common.engine.api.query.CacheAwareQuery<MessageEntity>
-
getExternalId
public java.lang.String getExternalId() -
getCategory
-
getConversationId
public java.lang.String getConversationId() -
getActionInstanceId
public java.lang.String getActionInstanceId() -
getCreatedAfter
public java.util.Date getCreatedAfter() -
getCreatedAfterOrEqual
public java.util.Date getCreatedAfterOrEqual() -
getCreatedBefore
public java.util.Date getCreatedBefore() -
getCreatedBeforeOrEqual
public java.util.Date getCreatedBeforeOrEqual() -
getAccessibleByUser
public java.lang.String getAccessibleByUser() -
getSubType
public java.lang.String getSubType() -
getReferenceId
public java.lang.String getReferenceId() -
getReferenceType
public java.lang.String getReferenceType() -
getSenderId
public java.lang.String getSenderId() -
getSenderIds
public java.util.Collection<java.lang.String> getSenderIds() -
getNotSenderIds
public java.util.Collection<java.lang.String> getNotSenderIds() -
isIncludePrivate
public boolean isIncludePrivate() -
isIncludeSticky
public boolean isIncludeSticky() -
isIncludeMessageAudits
public boolean isIncludeMessageAudits() -
isBothAccessibleByUserAndGroups
public boolean isBothAccessibleByUserAndGroups() -
isFalse
public boolean isFalse()We can't usefalse
in SQL in a DB agnostic way. Therefore this method that always returnsfalse
- Returns:
false
-
isTrue
public boolean isTrue() -
getRanges
-
getOrderByColumns
public java.lang.String getOrderByColumns()- Overrides:
getOrderByColumns
in classorg.flowable.common.engine.impl.db.ListQueryParameterObject
-
orderByCreationTime
- Specified by:
orderByCreationTime
in interfaceMessageQuery
-
orderByConversationId
- Specified by:
orderByConversationId
in interfaceMessageQuery
-