Skip navigation links
A B C D E F G I M N O P R S T U V W 

A

accept(StateMachine<?>, Object) - Method in interface io.github.actorish4j.StateMachine.EventConsumer
StateMachine is passed here only for printing or monitoring (toString()/associatedId() methods)
ActorishUtil - Class in io.github.actorish4j.internal
 
Agent<S> - Class in io.github.actorish4j
Agents provide access to shared state in async fashion.
Agent(S) - Constructor for class io.github.actorish4j.Agent
 
Agent(S, Consumer<TaskEnqueuer.Conf>) - Constructor for class io.github.actorish4j.Agent
 
Agent(S, TaskEnqueuer.Conf) - Constructor for class io.github.actorish4j.Agent
 
Agent.StateValuePair<S,V> - Class in io.github.actorish4j
 
apply(E) - Method in interface io.github.actorish4j.StateMachine.StateFunc
 
associatedId() - Method in class io.github.actorish4j.Enqueuer
User associated id, can be anything having good toString() method.
AsyncCallable<T> - Interface in io.github.actorish4j
 
AsyncRunnable - Interface in io.github.actorish4j
AsyncRunnable is considered complete when the resultant CompletionStage is complete.

B

begin() - Method in interface io.github.actorish4j.applications.ExactDateScheduler.Task.Info
 

C

callAsync() - Method in interface io.github.actorish4j.AsyncCallable
Must be non-blocking (usually, but it depends on chosen thread pool in Conf)
Conf() - Constructor for class io.github.actorish4j.applications.ExactDateScheduler.Conf
 
Conf() - Constructor for class io.github.actorish4j.applications.NettyChannelWritesEnqueuer.Conf
 
Conf() - Constructor for class io.github.actorish4j.Enqueuer.Conf
 
Conf() - Constructor for class io.github.actorish4j.StateMachine.Conf
 
Conf() - Constructor for class io.github.actorish4j.TaskEnqueuer.Conf
 
create(int) - Method in interface io.github.actorish4j.Enqueuer.QueueFactory
 

D

DefaultImpl() - Constructor for class io.github.actorish4j.Timer.DefaultImpl
 
defaultInstance() - Static method in interface io.github.actorish4j.Timer
If you use Netty, it's good idea to implement Timer interface on top of HashWheelTimer, so avoid defaultInstance() in that case.
delay() - Method in interface io.github.actorish4j.applications.ExactDateScheduler.Task.Info
 
delay(Runnable, long, TimeUnit) - Method in interface io.github.actorish4j.Timer
 
delayValue(T, long, TimeUnit) - Method in interface io.github.actorish4j.Timer
 
disableSameThreadOptimization() - Method in class io.github.actorish4j.Enqueuer.Conf
Disabling same-thread behaviour means that the polling task will always be executed at the thread pool.
doneFuture - Static variable in class io.github.actorish4j.internal.ActorishUtil
 

E

Enqueuer<T> - Class in io.github.actorish4j
Enqueuer implements multiple-producer single-consumer pattern, anyone can offer message to the Enqueuer, but only the single consumer Enqueuer.pollAsync(Queue) can read (poll) the queue.
Enqueuer(Enqueuer.Conf) - Constructor for class io.github.actorish4j.Enqueuer
 
Enqueuer.Conf - Class in io.github.actorish4j
Configuration object.
Enqueuer.QueueFactory<T> - Interface in io.github.actorish4j
 
ExactDateScheduler - Class in io.github.actorish4j.applications
Experimental, Enqueuer application to exact-date scheduling.
ExactDateScheduler(ExactDateScheduler.Conf) - Constructor for class io.github.actorish4j.applications.ExactDateScheduler
 
ExactDateScheduler(Consumer<ExactDateScheduler.Conf>) - Constructor for class io.github.actorish4j.applications.ExactDateScheduler
 
ExactDateScheduler() - Constructor for class io.github.actorish4j.applications.ExactDateScheduler
 
ExactDateScheduler.Conf - Class in io.github.actorish4j.applications
 
ExactDateScheduler.Task - Interface in io.github.actorish4j.applications
 
ExactDateScheduler.Task.Info - Interface in io.github.actorish4j.applications
 

F

finalState() - Method in class io.github.actorish4j.StateMachine
 
finalStateReached() - Method in class io.github.actorish4j.StateMachine
Use async-methods of resultant CompletionStage (with custom executor) if you need lengthy/blocking processing of final-state-reached event!
fromRunnable(Runnable) - Static method in interface io.github.actorish4j.applications.ExactDateScheduler.Task
 

G

get() - Method in class io.github.actorish4j.Agent
 
get(Function<? super S, ? extends A>) - Method in class io.github.actorish4j.Agent
 
getAndUpdate(Function<? super S, Agent.StateValuePair<S, A>>) - Method in class io.github.actorish4j.Agent
 
getAndUpdateAsync(Function<? super S, ? extends CompletionStage<Agent.StateValuePair<S, A>>>) - Method in class io.github.actorish4j.Agent
 
getAsync(Function<? super S, ? extends CompletionStage<A>>) - Method in class io.github.actorish4j.Agent
 
goTo(CompletionStage<StateMachine.StateFunc<E>>) - Method in class io.github.actorish4j.StateMachine
Basic async transition: all other transitions are expressed in terms of this method.
goTo(CompletionStage<StateMachine.StateFunc<E>>, long, TimeUnit) - Method in class io.github.actorish4j.StateMachine
Async transition, with delay after async computation.
goTo(CompletionStage<StateMachine.StateFunc<E>>, int) - Method in class io.github.actorish4j.StateMachine
Async transition with delay after async computation.
goTo(StateMachine.StateFunc<E>, long, TimeUnit) - Method in class io.github.actorish4j.StateMachine
Sync transition with delay
goTo(StateMachine.StateFunc<E>, int) - Method in class io.github.actorish4j.StateMachine
Sync transition with delay
goTo(StateMachine.StateFunc<E>) - Method in class io.github.actorish4j.StateMachine
Sync transition

I

initialState() - Method in class io.github.actorish4j.StateMachine
Descendants must implement this "getter".
io.github.actorish4j - package io.github.actorish4j
 
io.github.actorish4j.applications - package io.github.actorish4j.applications
 
io.github.actorish4j.internal - package io.github.actorish4j.internal
 

M

mustOffer(AsyncRunnable) - Method in class io.github.actorish4j.TaskEnqueuer
Be careful this method will throw RejectedExecutionException, if queue overflows
mustOfferCall(AsyncCallable<V>) - Method in class io.github.actorish4j.TaskEnqueuer
Be careful this method will throw RejectedExecutionException, if queue overflows

N

NettyChannelWritesEnqueuer - Class in io.github.actorish4j.applications
Experimental.
NettyChannelWritesEnqueuer(Channel, NettyChannelWritesEnqueuer.Conf) - Constructor for class io.github.actorish4j.applications.NettyChannelWritesEnqueuer
 
NettyChannelWritesEnqueuer(Channel) - Constructor for class io.github.actorish4j.applications.NettyChannelWritesEnqueuer
 
NettyChannelWritesEnqueuer.Conf - Class in io.github.actorish4j.applications
 
newConf() - Static method in class io.github.actorish4j.TaskEnqueuer
 
newEnqueuer(Poller<T>, Enqueuer.Conf) - Static method in interface io.github.actorish4j.Poller
 
newEnqueuer(Poller<T>) - Static method in interface io.github.actorish4j.Poller
 
newEnqueuer(Poller<T>, Consumer<Enqueuer.Conf>) - Static method in interface io.github.actorish4j.Poller
 
newPreallocatedQueue(int) - Static method in class io.github.actorish4j.internal.ActorishUtil
 

O

offer(T) - Method in class io.github.actorish4j.Enqueuer
This method just calls Queue.offer(Object), and possibly schedules Enqueuer.pollAsync(Queue) execution.
offerCall(AsyncCallable<V>) - Method in class io.github.actorish4j.TaskEnqueuer
 
offerMany(Iterable<? extends T>) - Method in class io.github.actorish4j.Enqueuer
More efficient than repeated offer() calls for many items.
onReject(Object) - Method in interface io.github.actorish4j.TaskEnqueuer.RejectsListener
 
order() - Method in interface io.github.actorish4j.applications.ExactDateScheduler.Task.Info
 

P

pollAsync(Queue<ByteBuf>) - Method in class io.github.actorish4j.applications.NettyChannelWritesEnqueuer
 
pollAsync(Queue<T>) - Method in class io.github.actorish4j.Enqueuer
This method will be scheduled for execution when the queue is not empty.
pollAsync(Queue<T>) - Method in interface io.github.actorish4j.Poller
 
pollAsync(Queue<AsyncRunnable>) - Method in class io.github.actorish4j.TaskEnqueuer
internal method, todo: exclude from docs.
pollByChunk(int, Function<List<T>, CompletionStage<?>>) - Static method in interface io.github.actorish4j.Poller
Creates Poller that polls by chunk.
pollByOne(Function<T, CompletionStage<?>>) - Static method in interface io.github.actorish4j.Poller
Creates Poller that polls by one.
Poller<T> - Interface in io.github.actorish4j
This interface provides alternative ways to create Enqueuer instances i.e.
pollMany(int, Queue<? extends T>, Consumer<? super T>) - Static method in class io.github.actorish4j.internal.ActorishUtil
Polls until q.poll() returns null or max elements reached.

R

realBegin() - Method in interface io.github.actorish4j.applications.ExactDateScheduler.Task.Info
 
recover(Throwable) - Method in class io.github.actorish4j.StateMachine
Descendants may override this behaviour, by default StateMachine can't recover and so it goes to finalState()
run(ExactDateScheduler.Task.Info) - Method in interface io.github.actorish4j.applications.ExactDateScheduler.Task
 
runAsync() - Method in interface io.github.actorish4j.AsyncRunnable
Must be non-blocking (usually, but it depends on chosen thread pool in Conf) It may return null, which is interpreted the same as CompletableFuture.completedFuture(Object) (immediate completion)

S

sameState() - Method in class io.github.actorish4j.StateMachine
 
schedule(LocalDateTime, ExactDateScheduler.Task) - Method in class io.github.actorish4j.applications.ExactDateScheduler
 
schedule(LocalDateTime, Runnable) - Method in class io.github.actorish4j.applications.ExactDateScheduler
 
schedule(LocalDateTime, Callable<T>) - Method in class io.github.actorish4j.applications.ExactDateScheduler
 
send(E) - Method in class io.github.actorish4j.StateMachine
Descendants may override this method to be public, or better define their own specific methods which call send() internally.
setAssociatedId(Object) - Method in class io.github.actorish4j.Enqueuer.Conf
Optional user associated id, it is used for exception logging, and in toString()
setBoundedQueue(int) - Method in class io.github.actorish4j.Enqueuer.Conf
 
setCustomQueue(Enqueuer.QueueFactory<T>) - Method in class io.github.actorish4j.Enqueuer.Conf
Most users should be happy with default queues, but if you need something very special...
setCustomQueue(Supplier<Queue<?>>) - Method in class io.github.actorish4j.Enqueuer.Conf
 
setFinalStateHandler(StateMachine.EventConsumer) - Method in class io.github.actorish4j.StateMachine.Conf
Use it only for logging or monitoring, if you're not happy with the default behaviour.
setPlannedTasksLimit(int) - Method in class io.github.actorish4j.applications.ExactDateScheduler.Conf
 
setQueueWrapper(UnaryOperator<Queue<T>>) - Method in class io.github.actorish4j.Enqueuer.Conf
Use this method if you'd like to gather some stats e.g.
setRejectsListener(TaskEnqueuer.RejectsListener) - Method in class io.github.actorish4j.TaskEnqueuer.Conf
For logging/monitoring usage only.
setThreadPool(Executor) - Method in class io.github.actorish4j.Enqueuer.Conf
Default pool is FJP.
setTimer(Timer) - Method in class io.github.actorish4j.applications.ExactDateScheduler.Conf
 
setTimer(Timer) - Method in class io.github.actorish4j.StateMachine.Conf
 
setUnboundedQueue() - Method in class io.github.actorish4j.Enqueuer.Conf
Be careful and prefer bounded queues for the cases where you deal with external untrusted user input (heap overflow exploit).
state - Variable in class io.github.actorish4j.Agent.StateValuePair
 
StateMachine<E> - Class in io.github.actorish4j
Event-Driven State Machine implementation inspired by Erlang gen_statem (gen_fsm) behaviour in a "state functions mode".
StateMachine(StateMachine.Conf) - Constructor for class io.github.actorish4j.StateMachine
 
StateMachine.Conf - Class in io.github.actorish4j
Configuration object
StateMachine.EventConsumer - Interface in io.github.actorish4j
 
StateMachine.NextState - Class in io.github.actorish4j
This class only exists to enforce the rule that the last statement in a StateFunc must be return goTo(...).
StateMachine.StateFunc<E> - Interface in io.github.actorish4j
Event handler for some state.
StateValuePair(S, V) - Constructor for class io.github.actorish4j.Agent.StateValuePair
 

T

TaskEnqueuer - Class in io.github.actorish4j
TaskEnqueuer is the Enqueuer that polls and executes async tasks AsyncRunnable one by one
TaskEnqueuer(TaskEnqueuer.Conf) - Constructor for class io.github.actorish4j.TaskEnqueuer
 
TaskEnqueuer() - Constructor for class io.github.actorish4j.TaskEnqueuer
 
TaskEnqueuer(Consumer<TaskEnqueuer.Conf>) - Constructor for class io.github.actorish4j.TaskEnqueuer
This constructor form can save you a few lines of code: you don't need to create configuration object yourself.
TaskEnqueuer.Conf - Class in io.github.actorish4j
Configuration object.
TaskEnqueuer.RejectsListener - Interface in io.github.actorish4j
This hook may be helpful if you need to count how many times RejectedExecutionException was thrown in mustOffer-methods of TaskEnqueuer.
threadPool() - Method in class io.github.actorish4j.Enqueuer
 
timer - Variable in class io.github.actorish4j.StateMachine
 
Timer - Interface in io.github.actorish4j
Experimental API, cancellation may be added in the future.
Timer.DefaultImpl - Class in io.github.actorish4j
 

U

underlyingEnq() - Method in class io.github.actorish4j.Agent
 
underlyingEnq() - Method in class io.github.actorish4j.Enqueuer
 
underlyingEnq() - Method in class io.github.actorish4j.StateMachine
 
update(Function<? super S, ? extends S>) - Method in class io.github.actorish4j.Agent
 
updateAsync(Function<? super S, ? extends CompletionStage<? extends S>>) - Method in class io.github.actorish4j.Agent
 
usePreallocatedQueue() - Method in class io.github.actorish4j.Enqueuer.Conf
Queue choice tweak for bounded queues

V

value - Variable in class io.github.actorish4j.Agent.StateValuePair
 

W

with(T, Consumer<? super T>) - Static method in class io.github.actorish4j.internal.ActorishUtil
 
A B C D E F G I M N O P R S T U V W 
Skip navigation links