Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Index your code
hub
/
github.com/daichi-m/jach
/ types & classes
Types & classes
43 in github.com/daichi-m/jach
⨍
Functions
154
◇
Types & classes
43
Interface
Action
{@link Action} is a void consumer. It does not take any parameters and does not return any value.
src/main/java/io/github/daichim/jach/channel/Action.java:9
Interface
AfterWriteAction
{@link AfterWriteAction} denotes an action that will be executed in the writer thread once the write is successfully completed to the destination. <p>
src/main/java/io/github/daichim/jach/internal/AfterWriteAction.java:10
Class
BufferedChannel
{@link BufferedChannel} is an implementation of a {@link Channel} that has a fixed size buffer backing it. Once the buffer is full subsequent attempts
src/main/java/io/github/daichim/jach/channel/BufferedChannel.java:60
Class
BufferedChannelTest
src/test/java/io/github/daichim/jach/channel/BufferedChannelTest.java:29
Interface
Channel
{@link Channel} is equivalent of a Golang channel in Java. It behaves like a queue on which messages can be passed from one thread to another. The cha
src/main/java/io/github/daichim/jach/channel/Channel.java:32
Class
ChannelAction
{@link ChannelAction} is a combination of a {@link Channel} and a {@link Consumer} that will be executed on each message of the channel.
src/main/java/io/github/daichim/jach/channel/selector/ChannelAction.java:13
Class
ChannelIterator
An {@link Iterator} for {@link BufferedChannel}. It is a blocking iterator, where if there is no message on the channel, the iterator will block until
src/main/java/io/github/daichim/jach/internal/ChannelIterator.java:16
Class
ChannelIteratorTest
src/test/java/io/github/daichim/jach/internal/ChannelIteratorTest.java:16
Class
ClosedChannelException
Exception thrown in case of attempting to operate on a {@link Channel} which has already been closed.
src/main/java/io/github/daichim/jach/exception/ClosedChannelException.java:9
Interface
Copier
{@link Copier} provides the mechanism by which a {@link Channel} copies the incoming message to it's in-memory data-structure. @param <T> The type of
src/main/java/io/github/daichim/jach/channel/copier/Copier.java:12
Class
CopyException
src/main/java/io/github/daichim/jach/exception/CopyException.java:3
Class
JachChannels
{@link JachChannels} is a utility class to access most of the common features without the explicit need for calling complex constructors or methods.
src/main/java/io/github/daichim/jach/JachChannels.java:21
Class
JachTime
{@link JachTime} contains utility methods which exposes methods related to time using {@link Channel}.
src/main/java/io/github/daichim/jach/JachTime.java:22
Class
KryoCopier
{@link KryoCopier} uses Kryo serializer to do a deep copy of the object. For more information about Kryo, please check https://github.com/EsotericSoft
src/main/java/io/github/daichim/jach/channel/copier/KryoCopier.java:14
Class
KryoCopierTest
src/test/java/io/github/daichim/jach/channel/copier/KryoCopierTest.java:8
Class
MessageValidator
src/test/java/io/github/daichim/jach/utils/MessageValidator.java:10
Class
NoSuchChannelElementException
Exception thrown when the channel is closed while iterating over a {@link Channel}. It is thrown by the channel's iterator, but using forEach method w
src/main/java/io/github/daichim/jach/exception/NoSuchChannelElementException.java:12
Interface
Readable
{@link Readable} interface denotes a data-structure which can be used to read messages from some source. This interface is for internal purposes and s
src/main/java/io/github/daichim/jach/internal/Readable.java:14
Class
RefCopier
{@link RefCopier} is the simplest {@link Copier} that returns the same object reference as the parameter. {@link RefCopier} is an identity function.
src/main/java/io/github/daichim/jach/channel/copier/RefCopier.java:9
Class
RefCopierTest
src/test/java/io/github/daichim/jach/channel/copier/RefCopierTest.java:10
Interface
Routine0
src/main/java/io/github/daichim/jach/routines/Routines.java:9
Interface
Routine1
src/main/java/io/github/daichim/jach/routines/Routines.java:13
Interface
Routine2
src/main/java/io/github/daichim/jach/routines/Routines.java:17
Interface
Routine3
src/main/java/io/github/daichim/jach/routines/Routines.java:21
Interface
Routine4
src/main/java/io/github/daichim/jach/routines/Routines.java:25
Interface
Routine5
src/main/java/io/github/daichim/jach/routines/Routines.java:29
Interface
Routine6
src/main/java/io/github/daichim/jach/routines/Routines.java:33
Interface
Routine7
src/main/java/io/github/daichim/jach/routines/Routines.java:37
Interface
Routine8
src/main/java/io/github/daichim/jach/routines/Routines.java:41
Interface
Routine9
src/main/java/io/github/daichim/jach/routines/Routines.java:45
Class
Routines
{@link Routines} are interfaces that are equivalent of go-routines.
src/main/java/io/github/daichim/jach/routines/Routines.java:6
Class
Selector
{@link Selector} is used to run a select call over multiple {@link Channel}s and take action based on which channel a message appears (through a set o
src/main/java/io/github/daichim/jach/channel/selector/Selector.java:58
Class
SelectorTest
src/test/java/io/github/daichim/jach/channel/selector/SelectorTest.java:26
Class
TestPojo
src/test/java/io/github/daichim/jach/channel/copier/TestPojo.java:7
Class
TickCounter
src/test/java/io/github/daichim/jach/time/TickerTest.java:103
Class
Ticker
src/main/java/io/github/daichim/jach/time/Ticker.java:12
Class
TickerTest
src/test/java/io/github/daichim/jach/time/TickerTest.java:22
Class
TimeoutException
src/main/java/io/github/daichim/jach/exception/TimeoutException.java:3
Class
Timer
{@link Timer} represents a single event. It is always instantiated with a fixed duration, after which it sends an event to it's channel and can option
src/main/java/io/github/daichim/jach/time/Timer.java:17
Class
TimerTest
src/test/java/io/github/daichim/jach/time/TimerTest.java:19
Class
TooManySelectorException
{@link TooManySelectorException} is thrown when a particular {@link Channel} is used in too many {@link Selector}s and the system cannot sustain it.
src/main/java/io/github/daichim/jach/exception/TooManySelectorException.java:12
Class
UnbufferedChannel
{@link UnbufferedChannel} is a special {@link Channel} where only one message can be written and subsequent writes block until that message is read by
src/main/java/io/github/daichim/jach/channel/UnbufferedChannel.java:13
Interface
Writable
{@link Writable} interface denotes a data-structure which can be used to write messages which can then be read using a {@link Readable}. This interfac
src/main/java/io/github/daichim/jach/internal/Writable.java:14