public interface ConversationTagProvider
Conversation
as well as if relevant
data of a conversation is changed later on, which includes:
There might be a chain of tag providers each one of it providing tags to be added to the list of tags of the
conversation. Those tags might be used later on for fast filtering, permissions, etc.
Tag providers need to have a particular order in which they are invoked as some of them might depend on other tags
already being present.Modifier and Type | Field and Description |
---|---|
static String |
EVALUATED_TAGS_PREFIX
The tag prefix needed for evaluated tags created by any of the registered providers.
|
static int |
PRIORITY_CUSTOM_DEPENDENCIES
Use this priority if the tag provider is depending on some custom tag providers, which means all custom tag
providers should use priorities between
PRIORITY_DEFAULT_DEPENDENCIES and PRIORITY_CUSTOM_DEPENDENCIES . |
static int |
PRIORITY_DEFAULT_DEPENDENCIES
Use this priority if the tag provider is only depending on the default tag providers (e.g.
|
static int |
PRIORITY_NO_DEPENDENCIES
Use this priority if the tag provider does not have any dependencies on others.
|
Modifier and Type | Method and Description |
---|---|
void |
evaluateConversationTags(ConversationTagEvaluationContext context)
Invoked whenever a new conversation is created or some specific fields are changed in order to evaluate tags to
be added to the conversation so it might be filtered for them or they might be used later on for evaluating
permissions, specific behavior etc.
|
int |
getPriority()
Returns the priority of this tag provider to make sure they are invoked in the correct order if they have
dependencies on others.
|
static final String EVALUATED_TAGS_PREFIX
static final int PRIORITY_NO_DEPENDENCIES
static final int PRIORITY_DEFAULT_DEPENDENCIES
static final int PRIORITY_CUSTOM_DEPENDENCIES
PRIORITY_DEFAULT_DEPENDENCIES
and PRIORITY_CUSTOM_DEPENDENCIES
.void evaluateConversationTags(ConversationTagEvaluationContext context)
context
- the context to add tags and also to use to request information like users or groupsint getPriority()
PRIORITY_NO_DEPENDENCIES
, PRIORITY_DEFAULT_DEPENDENCIES
or PRIORITY_CUSTOM_DEPENDENCIES
Copyright © 2019. All rights reserved.