Record Class DecodedMessage<V extends JsonMessage,T extends io.vertx.core.json.JsonObject>
java.lang.Object
java.lang.Record
de.wuespace.telestion.api.verticle.trait.DecodedMessage<V,T>
- Type Parameters:
V
- the type ofJsonMessage
to map toT
- the type of the body of theVert.x message
- Record Components:
message
- theVert.x message
body
- the decoded body of theVert.x message
- All Implemented Interfaces:
JsonMessage
public record DecodedMessage<V extends JsonMessage,T extends io.vertx.core.json.JsonObject>(V extends JsonMessage body, io.vertx.core.eventbus.Message<T extends io.vertx.core.json.JsonObject> message)
extends Record
implements JsonMessage
A wrapper for a
Vert.x message
and its body as JsonMessage
.- See Also:
JsonMessage.on(Class, Message)
-
Field Summary
Fields inherited from interface de.wuespace.telestion.api.message.JsonMessage
logger
-
Constructor Summary
ConstructorsConstructorDescriptionDecodedMessage(V body, io.vertx.core.eventbus.Message<T> message)
Creates an instance of aDecodedMessage
record class. -
Method Summary
Modifier and TypeMethodDescriptionbody()
Returns the value of thebody
record component.static <V extends JsonMessage, T extends io.vertx.core.json.JsonObject>
io.vertx.core.Future<DecodedMessage<V,T>>boolean
Indicates whether some other object is "equal to" this one.int
hashCode()
Returns a hash code value for this object.io.vertx.core.eventbus.Message<T>
message()
Returns the value of themessage
record component.static <V extends JsonMessage, T extends io.vertx.core.json.JsonObject>
io.vertx.core.Future<DecodedMessage<V,T>>toString()
Returns a string representation of this record class.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface de.wuespace.telestion.api.message.JsonMessage
className, json, toJsonBuffer, toJsonBuffer, toJsonObject, toJsonString, toJsonString
-
Constructor Details
-
Method Details
-
compose
public static <V extends JsonMessage, T extends io.vertx.core.json.JsonObject> io.vertx.core.Future<DecodedMessage<V,T>> compose(Class<V> clazz, io.vertx.core.Future<io.vertx.core.eventbus.Message<T>> messageFuture)Returns aFuture
which succeeds with themessageFuture
's body asJsonMessage
. Fails if themessageFuture
's body cannot be mapped to theJsonMessage
type or themessageFuture
fails.- Type Parameters:
V
- the type ofJsonMessage
to map toT
- the type of the body of theVert.x message
- Parameters:
clazz
- the class type of theJsonMessage
to map tomessageFuture
- the future that returns the received message- Returns:
- a new
Future
which succeeds with themessageFuture
's body asJsonMessage
- See Also:
JsonMessage.on(Class, Message)
-
on
public static <V extends JsonMessage, T extends io.vertx.core.json.JsonObject> io.vertx.core.Future<DecodedMessage<V,T>> on(Class<V> clazz, io.vertx.core.eventbus.Message<T> message)Return aFuture
which succeeds with theVert.x message
's body asJsonMessage
. Fails if theVert.x message
's body cannot be mapped to theJsonMessage
type.- Type Parameters:
V
- the type ofJsonMessage
to map toT
- the type of the body of theVert.x message
- Parameters:
clazz
- the class type of theJsonMessage
to map tomessage
- theVert.x message
- Returns:
- a new
Future
which returns aDecodedMessage
with the message's contents - See Also:
JsonMessage.on(Class, Message)
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
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. -
equals
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 class are compared withObjects::equals(Object,Object)
. -
body
Returns the value of thebody
record component.- Returns:
- the value of the
body
record component
-
message
Returns the value of themessage
record component.- Returns:
- the value of the
message
record component
-