Record NatsMsgSender

java.lang.Object
java.lang.Record
io.memoria.jutils.messaging.adapter.nats.NatsMsgSender
All Implemented Interfaces:
MsgSender

public record NatsMsgSender(io.nats.client.Connection nc, reactor.core.scheduler.Scheduler scheduler, java.time.Duration timeout)
extends java.lang.Record
implements MsgSender
  • Constructor Summary

    Constructors 
    Constructor Description
    NatsMsgSender​(io.nats.client.Connection nc, reactor.core.scheduler.Scheduler scheduler, java.time.Duration timeout)
    Creates an instance of a NatsMsgSender record.
  • Method Summary

    Modifier and Type Method Description
    boolean equals​(java.lang.Object o)
    Indicates whether some other object is "equal to" this one.
    int hashCode()
    Returns a hash code value for this object.
    io.nats.client.Connection nc()
    Returns the value of the nc record component.
    reactor.core.scheduler.Scheduler scheduler()
    Returns the value of the scheduler record component.
    reactor.core.publisher.Flux<io.vavr.control.Option<Message>> send​(java.lang.String topic, int partition, reactor.core.publisher.Flux<Message> msgFlux)  
    java.time.Duration timeout()
    Returns the value of the timeout record component.
    java.lang.String toString()
    Returns a string representation of this record.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • NatsMsgSender

      public NatsMsgSender​(io.nats.client.Connection nc, reactor.core.scheduler.Scheduler scheduler, java.time.Duration timeout)
      Creates an instance of a NatsMsgSender record.
      Parameters:
      nc - the value for the nc record component
      scheduler - the value for the scheduler record component
      timeout - the value for the timeout record component
  • Method Details

    • send

      public reactor.core.publisher.Flux<io.vavr.control.Option<Message>> send​(java.lang.String topic, int partition, reactor.core.publisher.Flux<Message> msgFlux)
      Specified by:
      send in interface MsgSender
    • toString

      public java.lang.String toString()
      Returns a string representation of this record. The representation contains the name of the type, followed by the name and value of each of the record components.
      Specified by:
      toString in class java.lang.Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class java.lang.Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals​(java.lang.Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record are compared with Objects::equals(Object,Object).
      Specified by:
      equals in class java.lang.Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • nc

      public io.nats.client.Connection nc()
      Returns the value of the nc record component.
      Returns:
      the value of the nc record component
    • scheduler

      public reactor.core.scheduler.Scheduler scheduler()
      Returns the value of the scheduler record component.
      Returns:
      the value of the scheduler record component
    • timeout

      public java.time.Duration timeout()
      Returns the value of the timeout record component.
      Returns:
      the value of the timeout record component