Class ResolvedTopicIndex
java.lang.Object
software.amazon.smithy.mqtt.traits.ResolvedTopicIndex
- All Implemented Interfaces:
KnowledgeIndex
Computes all of the MQTT
TopicBindings in a model.
This index is useful for things like finding the payload of an MQTT topic on an operation and grabbing the event stream information of a subscribe operation.
ResolvedTopicIndex resolvedIndex = ResolvedTopicIndex.of(model);
TopicBinding<PublishTrait> binding = resolvedIndex.getPublishBinding(myOperation).get();
assert(binding.getTopic() instanceOf Topic);
assert(binding.getMqttTrait() instanceOf PublishTrait);
System.out.println(binding.getPayloadShape());
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionList<TopicBinding<? extends Trait>>getOperationBindings(ToShapeId operation) Get all of the MQTT topic bindings of a specific operation.getPublishBinding(ToShapeId operation) Gets the MQTT publish binding of an operation.getSubcribeEventStreamInfo(ToShapeId operation) Get subscribe event stream info.getSubscribeBinding(ToShapeId operation) Gets the MQTT subscribe binding of an operation.static ResolvedTopicIndexStream<TopicBinding<? extends Trait>>Gets all resolved MQTT topic bindings in the model.
-
Constructor Details
-
ResolvedTopicIndex
-
-
Method Details
-
of
-
getOperationBindings
Get all of the MQTT topic bindings of a specific operation.- Parameters:
operation- Operation that has MQTT bindings.- Returns:
- Returns the found MQTT bindings.
-
topicBindings
Gets all resolved MQTT topic bindings in the model.- Returns:
- Returns the stream of MQTT topic bindings in the model.
-
getPublishBinding
Gets the MQTT publish binding of an operation.- Parameters:
operation- Operation that has MQTT bindings.- Returns:
- Returns the optionally found MQTT publish bindings.
-
getSubscribeBinding
Gets the MQTT subscribe binding of an operation.- Parameters:
operation- Operation that has MQTT bindings.- Returns:
- Returns the optionally found MQTT subscribe bindings.
-
getSubcribeEventStreamInfo
Get subscribe event stream info.This information describes if the event stream contains a single event, multiple events, and if there are any initial-request or response members.
- Parameters:
operation- Operation to get the event stream info o.- Returns:
- Returns the optionally found event stream info.
-