A library for working with common Input/Output routes and providing better utilities for Java's I/O streams.
<repository> <id>kenzie</id> <name>Kenzie's Repository</name> <url>https://repo.kenzie.mx/releases</url> </repository><dependency> <groupId>mx.kenzie</groupId> <artifactId>jupiter</artifactId> <version>1.0.2</version> </dependency>Jupiter provides a set of utilities for working with streams and channels, to make integrating them easier and to reduce the amount of necessary boilerplate for common tasks.
These utilities include:
- Synchronization locks for streams (where multithreaded access would normally be dangerous)
- Stream controllers that can perform simple conversion tasks
- Forking, locking and wrapping streams with automatic resource disposal
- Lazy iteration of stream data to avoid messy while-loops
- Stream data directly in and out of heap memory
There are also more advanced utilities for handling complex socket connections.
The SocketPair provides a smart two-way socket channel between two known addresses with automatic host/guest deference.
The SocketHub provides a fluid-size socket network connection for organising channels between an unknown set of guests.