Package io.jmix.search.index.queue.impl
Class EnqueueingSessionManager
java.lang.Object
io.jmix.search.index.queue.impl.EnqueueingSessionManager
@NullMarked
@Component("search_EnqueueingSessionManager")
public class EnqueueingSessionManager
extends Object
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static interface -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected DataManagerprotected IndexConfigurationManagerprotected IndexingLockerprotected Metadataprotected MetadataTools -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected StringconvertOrderingValueToString(Object orderingValue) protected booleanexecuteManagementAction(String entityName, int lockTimeoutMs, EnqueueingSessionManager.SessionManagementAction action) @Nullable EnqueueingSessionGets next active session.@Nullable EnqueueingSessiongetSession(String entityName) Gets session for provided entity.booleaninitSession(String entityName) Initializes session for provided entity.protected Optional<EnqueueingSession> loadEnqueueingSessionEntityByEntityName(String entityName) Gets entity names of all existing enqueueing sessions.protected Optional<EnqueueingSession> reloadSession(EnqueueingSession session) booleanremoveSession(EnqueueingSession session) Removes provided session.booleanremoveSession(String entityName) Removes session by provided entity name.protected MetaPropertyresolveOrderingProperty(MetaClass entityClass) booleanresumeSession(String entityName) Resumes previously suspended session.booleansuspendSession(String entityName) Prevents session from being executed.voidupdateOrderingValue(EnqueueingSession session, @Nullable Object lastOrderingValue) Updates provided session with provided ordering value.
-
Field Details
-
dataManager
-
metadata
-
metadataTools
-
indexConfigurationManager
-
locker
-
-
Constructor Details
-
EnqueueingSessionManager
public EnqueueingSessionManager()
-
-
Method Details
-
initSession
Initializes session for provided entity. Existing session will be removed and created again.- Parameters:
entityName- entity name- Returns:
- true if operation was successfully performed, false otherwise
-
loadEntityNamesOfSessions
Gets entity names of all existing enqueueing sessions.- Returns:
- list of entity names
-
suspendSession
Prevents session from being executed.- Parameters:
entityName- entity name- Returns:
- true if operation was successfully performed, false otherwise
-
resumeSession
Resumes previously suspended session.- Parameters:
entityName- entity name- Returns:
- true if operation was successfully performed, false otherwise
-
removeSession
Removes provided session.- Parameters:
session- session- Returns:
- true if operation was successfully performed, false otherwise
-
removeSession
Removes session by provided entity name.- Parameters:
entityName- entity name- Returns:
- true if operation was successfully performed, false otherwise
-
getSession
Gets session for provided entity.- Parameters:
entityName- entity name- Returns:
- existing session or null if it doesn't exist
-
getNextActiveSession
Gets next active session.- Returns:
- some active session or null if there are no sessions at all
-
updateOrderingValue
Updates provided session with provided ordering value.- Parameters:
session- sessionlastOrderingValue- value
-
reloadSession
-
loadEnqueueingSessionEntityByEntityName
-
resolveOrderingProperty
-
executeManagementAction
protected boolean executeManagementAction(String entityName, int lockTimeoutMs, EnqueueingSessionManager.SessionManagementAction action) -
convertOrderingValueToString
-