Class EngageIndexingSchedulerImpl
java.lang.Object
com.flowable.engage.engine.impl.indexing.EngageIndexingSchedulerImpl
- All Implemented Interfaces:
EngageIndexingScheduler
public class EngageIndexingSchedulerImpl extends java.lang.Object implements EngageIndexingScheduler
-
Field Summary
Fields Modifier and Type Field Description protected EngageEngineConfiguration
engageEngineConfiguration
protected com.flowable.indexing.api.IndexingService
indexingService
static java.lang.String
MAPPING_TYPE_CONVERSATION
static java.lang.String
MAPPING_TYPE_MESSAGE
protected com.fasterxml.jackson.databind.ObjectMapper
objectMapper
static java.lang.String
TYPE_INDEX_CONVERSATION
static java.lang.String
TYPE_INDEX_MESSAGE
-
Constructor Summary
Constructors Constructor Description EngageIndexingSchedulerImpl(com.flowable.indexing.api.IndexingService indexingService, com.fasterxml.jackson.databind.ObjectMapper objectMapper, EngageEngineConfiguration engageEngineConfiguration)
-
Method Summary
Modifier and Type Method Description protected void
enhanceWithCachedUsers(java.util.Map<java.lang.String,com.flowable.core.idm.api.PlatformUser> participants, java.util.List<java.lang.String> requestedUserIds)
protected java.util.Map<java.lang.String,com.flowable.core.idm.api.PlatformUser>
extractParticipants(java.util.List<org.flowable.identitylink.service.impl.persistence.entity.IdentityLinkEntity> identityLinks, java.lang.String tenantId, boolean checkCache)
protected com.flowable.core.idm.api.PlatformIdentityService
getIdmIdentityService()
protected static boolean
isAcceptableType(org.flowable.identitylink.service.impl.persistence.entity.IdentityLinkEntity identityLink)
protected boolean
isIndexingDisabled()
boolean
isIndexingEnabled()
void
scheduleConversationDeletion(java.lang.String conversationId)
void
scheduleConversationIndexing(ConversationEntity conversationEntity)
void
scheduleConversationIndexing(ConversationEntity conversationEntity, java.lang.String index)
void
scheduleConversationLastMessageUpdate(ConversationEntity conversationEntity)
void
scheduleConversationsParticipantAvatarUpdate(com.flowable.core.idm.api.PlatformUser platformUser, com.flowable.core.idm.api.PlatformUser oldUser)
void
scheduleConversationsParticipantUpdate(com.flowable.core.idm.api.PlatformUser platformUser, com.flowable.core.idm.api.PlatformUser oldUser)
void
scheduleMessageDeletion(java.lang.String messageId)
void
scheduleMessageIndexing(ConversationEntity conversationEntity, MessageEntity messageEntity)
void
scheduleMessageIndexing(ConversationEntity conversationEntity, MessageEntity messageEntity, java.lang.String index)
void
scheduleMessageIndexing(MessageEntity messageEntity, java.util.Collection<java.lang.String> participantUserIds, java.util.Collection<java.lang.String> participantGroupIds, java.lang.String index)
void
scheduleMessagesParticipantAdded(ConversationEntity conversationEntity, java.util.Collection<java.lang.String> participantUserIds, java.util.Date joiningTime)
-
Field Details
-
TYPE_INDEX_MESSAGE
public static final java.lang.String TYPE_INDEX_MESSAGE- See Also:
- Constant Field Values
-
TYPE_INDEX_CONVERSATION
public static final java.lang.String TYPE_INDEX_CONVERSATION- See Also:
- Constant Field Values
-
MAPPING_TYPE_MESSAGE
public static final java.lang.String MAPPING_TYPE_MESSAGE- See Also:
- Constant Field Values
-
MAPPING_TYPE_CONVERSATION
public static final java.lang.String MAPPING_TYPE_CONVERSATION- See Also:
- Constant Field Values
-
indexingService
protected com.flowable.indexing.api.IndexingService indexingService -
objectMapper
protected com.fasterxml.jackson.databind.ObjectMapper objectMapper -
engageEngineConfiguration
-
-
Constructor Details
-
EngageIndexingSchedulerImpl
public EngageIndexingSchedulerImpl(com.flowable.indexing.api.IndexingService indexingService, com.fasterxml.jackson.databind.ObjectMapper objectMapper, EngageEngineConfiguration engageEngineConfiguration)
-
-
Method Details
-
scheduleMessageIndexing
public void scheduleMessageIndexing(ConversationEntity conversationEntity, MessageEntity messageEntity)- Specified by:
scheduleMessageIndexing
in interfaceEngageIndexingScheduler
-
scheduleMessageIndexing
public void scheduleMessageIndexing(ConversationEntity conversationEntity, MessageEntity messageEntity, java.lang.String index)- Specified by:
scheduleMessageIndexing
in interfaceEngageIndexingScheduler
-
scheduleMessageIndexing
public void scheduleMessageIndexing(MessageEntity messageEntity, java.util.Collection<java.lang.String> participantUserIds, java.util.Collection<java.lang.String> participantGroupIds, java.lang.String index)- Specified by:
scheduleMessageIndexing
in interfaceEngageIndexingScheduler
-
scheduleMessagesParticipantAdded
public void scheduleMessagesParticipantAdded(ConversationEntity conversationEntity, java.util.Collection<java.lang.String> participantUserIds, java.util.Date joiningTime)- Specified by:
scheduleMessagesParticipantAdded
in interfaceEngageIndexingScheduler
-
scheduleConversationIndexing
- Specified by:
scheduleConversationIndexing
in interfaceEngageIndexingScheduler
-
scheduleConversationIndexing
public void scheduleConversationIndexing(ConversationEntity conversationEntity, java.lang.String index)- Specified by:
scheduleConversationIndexing
in interfaceEngageIndexingScheduler
-
scheduleConversationLastMessageUpdate
- Specified by:
scheduleConversationLastMessageUpdate
in interfaceEngageIndexingScheduler
-
scheduleConversationsParticipantUpdate
public void scheduleConversationsParticipantUpdate(com.flowable.core.idm.api.PlatformUser platformUser, com.flowable.core.idm.api.PlatformUser oldUser)- Specified by:
scheduleConversationsParticipantUpdate
in interfaceEngageIndexingScheduler
-
scheduleConversationsParticipantAvatarUpdate
public void scheduleConversationsParticipantAvatarUpdate(com.flowable.core.idm.api.PlatformUser platformUser, com.flowable.core.idm.api.PlatformUser oldUser)- Specified by:
scheduleConversationsParticipantAvatarUpdate
in interfaceEngageIndexingScheduler
-
scheduleConversationDeletion
public void scheduleConversationDeletion(java.lang.String conversationId)- Specified by:
scheduleConversationDeletion
in interfaceEngageIndexingScheduler
-
scheduleMessageDeletion
public void scheduleMessageDeletion(java.lang.String messageId)- Specified by:
scheduleMessageDeletion
in interfaceEngageIndexingScheduler
-
getIdmIdentityService
protected com.flowable.core.idm.api.PlatformIdentityService getIdmIdentityService() -
isIndexingDisabled
protected boolean isIndexingDisabled() -
isIndexingEnabled
public boolean isIndexingEnabled() -
extractParticipants
protected java.util.Map<java.lang.String,com.flowable.core.idm.api.PlatformUser> extractParticipants(java.util.List<org.flowable.identitylink.service.impl.persistence.entity.IdentityLinkEntity> identityLinks, java.lang.String tenantId, boolean checkCache) -
enhanceWithCachedUsers
protected void enhanceWithCachedUsers(java.util.Map<java.lang.String,com.flowable.core.idm.api.PlatformUser> participants, java.util.List<java.lang.String> requestedUserIds) -
isAcceptableType
protected static boolean isAcceptableType(org.flowable.identitylink.service.impl.persistence.entity.IdentityLinkEntity identityLink)
-