Index
All Classes and Interfaces|All Packages|Serialized Form
A
- accept(T) - Method in interface io.github.jonloucks.concurrency.api.WaitableConsumer
-
Assign a new value
- acceptIf(Predicate<T>, Supplier<T>) - Method in interface io.github.jonloucks.concurrency.api.WaitableConsumer
-
Assign a new value if conditions are satisfied
- acceptIf(Predicate<T>, T) - Method in interface io.github.jonloucks.concurrency.api.WaitableConsumer
-
Assign a new value if conditions are satisfied
- acceptWhen(Predicate<T>, Supplier<T>) - Method in interface io.github.jonloucks.concurrency.api.WaitableConsumer
-
Assign a new value if conditions are satisfied
- acceptWhen(Predicate<T>, Supplier<T>, Duration) - Method in interface io.github.jonloucks.concurrency.api.WaitableConsumer
-
Assign a new value if conditions are satisfied
C
- CANCELLED - Enum constant in enum class io.github.jonloucks.concurrency.api.Completion.State
-
Represents a canceled completion
- canTransition(String, Completion.State) - Method in enum class io.github.jonloucks.concurrency.api.Completion.State
- canTransition(String, Idempotent) - Method in enum class io.github.jonloucks.concurrency.api.Idempotent
- canTransition(String, T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Rule
-
Determine if 'this' state can transition to the target
- Checks - Class in io.github.jonloucks.concurrency.api
-
Checks used internally and supported for external use.
- CLOSED - Enum constant in enum class io.github.jonloucks.concurrency.api.Idempotent
-
A state that all new actions are invalid Implementations can decide to ignore or throw exception, but never be processed.
- CLOSING - Enum constant in enum class io.github.jonloucks.concurrency.api.Idempotent
-
A state of closing or shutting down.
- Completable<T> - Interface in io.github.jonloucks.concurrency.api
-
Responsibility: Observe a single activity from start to finish
- Completable.Config<T> - Interface in io.github.jonloucks.concurrency.api
-
Configuration used to create a new Completable
- Completable.Config.Builder<T> - Interface in io.github.jonloucks.concurrency.api
-
Configuration builder used to create a new Completeable
- CompletableFactory - Interface in io.github.jonloucks.concurrency.api
-
Responsibility: Creating a new Completable
- completeLater(OnCompletion<T>, Consumer<OnCompletion<T>>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Guaranteed execution: complete later block.
- completeLater(OnCompletion<T>, Consumer<OnCompletion<T>>) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Guaranteed execution: complete later block.
- completeNow(OnCompletion<T>, Supplier<T>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Guaranteed execution: complete now block When this method finishes, it is guaranteed the OnCompletion will have received a final completion.
- completeNow(OnCompletion<T>, Supplier<T>) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Guaranteed execution: complete now block When this method finishes, it is guaranteed the OnCompletion will have received a final completion.
- Completion<T> - Interface in io.github.jonloucks.concurrency.api
-
Responsibility: Represent a progression step in the life cycle of an activity.
- Completion.Config<T> - Interface in io.github.jonloucks.concurrency.api
-
Configuration for creating a new Completion
- Completion.Config.Builder<T> - Interface in io.github.jonloucks.concurrency.api
-
Builder for creating a configuration for a new Completion
- Completion.State - Enum Class in io.github.jonloucks.concurrency.api
-
The Completion states
- CompletionFactory - Interface in io.github.jonloucks.concurrency.api
-
Responsibility: Creating a new Completion
- CompletionNotify<T> - Interface in io.github.jonloucks.concurrency.api
-
Responsibility: Dispatch Completion status to subscribers
- Concurrency - Interface in io.github.jonloucks.concurrency.api
-
The Concurrency API
- Concurrency.Config - Interface in io.github.jonloucks.concurrency.api
-
The configuration used to create a new Concurrency instance.
- Concurrency.Config.Builder - Interface in io.github.jonloucks.concurrency.api
-
The Concurrency configuration
- concurrencyCheck(Concurrency) - Static method in class io.github.jonloucks.concurrency.api.Checks
-
Check if given Concurrency is not null or invalid
- ConcurrencyException - Exception in io.github.jonloucks.concurrency.api
-
Runtime exception thrown for Concurrency related problems.
- ConcurrencyException(String) - Constructor for exception io.github.jonloucks.concurrency.api.ConcurrencyException
-
Passthrough for
RuntimeException(String) - ConcurrencyException(String, Throwable) - Constructor for exception io.github.jonloucks.concurrency.api.ConcurrencyException
-
Passthrough for
RuntimeException(String, Throwable) - ConcurrencyFactory - Interface in io.github.jonloucks.concurrency.api
-
Responsible for creating new instances of Concurrency
- Constants - Class in io.github.jonloucks.concurrency.api
-
Concurrency constants
- CONTRACT - Static variable in interface io.github.jonloucks.concurrency.api.CompletableFactory
-
The Contract for the CompletableFactory
- CONTRACT - Static variable in interface io.github.jonloucks.concurrency.api.CompletionFactory
-
The Contract for the CompletionFactory
- CONTRACT - Static variable in interface io.github.jonloucks.concurrency.api.Concurrency
-
Access the current Concurrency implementation
- CONTRACT - Static variable in interface io.github.jonloucks.concurrency.api.ConcurrencyFactory
-
Used to promise and claim the ConcurrencyFactory implementation
- CONTRACT - Static variable in interface io.github.jonloucks.concurrency.api.StateMachineFactory
-
The StateMachineFactory Contract
- CONTRACT - Static variable in interface io.github.jonloucks.concurrency.api.WaitableFactory
-
The Contract for the WaitableFactory
- contracts() - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config
- contracts(Contracts) - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
- create(Concurrency.Config) - Method in interface io.github.jonloucks.concurrency.api.ConcurrencyFactory
-
Create a new instance of Concurrency
- create(StateMachine.Config<T>) - Method in interface io.github.jonloucks.concurrency.api.StateMachineFactory
-
Create a new StateMachine by configuration
- create(Class<T>, T) - Method in interface io.github.jonloucks.concurrency.api.StateMachineFactory
-
Create a new StateMachine from an Enum class
- create(Consumer<Concurrency.Config.Builder>) - Method in interface io.github.jonloucks.concurrency.api.ConcurrencyFactory
-
Create a new instance of Concurrency
- create(Consumer<StateMachine.Config.Builder<T>>) - Method in interface io.github.jonloucks.concurrency.api.StateMachineFactory
-
Create a new StateMachine by configuration callback
- create(T) - Method in interface io.github.jonloucks.concurrency.api.StateMachineFactory
-
Create a new StateMachine
- create(T) - Method in interface io.github.jonloucks.concurrency.api.WaitableFactory
-
Create a new Waitable with the given initial value
- createCompletable(Completable.Config<T>) - Method in interface io.github.jonloucks.concurrency.api.CompletableFactory
-
Create a new Completable
- createCompletable(Completable.Config<T>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new Completable
- createCompletable(Consumer<Completable.Config.Builder<T>>) - Method in interface io.github.jonloucks.concurrency.api.CompletableFactory
-
Create a new Completable
- createCompletable(Consumer<Completable.Config.Builder<T>>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new Completable
- createCompletable(Consumer<Completable.Config.Builder<T>>) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new Completable
- createCompletion(Completion.Config<T>) - Method in interface io.github.jonloucks.concurrency.api.CompletionFactory
-
Create a new Completion
- createCompletion(Completion.Config<T>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new Completion
- createCompletion(Completion.Config<T>) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new Completion
- createCompletion(Consumer<Completion.Config.Builder<T>>) - Method in interface io.github.jonloucks.concurrency.api.CompletionFactory
-
Create a new Completion
- createCompletion(Consumer<Completion.Config.Builder<T>>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new Completion
- createCompletion(Consumer<Completion.Config.Builder<T>>) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new Completion
- createConcurrency(Concurrency.Config) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new Concurrency instance for customized deployments.
- createStateMachine(Contracts) - Static method in enum class io.github.jonloucks.concurrency.api.Completion.State
-
Create a StateMachine for Completion State
- createStateMachine(Contracts) - Static method in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Create a StateMachine for Idempotency
- createStateMachine(Class<T>, T) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new StateMachine
- createStateMachine(Class<T>, T) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new StateMachine
- createStateMachine(Consumer<StateMachine.Config.Builder<T>>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new StateMachine by configuration callback
- createStateMachine(T) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new StateMachine
- createStateMachine(T) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new StateMachine
- createWaitable(T) - Method in interface io.github.jonloucks.concurrency.api.Concurrency
-
Create a new Waitable with the given initial value
- createWaitable(T) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Create a new Waitable with the given initial value
D
- DEFAULT - Static variable in interface io.github.jonloucks.concurrency.api.Concurrency.Config
-
The default configuration used when creating a new Concurrency instance
- DESTROYED - Enum constant in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Represents a permanent end state.
E
- errorState(S) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the optional error state used if there is exception
- errorValue(Supplier<R>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the optional error value Note: if this is set, when an exception occurs this value will be returned
- event(String) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the required event name
F
- FACTORY - Static variable in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
-
Concurrency Config Builder
- FAILED - Enum constant in enum class io.github.jonloucks.concurrency.api.Completion.State
-
Represents a failed completion
- failedState(S) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the optional failed state used if the goal state is not allowed
- failedValue(Supplier<R>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the optional failed value used when the goal state is not allowed
- findConcurrencyFactory(Concurrency.Config) - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Finds the ConcurrencyFactory implementation
- future(Future<T>) - Method in interface io.github.jonloucks.concurrency.api.Completion.Config.Builder
-
Assign the future
G
- get() - Method in interface io.github.jonloucks.concurrency.api.WaitableSupplier
- getCompletion() - Method in interface io.github.jonloucks.concurrency.api.Completable
- getErrorState() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getErrorValue() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getEvent() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getFailedState() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getFailedValue() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getFuture() - Method in interface io.github.jonloucks.concurrency.api.Completion
- getIf(Predicate<T>) - Method in interface io.github.jonloucks.concurrency.api.WaitableSupplier
-
Gets the current value if it satisfies a condition
- getInitial() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config
-
Return the initial value.
- getInstance() - Static method in class io.github.jonloucks.concurrency.api.GlobalConcurrency
-
Return the global instance of Contracts
- getState() - Method in interface io.github.jonloucks.concurrency.api.Completion
- getState() - Method in interface io.github.jonloucks.concurrency.api.StateMachine
-
Get the current state
- getStateRules(T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config
-
Get all the rules for a specified state
- getStates() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config
- getSuccessState() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getSuccessValue() - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition
- getThrown() - Method in interface io.github.jonloucks.concurrency.api.Completion
- getValue() - Method in interface io.github.jonloucks.concurrency.api.Completion
- getWhen(Predicate<T>) - Method in interface io.github.jonloucks.concurrency.api.WaitableSupplier
-
Waits until the current value if it satisfies a condition
- getWhen(Predicate<T>, Duration) - Method in interface io.github.jonloucks.concurrency.api.WaitableSupplier
-
Waits until the current value if it satisfies a condition or a timeout is reached
- GlobalConcurrency - Class in io.github.jonloucks.concurrency.api
-
Globally shared Concurrency singleton
H
- hasState(T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine
-
Determine if the given state is known
I
- Idempotent - Enum Class in io.github.jonloucks.concurrency.api
-
Idempotent state machine states
- initial(T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config.Builder
-
Assign the required initial state
- install(Concurrency.Config, Repository) - Method in interface io.github.jonloucks.concurrency.api.ConcurrencyFactory
-
Install all the requirements and promises to the given Contracts Repository.
- io.github.jonloucks.concurrency.api - module io.github.jonloucks.concurrency.api
-
The API module for Concurrency
- io.github.jonloucks.concurrency.api - package io.github.jonloucks.concurrency.api
- isCompleted() - Method in interface io.github.jonloucks.concurrency.api.Completable
- isCompleted() - Method in interface io.github.jonloucks.concurrency.api.Completion
-
True if final completion
- isCompleted() - Method in enum class io.github.jonloucks.concurrency.api.Completion.State
- isRejecting() - Method in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Determines if new requests/action should be rejected
- isTransitionAllowed(String, T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine
-
Determine if a transition is allowed from the current state to a new one.
M
- MAX_TIMEOUT - Static variable in class io.github.jonloucks.concurrency.api.Constants
-
The maximum timeout duration
- MIN_TIMEOUT - Static variable in class io.github.jonloucks.concurrency.api.Constants
-
The minimum timeout duration
N
- notify(OnCompletion<T>) - Method in interface io.github.jonloucks.concurrency.api.CompletionNotify
-
Open a notification subscription for receive completions
- notifyIf(Predicate<T>, Consumer<T>) - Method in interface io.github.jonloucks.concurrency.api.WaitableNotify
-
When condition is satisfied the listener is invoked Note: It is likely the listener will be called within a write lock context.
- notifyState() - Method in interface io.github.jonloucks.concurrency.api.Completable
- notifyValue() - Method in interface io.github.jonloucks.concurrency.api.Completable
O
- onCompletion(Completion<T>) - Method in interface io.github.jonloucks.concurrency.api.OnCompletion
-
Callback which receives the
- OnCompletion<T> - Interface in io.github.jonloucks.concurrency.api
-
Responsibility: to receive the information when an action or activity has finished.
- onCompletionCheck(OnCompletion<T>) - Static method in class io.github.jonloucks.concurrency.api.Checks
-
Check if given OnCompletion is not null or invalid
- OPENABLE - Enum constant in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Initial state OPENABLE can transition to OPENED, OPENING, CLOSED, or DESTROYED.
- OPENED - Enum constant in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Resource, service is open to actions OPEN can transition to CLOSING or CLOSED.
- OPENING - Enum constant in enum class io.github.jonloucks.concurrency.api.Idempotent
-
For use cases where the open can take some time or reentrancy calls while initializing.
P
- PENDING - Enum constant in enum class io.github.jonloucks.concurrency.api.Completion.State
-
The initial state
R
- reflectionClassName() - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config
- reflectionClassName(String) - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
- rethrow(Throwable) - Static method in exception io.github.jonloucks.concurrency.api.ConcurrencyException
-
Rethrows a caught exception or a ConcurrencyException if unchecked
- rule(T, StateMachine.Rule<T>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config.Builder
-
Add a rule to a state
- rules(T, List<StateMachine.Rule<T>>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config.Builder
-
Add many rules to a state
S
- serviceLoaderClass() - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config
- serviceLoaderClass(Class<? extends ConcurrencyFactory>) - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
- setState(String, T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine
-
Set the current state, state must already exist and be an allowed transition
- shutdown() - Method in interface io.github.jonloucks.concurrency.api.Waitable
-
Aborts all waiting threads.
- shutdownTimeout() - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config
-
How long to wait for logging to shut down before giving up
- shutdownTimeout(Duration) - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
- state(Completion.State) - Method in interface io.github.jonloucks.concurrency.api.Completion.Config.Builder
-
Assign the state
- state(T) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config.Builder
-
Add a new state
- StateMachine<T> - Interface in io.github.jonloucks.concurrency.api
-
State machine.
- StateMachine.Config<T> - Interface in io.github.jonloucks.concurrency.api
-
StateMachine configuration
- StateMachine.Config.Builder<T> - Interface in io.github.jonloucks.concurrency.api
-
The Builder for a State Machine
- StateMachine.Rule<T> - Interface in io.github.jonloucks.concurrency.api
-
Opt-in interface a state type can implement to assist in determining the valid transitions
- StateMachine.Transition<S,
R> - Interface in io.github.jonloucks.concurrency.api -
Defines how a transition between states will be done
- StateMachine.Transition.Builder<B extends StateMachine.Transition.Builder<B,
S, R>, S, R> - Interface in io.github.jonloucks.concurrency.api -
Responsible for building a Transition
- stateMachineCheck(StateMachine<T>) - Static method in class io.github.jonloucks.concurrency.api.Checks
-
Check if given StateMachine is not null or invalid
- StateMachineFactory - Interface in io.github.jonloucks.concurrency.api
-
Rule machine, containing a set of sets that can be transitioned to by events/actions
- states(List<T>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Config.Builder
-
Add a list of states
- SUCCEEDED - Enum constant in enum class io.github.jonloucks.concurrency.api.Completion.State
-
Represents a successful completion
- successState(S) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the required success state
- successValue(Runnable) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the optional success block
- successValue(Supplier<R>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine.Transition.Builder
-
Assign the optional success value
T
- thrown(Throwable) - Method in interface io.github.jonloucks.concurrency.api.Completion.Config.Builder
-
Assign the thrown exception
- transition(StateMachine.Transition<T, R>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine
-
Execute a transition from the current state to another
- transition(Consumer<StateMachine.Transition.Builder<B, T, R>>) - Method in interface io.github.jonloucks.concurrency.api.StateMachine
-
Execute a transition from the current state to another
U
- useReflection() - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config
- useReflection(boolean) - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
- useServiceLoader() - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config
- useServiceLoader(boolean) - Method in interface io.github.jonloucks.concurrency.api.Concurrency.Config.Builder
V
- validateConcurrency(Contracts, Concurrency) - Static method in class io.github.jonloucks.concurrency.api.Checks
-
Quickly validates a Contracts and Concurrency
- value(T) - Method in interface io.github.jonloucks.concurrency.api.Completion.Config.Builder
-
Assign the value
- valueOf(String) - Static method in enum class io.github.jonloucks.concurrency.api.Completion.State
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class io.github.jonloucks.concurrency.api.Completion.State
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Returns an array containing the constants of this enum class, in the order they are declared.
W
- Waitable<T> - Interface in io.github.jonloucks.concurrency.api
-
Provides mutable reference that allows other threads to wait until the value satisfies a given condition.
- WaitableConsumer<T> - Interface in io.github.jonloucks.concurrency.api
-
Waitable consumer
- WaitableFactory - Interface in io.github.jonloucks.concurrency.api
-
Waitable Factory
- WaitableNotify<T> - Interface in io.github.jonloucks.concurrency.api
-
Notify lister when condition is satisfied
- WaitableSupplier<T> - Interface in io.github.jonloucks.concurrency.api
-
Waitable supplier
- waitFor(Predicate<T>) - Method in interface io.github.jonloucks.concurrency.api.Waitable
-
Deprecated.
- waitFor(Predicate<T>, Duration) - Method in interface io.github.jonloucks.concurrency.api.Waitable
-
Deprecated.Replaced by
getWhen(Predicate, Duration) - withClose(StateMachine<Idempotent>, AutoClose) - Static method in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Assist with an idempotent close
- withOpen(StateMachine<Idempotent>, AutoOpen) - Static method in enum class io.github.jonloucks.concurrency.api.Idempotent
-
Assist with an idempotent close
All Classes and Interfaces|All Packages|Serialized Form
getWhen(Predicate)