Class NioTLSSyslogSenderImpl<H,D extends NioTLSSyslogSenderImpl.Destination<H>>

Type Parameters:
H - handle representation of the concrete NIO framework used by subclasses
All Implemented Interfaces:
AuditTransmissionProtocol
Direct Known Subclasses:
NettyTLSSyslogSenderImpl, ReactorNettyTLSSyslogSenderImpl, VertxTLSSyslogSenderImpl

public abstract class NioTLSSyslogSenderImpl<H,D extends NioTLSSyslogSenderImpl.Destination<H>> extends RFC5425Protocol implements AuditTransmissionProtocol
Abstract base class for non-blocking TLS sender implementations.
Since:
3.7
Author:
Christian Ohr
  • Constructor Details

    • NioTLSSyslogSenderImpl

      public NioTLSSyslogSenderImpl(TlsParameters tlsParameters)
  • Method Details

    • setLoggingEnabled

      public void setLoggingEnabled(boolean loggingEnabled)
    • customizeDestination

      protected D customizeDestination(D destination)
      Allows to customize the destination, e.g. to set network-specific parameters
      Parameters:
      destination - destination used for the connection
    • send

      public void send(AuditContext auditContext, AuditMetadataProvider auditMetadataProvider, String auditMessage)
      Description copied from interface: AuditTransmissionProtocol
      Transmits the message
      Specified by:
      send in interface AuditTransmissionProtocol
      Parameters:
      auditContext - audit context that e.g. contains the destination
      auditMetadataProvider - dedicated (message-specific) audit metadata
      auditMessage - audit message strings
    • makeDestination

      protected abstract D makeDestination(TlsParameters tlsParameters, String host, int port, boolean logging)
    • shutdown

      public void shutdown()
      Description copied from interface: AuditTransmissionProtocol
      May be implemented to clean up instances on shut down
      Specified by:
      shutdown in interface AuditTransmissionProtocol