All Classes and Interfaces

Class
Description
This class models an address, that can be used inside the Pipeline by Handlers, to know an application/protocol specific endpoint of a sender or recipient.
HandlerAdapter which allows to explicit only handle a specific type of address.
A message that is sent by an application running on drasyl.
Handler that converts a given ApplicationMessage to an ObjectHolder.
All classes that implement this interface will be silent and automatically swallowed at the end of the pipeline.
Creates a newly configured ChannelPipeline for a connection to a node server.
This handler performs the handshake with the server and processes incoming messages during the session.
This class encapsulates all information needed by a ClientChannelInitializer.
A ClientException is thrown by clients when errors occur.
Codec<E,D,A extends Address>
Standard interface for all codecs of the Pipeline.
This class is a simple holder for a compressed key pair (a CompressedPublicKey and a CompressedPrivateKey).
This interface models a compressed key that can be converted into a string and vice versa.
This interface models a compressed key that can be converted into a string and vice versa.
Util class that provides cryptography functions for drasyl.
A CryptoException is thrown by Crypto when errors occur.
This class is responsible for storing the groups plugin options.
 
This exception signals an error occurred during execution in DatabaseAdapter implementations.
Creates a newly configured ChannelPipeline for a ClientConnection to a node server.
This default codec allows to encode/decode all supported objects by Jackson.
The default handler context implementation.
Abstract Pipeline implementation, that needs head and tail.
Creates a newly configured ChannelPipeline for the node server.
Creates a newly configured ChannelPipeline for a new channel for a connection to or from a the Server.
Used by DirectConnectionsManager to establish a direct connection to another peer.
This class caches all peers for a direct connection has been demanded.
This handler tries to send outgoing messages via TCP-based direct connection to another peers.
This class is responsible for establishing and managing direct connections with other drasyl nodes.
BiFunction that can throw a Exception.
This class represents the configuration for a DrasylNode.
Builder class to create a DrasylConfig with custom values.
Consumer that can throw a DrasylException.
All checked exceptions in drasyl inherit from this exception class.
Function that can throw a Exception.
Represents a node in the drasyl Overlay Network.
This interface describes components of the DrasylNode.
The default Pipeline implementation.
This interface is implemented by all drasyl plugins.
All unchecked exceptions in drasyl inherit from this exception class.
It is an intentional behavior that this scheduler ensures that the JVM is not automatically terminated once all sequential program flows have been processed.
Supplier that can throw a DrasylException.
 
Embedded Pipeline implementation, that allows easy testing of Handlers.
Represents an endpoint of a drasyl node.
A message representing an error.
Specifies the type of the ErrorMessage.
Describes an Event that provides the application with information about the local node, other peers, connections or incoming messages.
This handler listens to exceptions on the pipeline and sends them as ErrorMessage to the peer.
Utility class for future-related operations.
A simple POJO that models a group.
Class is used to model the state of a group.
An event that is related to a Group.
An event that signals that this node has successfully joined a group.
An event that signals, that a joining a specific group has failed.
This message is sent by the groups server to the client when the join to a group was not successful.
Specifies the reason of the GroupJoinFailedMessage.
This message is send by the groups client to the server to join a group.
This message is send by the groups client to the server to leave a group.
An event that signals that this node has left a group.
An event that signals that a new member joined a group.
An event that signals that a member has left a group.
This class represents the configuration for the GroupsClientPlugin.
Implements the builder-pattern for this configuration.
 
This message is send by the groups client to the server.
The Groups Membership Client Plugin allows drasyl nodes to connect to membership managers at startup to join groups.
This class starts a HTTP server with a REST API to manage groups and memberships.
This class represents the configuration for the GroupsManagerPlugin.
Implements the builder-pattern for this configuration.
 
Starting point for the groups master plugin.
Default interface for all messages of the groups plugin.
This message is send by the groups server to the client.
This class models the connection/join setting of a group.
This message is sent by the groups server to the client when the join to a group was successful.
Handles an I/O event or intercepts an I/O operation, and forwards it to its next handler in its Pipeline.
Skeleton implementation of a Handler.
Enables a Handler to interact with its Pipeline and other handlers.
Util class that provides hashing functions for drasyl.
Util class that provides hexadecimal functions for drasyl.
Represents the private identity of a peer (includes the proof of work, the public and private key).
This class holds the identity of the node.
A IdentityManagerException is thrown by the IdentityManager when errors occur.
This message is used as a response to a WhoisMessage and contains information about a peer (like public key and endpoints).
This class holds an InetAddress for the processing inside the Pipeline as an Address.
Represents a pool of unique objects of type T.
Uses shared memory to discover other drasyl nodes running on same JVM.
DatabaseAdapter implementation that supports SQL databases.
A message representing a join to the node server.
Holder for the JSON serializer and JSON deserializer.
Uses the file system to discover other drasyl nodes running on the local computer.
Utility class for logging-related operations.
This handler delivers outgoing messages addressed to the local node.
Class is used to model the state of a member.
This message is sent by the groups server to the client when a new member has joined a group.
This message is sent by the groups server to the client when a member has left a group.
Class is used to model the state of a group member.
Describes messages that are sent by the Server or a client.
Decodes a String into a Message object.
A MessageDecoderException is thrown by the MessageDecoder when errors occur.
Encodes a Message into a String object.
A MessageEncoderException is thrown by the MessageEncoder when errors occur.
This event signals that the node has received a message addressed to it.
A Message is uniquely identified by its 24 lower-case hex digit identifier.
Monitors various states or events in the drasyl Node.
Utility class for network-related operations.
Used by Event to describe an event related to the local Node (e.g.
This event signals that the node is shut down.
Events that refer to a Node.
This events signals that the node has terminated normally.
This event signals that the node is currently not connected to a super peer.
This event signals that the node has successfully registered with the super peer.
This events signals that the node encountered an unrecoverable error.
This event signals that the node has been started.
Simple class that holds a serialized object as byte array and the corresponding class of the deserialized object.
Handler that convert a given ObjectHolder to an ApplicationMessage.
This particular Implementation of a drasyl Node shows exemplary how incoming Events can be processed using the Observer Pattern.
Utility class for operations on Observables.
A tuple of two elements.
Represents a path for sending messages to a specific Peer.
Utility class for operations on Pathes.
Used by Event to describe an event related to a Peer (e.g.
Special type of ChannelGroup, which has a lookup complexity of O(1) instead of O(n) for lookups by CompressedPublicKey.
This event signals that the node has established a direct connection to a peer.
Events that refer to a Peer.
Contains information on a specific peer (e.g.
This event signals that the node has established a connection via a super peer to a peer.
This class contains information about other peers.
A message representing a PING request.
This handler acts as a health check for a connection.
A list of Handlers which handles or intercepts inbound events and outbound operations of a DrasylNode.
RuntimeException thrown by the Pipeline.
Models environment information of a DrasylPlugin that are required by the plugin.
The PluginManager notifies all enabled plugins about specific node events (like startup or shutdown).
A message representing a PONG response.
Class for the creation of port mappings to make local services externally/publicly accessible.
Represents a port mapping.
 
This class models the proof of work for a given public key.
A message representing a termination of a connection.
Specifies the reason for closing the connection.
 
This handler ensures that Messages do not infinitely circulate in the network.
Messages of this type represent a request.
This class caches all peers for which information has been requested.
Messages of this type represent a response to a previously received RequestMessage.
Utility class for security-related operations.
The server binds to a defined port and thus allows the node to be discovered and contacted by other peers.
Creates a newly configured ChannelPipeline for every incoming connection to a node server.
Acts as a guard for in- and outbound connections.
This class encapsulates all information needed by a ServerChannelInitializer.
A ServerException is thrown by the Server when errors occur.
This handler returns an HTML error page if the HTTP request does not perform a Websocket upgrade.
This handler acts as a channel creation guard.
Utility class for operations on Sets.
Instances of classes that implement this interface are considered signable.
A signature class for drasyl messages, that wraps a byte array signature.
Acts as a guard for in- and outbound messages.
Represents a container with a signature for the SignedMessage.payload.
ChannelDuplexHandler which allows to explicit only handle a specific type of messages.
ChannelOutboundHandlerAdapter which allows to explicit only handle a specific type of messages.
HandlerAdapter which allows to explicit only handle a specific type of messages and events.
HandlerAdapter which allows to explicit only handle a specific type of messages and events.
HandlerAdapter which allows to explicit only handle a specific type of messages.
A simple wrapper for the given connection, that does not automatically close in a try-with-resources block.
Represents a confirmation of a previous sent RequestMessage.
This class represents the link between DrasylNode and the super peer.
 
This handler performs the client-side part of a three-way handshake to create a session.
This handler performs the server-side part of a three-way handshake to create a session.
A tuple of three elements.
The TypeValidator allows to define which classes and packages may be handled by a codec.
Utility class for operations on URIs.
Utility class for operations on URLs.
Utility class for operations on websocket URIs (e.g.
A message representing the welcome message of the node server, including fallback information.
This message is used to request information (like public key and endpoints) for a specific identity.