Class ProtocolDefinitionTrait

java.lang.Object
software.amazon.smithy.model.traits.AbstractTrait
software.amazon.smithy.model.traits.ProtocolDefinitionTrait
All Implemented Interfaces:
FromSourceLocation, ToNode, ToShapeId, Trait, ToSmithyBuilder<ProtocolDefinitionTrait>

public final class ProtocolDefinitionTrait extends AbstractTrait implements ToSmithyBuilder<ProtocolDefinitionTrait>
A trait that is attached to other traits to define a Smithy protocol.
  • Field Details

    • ID

      public static final ShapeId ID
  • Constructor Details

  • Method Details

    • getTraits

      public List<ShapeId> getTraits()
      Gets the list of shape IDs that protocol implementations must know about in order to successfully utilize the protocol.
      Returns:
      Returns the protocol traits.
    • getNoInlineDocumentSupport

      public boolean getNoInlineDocumentSupport()
      Checks if this protocol does not support inline documents.
      Returns:
      Returns true if inline documents are not supported.
    • builder

      public static ProtocolDefinitionTrait.Builder builder()
    • createNode

      protected Node createNode()
      Description copied from class: AbstractTrait
      The result of toNode is used for hashCodes and equality. Subclasses must implement createNode to turn the trait into a Node. This is then cached for subsequent retrievals.
      Specified by:
      createNode in class AbstractTrait
      Returns:
      Returns the trait as a node.
    • toBuilder

      public ProtocolDefinitionTrait.Builder toBuilder()
      Description copied from interface: ToSmithyBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToSmithyBuilder<ProtocolDefinitionTrait>
      Returns:
      a builder for type T