drasyl API Reference (0.11.0-SNAPSHOT)

Package
Description
netty Channel for the drasyl overlay network.
A virtual Channel that helps wrapping a series of handlers to unit test the handlers or use them in non-I/O context.
Classes for crypto-related operations.
Helper to load resources from (nested) JARs or file system
Libsodium wrappers for the crypto operations of drasyl
Codecs, Handlers, and Messages for the Stop-and-wait-ARQ protocols.
Codecs, Handlers, and Messages for the Go-Back-N protocol.
For message decoding and encoding (like serialization).
Connection-oriented communication with peers.
Chord-based distributed hash table.
Different methods to discover peers.
 
Logs channel events/messages for debugging purpose.
CYCLON membership management.
Logs channel events/messages for monitoring purpose.
Information about peers.
 
Handlers used to communicate with remote nodes.
Contains classes necessary for encrypted protocol communication.
Discovery/Routing of peers on the internet.
Contains PortMapper that attempts to create port forwarding via PCP, NAT-PMP, UPnP-IDG.
The protocol used for communication with remote peers.
Contains the pipeline handlers for TCP fallback connections.
 
 
 
 
Codecs, Channel Handlers, and Messages for sending large data streams asynchronously neither spending a lot of memory nor getting OutOfMemoryError
Handler for traffic shaping.
Contains classes to manage the Identity of the drasyl node.
Contains DrasylNode.
Describes DrasylNodes as finite state machines.
netty Channel for the DrasylNode.
Contains events that inform about various states of the DrasylNode (started, stopped, etc.) or overlay network events (messages, peer discovery, etc.)
ChannelHandlers used by the DrasylNode.
Contains classes necessary for encrypted peer/application communication.
Flexible extensions of drasyl via plugins that can be loaded into the pipeline together with user-defined settings.
Serialization of java objects to byte arrays and vice versa.
Adds support for read and write timeout and idle connection notification.
Handles the Identity creation of the DrasylNode.
The groups client plugin.
Events that are emitted when this plugin is enabled.
Messages that are used to communicate with other nodes using the groups plugin.
The groups manager plugin.
Classes used to model the internal state of the manager (e.g.
Contains a backend (e.g.
Adapter to connect the groups manager with a JDBC-compliant database.
 
Utility classes used across multiple packages.
Internal-use-only utilities which should not used outside drasyl.
Logging API (for internal use only).
Network-related utility classes.
Contains several utilities that help in dealing with specific protocols (e.g.