Index
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form
A
- accept(AgentExecutionEvent) - Method in class at.aimon.session.web.internal.SessionEventRelay
- AgentExecutionContext lifecycle (IMPORTANT) - Search tag in interface at.aimon.session.web.AgentSessionOpener
- Section
- agentRef(String) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- agentRef(String) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- AgentSessionOpener - Interface in at.aimon.session.web
-
Strategy used by
LocalSessionCacheto lazily open anAgentSession. - at.aimon.session.web - package at.aimon.session.web
-
Web-facing agent session manager primitives.
- at.aimon.session.web.builder - package at.aimon.session.web.builder
- at.aimon.session.web.exception - package at.aimon.session.web.exception
- at.aimon.session.web.inbox - package at.aimon.session.web.inbox
- at.aimon.session.web.internal - package at.aimon.session.web.internal
- at.aimon.session.web.metrics - package at.aimon.session.web.metrics
- at.aimon.session.web.spi - package at.aimon.session.web.spi
- at.aimon.session.web.spi.inmemory - package at.aimon.session.web.spi.inmemory
B
- BindingResolver - Class in at.aimon.session.web.internal
-
Resolves and validates the
agentRefbound to aConversationId. - BindingResolver(ConversationRepository) - Constructor for class at.aimon.session.web.internal.BindingResolver
- build() - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- build() - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- build() - Method in class at.aimon.session.web.spi.ConversationSignal.Builder
- build() - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- build() - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- builder() - Static method in class at.aimon.session.web.inbox.InboundMessage
- builder() - Static method in class at.aimon.session.web.spi.ConversationSignal
- builder() - Static method in class at.aimon.session.web.spi.IdempotencyEntry
- builder() - Static method in interface at.aimon.session.web.WebAgentSessionManager
-
Build a new manager.
- builder() - Static method in class at.aimon.session.web.WebSubmitRequest
C
- Canonical implementation - Search tag in interface at.aimon.session.web.AgentSessionOpener
- Section
- close() - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- close() - Method in class at.aimon.session.web.internal.InProcessEventPublisher
- close() - Method in class at.aimon.session.web.internal.SessionEventRelay
-
Synchronously drain remaining events.
- close() - Method in interface at.aimon.session.web.spi.ConversationSignalBus.Subscription
- close() - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Close the manager.
- closeAll() - Method in class at.aimon.session.web.LocalSessionCache
-
Drop and close every cached entry.
- closeGracefully(Duration) - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- closeGracefully(Duration) - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Stop accepting new submits and wait up to
timeoutfor in-flight turns to finish, then close the manager. - collect(ConversationId, QueuedInputPriority) - Method in interface at.aimon.session.web.spi.ConversationInbox
-
Atomically removes and returns up to all messages with priority ≤
maxPriorityforid, in priority-then-FIFO order. - collect(ConversationId, QueuedInputPriority) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationInbox
- compareAndReset(String, String) - Method in interface at.aimon.session.web.spi.IdempotencyStore
-
Atomically reset (or transition to FAILED) a stale in-flight entry held by
expectedHolderId. - compareAndReset(String, String) - Method in class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- complete(ConversationId) - Method in class at.aimon.session.web.internal.InProcessEventPublisher
-
Emit
onComplete()on the publisher foridand remove it from the map. - contextDiscriminator(String) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
-
Sets the optional context discriminator.
- conversationId(ConversationId) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- conversationId(ConversationId) - Method in class at.aimon.session.web.spi.ConversationSignal.Builder
- conversationId(ConversationId) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- conversationId(ConversationId) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- conversationInbox(ConversationInbox) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- ConversationInbox - Interface in at.aimon.session.web.spi
-
Cross-node mailbox SPI per design §5.6.2.
- ConversationInboxException - Exception Class in at.aimon.session.web.exception
-
Thrown when a
ConversationInboxbackend fails to communicate (e.g. - ConversationInboxException(String) - Constructor for exception class at.aimon.session.web.exception.ConversationInboxException
- ConversationInboxException(String, Throwable) - Constructor for exception class at.aimon.session.web.exception.ConversationInboxException
- conversationLock(ConversationLock) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- ConversationLock - Interface in at.aimon.session.web.spi
-
Per-conversation distributed lock SPI.
- ConversationLock.LockHandle - Class in at.aimon.session.web.spi
-
Immutable handle returned by a successful
ConversationLock.tryAcquire(at.aimon.core.agent.conversation.ConversationId, java.lang.String, java.time.Duration). - ConversationLockException - Exception Class in at.aimon.session.web.exception
-
Thrown when a
ConversationLockbackend fails to communicate (e.g. - ConversationLockException(String) - Constructor for exception class at.aimon.session.web.exception.ConversationLockException
- ConversationLockException(String, Throwable) - Constructor for exception class at.aimon.session.web.exception.ConversationLockException
- conversationRepository(ConversationRepository) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- ConversationSignal - Class in at.aimon.session.web.spi
-
Cross-node signal payload broadcast through
ConversationSignalBus. - ConversationSignal.Builder - Class in at.aimon.session.web.spi
-
Builder for
ConversationSignal. - ConversationSignal.SignalKind - Enum Class in at.aimon.session.web.spi
-
Distinguishes the four cross-node signal flavors per design §5.4.
- ConversationSignalBus - Interface in at.aimon.session.web.spi
-
Cross-node pub/sub bus for
ConversationSignals. - ConversationSignalBus.Subscription - Interface in at.aimon.session.web.spi
-
Handle to a single subscription.
- ConversationSignalBusException - Exception Class in at.aimon.session.web.exception
-
Thrown when a
ConversationSignalBusbackend fails to communicate (e.g. - ConversationSignalBusException(String) - Constructor for exception class at.aimon.session.web.exception.ConversationSignalBusException
- ConversationSignalBusException(String, Throwable) - Constructor for exception class at.aimon.session.web.exception.ConversationSignalBusException
- createdAt(Instant) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
D
- DEFAULT_HOLDER_LOSS_SWEEP_INTERVAL - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_IDEMPOTENCY_PRIMARY_TTL - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_IDEMPOTENCY_SECONDARY_TTL - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_IDLE_TTL - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_LOCK_EXTEND_INTERVAL - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_LOCK_LEASE - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_MAX_CACHED_SESSIONS - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DEFAULT_RELEASE_INTERRUPT_TIMEOUT - Static variable in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- DefaultWebAgentSessionManager - Class in at.aimon.session.web.internal
-
Default
WebAgentSessionManagerimplementation that wires the in-memory and SPI components together to realize design §7.1's submit flow on a single node, with cross-node hooks for distributed deployments. - DefaultWebAgentSessionManager(AgentSessionFactory, ConversationRepository, ConversationLock, ConversationSignalBus, ConversationInbox, IdempotencyStore, String, Duration, int, Duration, Duration, Duration, Duration, Duration, Duration) - Constructor for class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- DefaultWebAgentSessionManager(AgentSessionFactory, ConversationRepository, ConversationLock, ConversationSignalBus, ConversationInbox, IdempotencyStore, String, Duration, int, Duration, Duration, Duration, Duration, Duration, Duration, SessionMetrics) - Constructor for class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- DefaultWebAgentSessionManager(AgentSessionOpener, ConversationRepository, ConversationLock, ConversationSignalBus, ConversationInbox, IdempotencyStore, String, Duration, int, Duration, Duration, Duration, Duration, Duration, Duration) - Constructor for class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- DefaultWebAgentSessionManager(AgentSessionOpener, ConversationRepository, ConversationLock, ConversationSignalBus, ConversationInbox, IdempotencyStore, String, Duration, int, Duration, Duration, Duration, Duration, Duration, Duration, SessionMetrics) - Constructor for class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- deleteConversation(ConversationId) - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- deleteConversation(ConversationId) - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Permanently delete the conversation, including the history persisted in
ConversationRepository. - deliver(InboundMessage) - Method in interface at.aimon.session.web.spi.ConversationInbox
-
Append
messageto its conversation's inbox. - deliver(InboundMessage) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationInbox
- deliveredAt(Instant) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- DeploymentMode - Enum Class in at.aimon.session.web
-
Deployment topology declared at builder time.
- DISTRIBUTED - Enum constant in enum class at.aimon.session.web.DeploymentMode
- DONE - Enum constant in enum class at.aimon.session.web.spi.IdempotencyEntry.Status
-
A turn completed and its result is cached for replay.
E
- emit(ConversationId, AgentExecutionEvent) - Method in class at.aimon.session.web.internal.InProcessEventPublisher
-
Push
eventto subscribers ofid's publisher (lazy-creating one if needed). - ensureOpen(ConversationId, AgentExecutionContextId, AgentSessionOptions) - Method in class at.aimon.session.web.LocalSessionCache
-
Convenience overload — equivalent to
LocalSessionCache.ensureOpen(ConversationId, AgentExecutionContextId, AgentSessionOptions, OpenAttributes)withOpenAttributes.empty(). - ensureOpen(ConversationId, AgentExecutionContextId, AgentSessionOptions, OpenAttributes) - Method in class at.aimon.session.web.LocalSessionCache
-
Lazily opens a session for
idvia the injected factory, or returns the cached entry on hit. - equals(Object) - Method in class at.aimon.session.web.inbox.InboundMessageId
- EVENT - Enum constant in enum class at.aimon.session.web.spi.ConversationSignal.SignalKind
-
Streaming
AgentExecutionEventenvelope for cross-nodeevents()fan-out. - events(ConversationId) - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- events(ConversationId) - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Subscribe to streaming progress events for
conversationId. - evict(ConversationId) - Method in class at.aimon.session.web.LocalSessionCache
-
Drop and close the entry for
id, if any. - EVICT - Enum constant in enum class at.aimon.session.web.spi.ConversationSignal.SignalKind
-
Cache eviction request; receiving nodes drop their local cache entry.
- EXECUTED_LOCALLY - Enum constant in enum class at.aimon.session.web.WebSubmitOutcome.Kind
-
Lock acquired locally; the future completes when the turn finishes.
- executedLocally(CompletionStage<AgentExecutionResult>) - Static method in class at.aimon.session.web.WebSubmitOutcome
- existing(IdempotencyEntry) - Static method in class at.aimon.session.web.spi.PutResult
- EXISTING - Enum constant in enum class at.aimon.session.web.spi.PutResult.Kind
- EXPLICIT_RELEASE - Enum constant in enum class at.aimon.session.web.metrics.SessionMetrics.CacheEvictionReason
-
Manager-driven explicit eviction —
releaseConversation()or cross-nodeEVICT. - extend(ConversationLock.LockHandle, Duration) - Method in interface at.aimon.session.web.spi.ConversationLock
-
Extends the lease of an already-held lock.
- extend(ConversationLock.LockHandle, Duration) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationLock
F
- find(String) - Method in interface at.aimon.session.web.spi.IdempotencyStore
-
Look up an entry by key.
- find(String) - Method in class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- findStaleInFlight(Instant) - Method in interface at.aimon.session.web.spi.IdempotencyStore
-
Enumerate in-flight entries whose
lastTouchedAtis older thancutoff. - findStaleInFlight(Instant) - Method in class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- forEachSession(Consumer<AgentSession>) - Method in class at.aimon.session.web.LocalSessionCache
-
Apply
actionto every currently cached session.
G
- getAcquiredAt() - Method in class at.aimon.session.web.spi.ConversationLock.LockHandle
- getAgentRef() - Method in class at.aimon.session.web.inbox.InboundMessage
- getAgentRef() - Method in class at.aimon.session.web.WebSubmitRequest
- getContextDiscriminator() - Method in class at.aimon.session.web.WebSubmitRequest
-
Optional discriminator used to select among multiple
AgentExecutionContextinstances of the same agent (e.g., per tenant). - getConversationId() - Method in class at.aimon.session.web.inbox.InboundMessage
- getConversationId() - Method in class at.aimon.session.web.spi.ConversationLock.LockHandle
- getConversationId() - Method in class at.aimon.session.web.spi.ConversationSignal
- getConversationId() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getConversationId() - Method in class at.aimon.session.web.WebSubmitRequest
- getCreatedAt() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getCurrent() - Method in class at.aimon.session.web.spi.PutResult
- getDeliveredAt() - Method in class at.aimon.session.web.inbox.InboundMessage
- getFencingToken() - Method in class at.aimon.session.web.spi.ConversationLock.LockHandle
- getFuture() - Method in class at.aimon.session.web.WebSubmitOutcome
- getHolderId() - Method in class at.aimon.session.web.spi.ConversationLock.LockHandle
- getHolderId() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getId() - Method in class at.aimon.session.web.inbox.InboundMessage
-
Returns the inbox-assigned id.
- getIdempotencyKey() - Method in exception class at.aimon.session.web.exception.IdempotencyConflictException
- getIdempotencyKey() - Method in class at.aimon.session.web.inbox.InboundMessage
- getIdempotencyKey() - Method in class at.aimon.session.web.WebSubmitRequest
- getInboxId() - Method in class at.aimon.session.web.WebSubmitOutcome
- getInitiator() - Method in class at.aimon.session.web.inbox.InboundMessage
- getInitiator() - Method in class at.aimon.session.web.WebSubmitRequest
- getInputHash() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getKey() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getKind() - Method in class at.aimon.session.web.spi.ConversationSignal
- getKind() - Method in class at.aimon.session.web.spi.PutResult
- getKind() - Method in class at.aimon.session.web.WebSubmitOutcome
- getLastTouchedAt() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getLease() - Method in class at.aimon.session.web.spi.ConversationLock.LockHandle
- getMetadata() - Method in class at.aimon.session.web.inbox.InboundMessage
- getOpenAttributes() - Method in class at.aimon.session.web.WebSubmitRequest
-
Caller-provided open attributes forwarded to the configured
AgentSessionOpeneron cache miss. - getOptions() - Method in class at.aimon.session.web.WebSubmitRequest
- getOriginNodeId() - Method in class at.aimon.session.web.spi.ConversationSignal
- getPayload() - Method in class at.aimon.session.web.spi.ConversationSignal
- getPriority() - Method in class at.aimon.session.web.inbox.InboundMessage
- getPriority() - Method in class at.aimon.session.web.WebSubmitRequest
- getResult() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getSession() - Method in class at.aimon.session.web.LocalSessionCache.SessionEntry
- getStatus() - Method in class at.aimon.session.web.spi.IdempotencyEntry
- getSubmitOptions() - Method in class at.aimon.session.web.inbox.InboundMessage
-
Per-turn
SubmitOptionspreserved end-to-end fromWebSubmitRequestso the holder-side dispatch forwards the original caller-supplied executor metadata when it eventually callssession.submitAsync(input, submitOptions, listener). - getSubmitOptions() - Method in class at.aimon.session.web.WebSubmitRequest
-
Per-turn options forwarded to
AgentSession.submitAsync(input, submitOptions, listener)when this request is dispatched. - getUserInput() - Method in class at.aimon.session.web.inbox.InboundMessage
- getUserInput() - Method in class at.aimon.session.web.WebSubmitRequest
H
- hashCode() - Method in class at.aimon.session.web.inbox.InboundMessageId
- holderId(String) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- HolderLossSweeper - Class in at.aimon.session.web.internal
-
Periodic sweeper that detects holder loss via the
IdempotencyStoreand emits the recovery sequence required by design §6.3 D / §9.2 stale cleanup. - HolderLossSweeper(IdempotencyStore, ConversationSignalBus, InProcessEventPublisher, ScheduledExecutorService, String, Duration, Duration) - Constructor for class at.aimon.session.web.internal.HolderLossSweeper
- HolderLossSweeper(IdempotencyStore, ConversationSignalBus, InProcessEventPublisher, ScheduledExecutorService, String, Duration, Duration, SessionMetrics) - Constructor for class at.aimon.session.web.internal.HolderLossSweeper
- holderLossSweepInterval(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
I
- id(InboundMessageId) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- IdempotencyConflictException - Exception Class in at.aimon.session.web.exception
-
Thrown when a submit request reuses an
idempotencyKeybut its input hash differs from the previously stored entry. - IdempotencyConflictException(String, String) - Constructor for exception class at.aimon.session.web.exception.IdempotencyConflictException
- IdempotencyEntry - Class in at.aimon.session.web.spi
-
Immutable
IdempotencyStoreentry. - IdempotencyEntry.Builder - Class in at.aimon.session.web.spi
-
Builder for
IdempotencyEntry. - IdempotencyEntry.Status - Enum Class in at.aimon.session.web.spi
-
Lifecycle status of an idempotency entry.
- idempotencyKey(String) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- idempotencyKey(String) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- idempotencyPrimaryTtl(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- idempotencySecondaryTtl(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- idempotencyStore(IdempotencyStore) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- IdempotencyStore - Interface in at.aimon.session.web.spi
-
Idempotency store SPI per design §9.2.
- IdempotencyStoreException - Exception Class in at.aimon.session.web.exception
-
Thrown when an
IdempotencyStorebackend fails to communicate (e.g. - IdempotencyStoreException(String) - Constructor for exception class at.aimon.session.web.exception.IdempotencyStoreException
- IdempotencyStoreException(String, Throwable) - Constructor for exception class at.aimon.session.web.exception.IdempotencyStoreException
- IDLE - Enum constant in enum class at.aimon.session.web.metrics.SessionMetrics.CacheEvictionReason
-
Idle TTL elapsed (Caffeine
EXPIRED). - idleTtl(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- IN_FLIGHT - Enum constant in enum class at.aimon.session.web.spi.IdempotencyEntry.Status
-
A turn keyed by this idempotency key is currently executing.
- InboundMessage - Class in at.aimon.session.web.inbox
-
Immutable envelope appended to a
ConversationInbox. - InboundMessage.Builder - Class in at.aimon.session.web.inbox
-
Builder for
InboundMessage. - InboundMessageId - Class in at.aimon.session.web.inbox
-
Stable opaque identifier of an
InboundMessageappended to aConversationInbox. - initiator(Principal) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- initiator(Principal) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- InMemoryConversationInbox - Class in at.aimon.session.web.spi.inmemory
-
Single-process
ConversationInboxbacked by per-conversation lock-protected lists. - InMemoryConversationInbox() - Constructor for class at.aimon.session.web.spi.inmemory.InMemoryConversationInbox
- InMemoryConversationLock - Class in at.aimon.session.web.spi.inmemory
-
Single-process
ConversationLockbacked by aConcurrentMap. - InMemoryConversationLock() - Constructor for class at.aimon.session.web.spi.inmemory.InMemoryConversationLock
- InMemoryConversationLock(Clock) - Constructor for class at.aimon.session.web.spi.inmemory.InMemoryConversationLock
- InMemoryIdempotencyStore - Class in at.aimon.session.web.spi.inmemory
-
Single-process
IdempotencyStorebacked by aConcurrentMap. - InMemoryIdempotencyStore() - Constructor for class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- InMemoryIdempotencyStore(Clock) - Constructor for class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- InMemorySignalBus - Class in at.aimon.session.web.spi.inmemory
-
Single-process
ConversationSignalBusbacked by per-conversation subscriber lists. - InMemorySignalBus() - Constructor for class at.aimon.session.web.spi.inmemory.InMemorySignalBus
- InProcessEventPublisher - Class in at.aimon.session.web.internal
-
Backing publisher for
WebAgentSessionManager.events(ConversationId). - InProcessEventPublisher() - Constructor for class at.aimon.session.web.internal.InProcessEventPublisher
- inputHash(String) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- inserted() - Static method in class at.aimon.session.web.spi.PutResult
- INSERTED - Enum constant in enum class at.aimon.session.web.spi.PutResult.Kind
- interrupt(ConversationId, InterruptReason) - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- interrupt(ConversationId, InterruptReason) - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Trip an interrupt on the active turn, if any.
- INTERRUPT - Enum constant in enum class at.aimon.session.web.spi.ConversationSignal.SignalKind
-
User-requested interrupt; trips the active turn on the holder node.
- invalidate(ConversationId) - Method in class at.aimon.session.web.internal.BindingResolver
-
Drop the cached binding for
conversationId. - Invariants - Search tag in class at.aimon.session.web.spi.IdempotencyEntry
- Section
- isEmpty(ConversationId) - Method in interface at.aimon.session.web.spi.ConversationInbox
-
Quick check without dequeuing.
- isEmpty(ConversationId) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationInbox
K
- key(String) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- kind(ConversationSignal.SignalKind) - Method in class at.aimon.session.web.spi.ConversationSignal.Builder
L
- lastTouchedAt(Instant) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- LeaseRenewer - Class in at.aimon.session.web.internal
-
Periodically extends a
ConversationLock.LockHandle's lease (design §7.4) on a manager-ownedScheduledExecutorService. - LeaseRenewer(ConversationLock, ScheduledExecutorService, Duration, Duration) - Constructor for class at.aimon.session.web.internal.LeaseRenewer
- LeaseRenewer(ConversationLock, ScheduledExecutorService, Duration, Duration, SessionMetrics) - Constructor for class at.aimon.session.web.internal.LeaseRenewer
- LocalSessionCache - Class in at.aimon.session.web
-
Per-node, per-conversation session cache backed by Caffeine.
- LocalSessionCache(AgentSessionOpener, Duration, int) - Constructor for class at.aimon.session.web.LocalSessionCache
- LocalSessionCache(AgentSessionOpener, Duration, int, Ticker) - Constructor for class at.aimon.session.web.LocalSessionCache
- LocalSessionCache(AgentSessionOpener, Duration, int, Ticker, SessionMetrics) - Constructor for class at.aimon.session.web.LocalSessionCache
- LocalSessionCache.SessionEntry - Class in at.aimon.session.web
-
Live entry held by the cache: exposes the
AgentSessionand ensures idempotent close. - lockExtendInterval(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- LockHandle(ConversationId, String, long, Instant, Duration) - Constructor for class at.aimon.session.web.spi.ConversationLock.LockHandle
- lockLease(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- LRU - Enum constant in enum class at.aimon.session.web.metrics.SessionMetrics.CacheEvictionReason
-
LRU bound reached (Caffeine
SIZE).
M
- markDone(String, AgentExecutionResult) - Method in interface at.aimon.session.web.spi.IdempotencyStore
-
Transition an in-flight entry to
IdempotencyEntry.Status.DONEand cache its result. - markDone(String, AgentExecutionResult) - Method in class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- maxCachedSessions(int) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- MESSAGE_ENQUEUED - Enum constant in enum class at.aimon.session.web.spi.ConversationSignal.SignalKind
-
A new
InboundMessagewas delivered to the inbox; holder may collect. - metadata(Map<String, String>) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- metrics(SessionMetrics) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- mode(DeploymentMode) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
N
- nodeId(String) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- NOOP - Static variable in interface at.aimon.session.web.metrics.SessionMetrics
-
No-op metrics.
O
- of(String) - Static method in class at.aimon.session.web.inbox.InboundMessageId
-
Wraps an opaque string into an
InboundMessageId. - onCacheEviction(SessionMetrics.CacheEvictionReason) - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called when the local session cache drops an entry (regardless of cause).
- onCacheHit() - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called when
LocalSessionCache.ensureOpenfound an existing entry. - onCacheMiss() - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called when
LocalSessionCache.ensureOpenopened a fresh session. - onHolderLossRecovered() - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called by the holder-loss sweeper after winning the
compareAndResetCAS for a stale IN_FLIGHT entry — i.e. exactly once per recovered conversation, on the recovering node. - onLeaseExtendFailed() - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called once per turn when
ConversationLock.extendreturns false (lease lost). - onLeaseExtendSucceeded() - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called on every successful
ConversationLock.extendfrom theLeaseRenewer. - onLockAcquireRejected(Duration) - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called when
ConversationLock.tryAcquire()returned empty (lock held elsewhere). - onLockAcquireSucceeded(Duration) - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called when
ConversationLock.tryAcquire()returned a handle. - onSubmitOutcome(WebSubmitOutcome.Kind) - Method in interface at.aimon.session.web.metrics.SessionMetrics
-
Called once per submit, after the manager has classified the request.
- open(ConversationId, AgentExecutionContextId, AgentSessionOptions) - Method in interface at.aimon.session.web.AgentSessionOpener
-
Convenience overload that delegates to
AgentSessionOpener.open(ConversationId, AgentExecutionContextId, AgentSessionOptions, OpenAttributes)withOpenAttributes.empty(). - open(ConversationId, AgentExecutionContextId, AgentSessionOptions, OpenAttributes) - Method in interface at.aimon.session.web.AgentSessionOpener
-
Opens a session bound to
conversationIdandcontextId, usingopenAttributesas the caller-provided attribute channel. - openAttributes(OpenAttributes) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- options(AgentSessionOptions) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- originNodeId(String) - Method in class at.aimon.session.web.spi.ConversationSignal.Builder
- OTHER - Enum constant in enum class at.aimon.session.web.metrics.SessionMetrics.CacheEvictionReason
-
Catch-all for Caffeine's
REPLACED/COLLECTED.
P
- payload(Map<String, Object>) - Method in class at.aimon.session.web.spi.ConversationSignal.Builder
- peek(ConversationId) - Method in class at.aimon.session.web.LocalSessionCache
-
Returns the cached entry for
id, if any. - priority(QueuedInputPriority) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- priority(QueuedInputPriority) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- publish(ConversationSignal) - Method in interface at.aimon.session.web.spi.ConversationSignalBus
-
Publish a signal.
- publish(ConversationSignal) - Method in class at.aimon.session.web.spi.inmemory.InMemorySignalBus
- publisherFor(ConversationId) - Method in class at.aimon.session.web.internal.InProcessEventPublisher
-
Returns the publisher for
id, creating one on first use. - purge(ConversationId) - Method in interface at.aimon.session.web.spi.ConversationInbox
-
Drop every pending message for
id(called fromreleaseConversation). - purge(ConversationId) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationInbox
- putIfAbsent(String, IdempotencyEntry, Duration) - Method in interface at.aimon.session.web.spi.IdempotencyStore
-
Insert
entryonly if no entry exists forkey. - putIfAbsent(String, IdempotencyEntry, Duration) - Method in class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- PutResult - Class in at.aimon.session.web.spi
- PutResult.Kind - Enum Class in at.aimon.session.web.spi
-
Distinguishes new-insert from already-present.
Q
- queued(InboundMessageId) - Static method in class at.aimon.session.web.WebSubmitOutcome
- QUEUED - Enum constant in enum class at.aimon.session.web.WebSubmitOutcome.Kind
-
Lock held elsewhere; the message was appended to the cross-node inbox.
R
- recordBinding(ConversationId, String) - Method in class at.aimon.session.web.internal.BindingResolver
-
Record the binding for
conversationIdafter a successful first-turn lock acquisition. - RELAY_QUEUE_CAPACITY - Static variable in class at.aimon.session.web.internal.SessionEventRelay
-
Bounded queue capacity per relay — design §5.5 recommended size.
- release(ConversationLock.LockHandle) - Method in interface at.aimon.session.web.spi.ConversationLock
-
Releases the lock.
- release(ConversationLock.LockHandle) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationLock
- releaseConversation(ConversationId) - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- releaseConversation(ConversationId) - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Release the local session cache entry and emit
onComplete()on the correspondingevents()publisher. - releaseInterruptTimeout(Duration) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- Re-open semantics - Search tag in interface at.aimon.session.web.AgentSessionOpener
- Section
- resolveAndValidate(ConversationId, String) - Method in class at.aimon.session.web.internal.BindingResolver
-
Validate that
requestedAgentRefis compatible with the conversation's current binding. - result(AgentExecutionResult) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
S
- SessionEventRelay - Class in at.aimon.session.web.internal
-
Bridges the session's
submitAsync(input, listener)listener channel to (1) the localInProcessEventPublisherand (2) the cross-nodeConversationSignalBusforConversationSignal.SignalKind.EVENTbroadcast (design §5.5). - SessionEventRelay(ConversationId, InProcessEventPublisher, ConversationSignalBus, String, ExecutorService) - Constructor for class at.aimon.session.web.internal.SessionEventRelay
- sessionFactory(AgentSessionFactory) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
-
Configures the manager with a stateless
AgentSessionFactory. - SessionMetrics - Interface in at.aimon.session.web.metrics
-
Operational metric hooks for
WebAgentSessionManager(design §12 WS-06). - SessionMetrics.CacheEvictionReason - Enum Class in at.aimon.session.web.metrics
-
Why the local session cache dropped an entry.
- sessionOpener(AgentSessionOpener) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
-
Configures the manager with a caller-supplied
AgentSessionOpenerso the implementation can read caller-domain attributes viaOpenAttributes. - signalBus(ConversationSignalBus) - Method in class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- SINGLE_NODE - Enum constant in enum class at.aimon.session.web.DeploymentMode
- start() - Method in class at.aimon.session.web.internal.HolderLossSweeper
-
Schedule periodic sweeps.
- start(ConversationLock.LockHandle, IdempotencyStore, String, Runnable) - Method in class at.aimon.session.web.internal.LeaseRenewer
-
Variant of
LeaseRenewer.start(LockHandle, Runnable)that also touches an idempotency entry on each successful extend. - start(ConversationLock.LockHandle, Runnable) - Method in class at.aimon.session.web.internal.LeaseRenewer
-
Schedule periodic
extendcalls forhandle. - status(IdempotencyEntry.Status) - Method in class at.aimon.session.web.spi.IdempotencyEntry.Builder
- submit(WebSubmitRequest) - Method in class at.aimon.session.web.internal.DefaultWebAgentSessionManager
- submit(WebSubmitRequest) - Method in interface at.aimon.session.web.WebAgentSessionManager
-
Submit one turn of input to the conversation identified by
request. - submitOptions(SubmitOptions) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- submitOptions(SubmitOptions) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
- subscribe(ConversationId, Consumer<ConversationSignal>) - Method in interface at.aimon.session.web.spi.ConversationSignalBus
-
Subscribe to signals targeting
id. - subscribe(ConversationId, Consumer<ConversationSignal>) - Method in class at.aimon.session.web.spi.inmemory.InMemorySignalBus
- sweep() - Method in class at.aimon.session.web.LocalSessionCache
-
Force a synchronous cleanup pass — runs Caffeine's lazy maintenance, including TTL-based eviction.
- sweepOnce() - Method in class at.aimon.session.web.internal.HolderLossSweeper
-
Visible for testing — performs one sweep pass synchronously.
T
- toString() - Method in class at.aimon.session.web.inbox.InboundMessageId
- touch(String, String) - Method in interface at.aimon.session.web.spi.IdempotencyStore
-
Refresh the secondary TTL of an in-flight entry.
- touch(String, String) - Method in class at.aimon.session.web.spi.inmemory.InMemoryIdempotencyStore
- tryAcquire(ConversationId, String, Duration) - Method in interface at.aimon.session.web.spi.ConversationLock
-
Attempts to acquire the lock for
idon behalf ofholderId. - tryAcquire(ConversationId, String, Duration) - Method in class at.aimon.session.web.spi.inmemory.InMemoryConversationLock
U
- userInput(String) - Method in class at.aimon.session.web.inbox.InboundMessage.Builder
- userInput(String) - Method in class at.aimon.session.web.WebSubmitRequest.Builder
V
- value() - Method in class at.aimon.session.web.inbox.InboundMessageId
-
Returns the underlying opaque value.
- valueOf(String) - Static method in enum class at.aimon.session.web.DeploymentMode
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class at.aimon.session.web.metrics.SessionMetrics.CacheEvictionReason
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class at.aimon.session.web.spi.ConversationSignal.SignalKind
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class at.aimon.session.web.spi.IdempotencyEntry.Status
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class at.aimon.session.web.spi.PutResult.Kind
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class at.aimon.session.web.WebSubmitOutcome.Kind
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class at.aimon.session.web.DeploymentMode
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class at.aimon.session.web.metrics.SessionMetrics.CacheEvictionReason
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class at.aimon.session.web.spi.ConversationSignal.SignalKind
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class at.aimon.session.web.spi.IdempotencyEntry.Status
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class at.aimon.session.web.spi.PutResult.Kind
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class at.aimon.session.web.WebSubmitOutcome.Kind
-
Returns an array containing the constants of this enum class, in the order they are declared.
W
- WebAgentSessionManager - Interface in at.aimon.session.web
-
Multi-instance-ready agent session manager facade.
- WebAgentSessionManagerBuilder - Class in at.aimon.session.web.builder
-
Fluent builder for
WebAgentSessionManager(design §11.2). - WebAgentSessionManagerBuilder() - Constructor for class at.aimon.session.web.builder.WebAgentSessionManagerBuilder
- WebSubmitOutcome - Class in at.aimon.session.web
-
Outcome of
WebAgentSessionManager.submit(WebSubmitRequest). - WebSubmitOutcome.Kind - Enum Class in at.aimon.session.web
-
Distinguishes the two manager-level outcomes.
- WebSubmitRequest - Class in at.aimon.session.web
-
Immutable submit request envelope for
WebAgentSessionManager.submit(WebSubmitRequest). - WebSubmitRequest.Builder - Class in at.aimon.session.web
-
Builder for
WebSubmitRequest.
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form