class AsyncApi3DocumentParser extends AsyncApiDocumentParser

AsyncAPI 3.0 document parser.

Extends AsyncApiDocumentParser with 3.0-specific top-level operation parsing.

The key structural differences from 2.x:

  • channels is an object-map keyed by user-defined channel id (not path)
  • channels is OPTIONAL in 3.0 (in 2.x it is mandatory)
  • operations is a NEW top-level map keyed by operationId
  • Operations reference their channel via $$ref rather than being nested under channels

parseApi is fully reimplemented (mirroring AsyncApiDocumentParser.parseApi) instead of delegating to super.parseApi(map), because the parent unconditionally raises MandatoryChannelsProperty when channels is missing. AsyncAPI 3.0 explicitly marks channels as OPTIONAL — see https://www.asyncapi.com/docs/reference/specification/v3.0.0 (AsyncAPI Object section: "channels" is listed without the REQUIRED marker). The override preserves every other step from the parent (info, id, externalDocs, servers, tags, defaultContentType, AnnotationParser, closedShape) and additionally parses the new top-level operations map.

Linear Supertypes
AsyncApiDocumentParser, OasLikeDeclarationsHelper, AsyncApiSpecParser, WebApiBaseSpecParser, DeclarationKeyCollector, SpecParserOps, QuickFieldParserOps, BaseSpecParser, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AsyncApi3DocumentParser
  2. AsyncApiDocumentParser
  3. OasLikeDeclarationsHelper
  4. AsyncApiSpecParser
  5. WebApiBaseSpecParser
  6. DeclarationKeyCollector
  7. SpecParserOps
  8. QuickFieldParserOps
  9. BaseSpecParser
  10. AnyRef
  11. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AsyncApi3DocumentParser(root: Root, spec: Spec, declarationParser: AsyncDeclarationParser)(implicit ctx: AsyncWebApiContext)

Type Members

  1. implicit class FieldOps extends AnyRef
    Definition Classes
    QuickFieldParserOps
  2. class ObjectField extends (YMapEntry) ⇒ Unit
    Definition Classes
    QuickFieldParserOps
  3. trait Target extends AnyRef
    Definition Classes
    QuickFieldParserOps

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to any2stringadd[AsyncApi3DocumentParser] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (AsyncApi3DocumentParser, B)
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to ArrowAssoc[AsyncApi3DocumentParser] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def addDeclarationKey(key: DeclarationKey): Unit
    Definition Classes
    DeclarationKeyCollector
  7. def addDeclarationsToModel(model: DeclaresModel, declares: Seq[DomainElement]): Unit
    Attributes
    protected
    Definition Classes
    DeclarationKeyCollector
  8. def addDeclarationsToModel(model: DeclaresModel)(implicit ctx: DeclarationContext): Unit
    Attributes
    protected
    Definition Classes
    DeclarationKeyCollector
  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def checkBalancedParams(path: String, value: YNode, node: AmfObject, property: String, ctx: WebApiContext): Unit
    Attributes
    protected
    Definition Classes
    SpecParserOps
  11. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @IntrinsicCandidate()
  12. implicit val ctx: AsyncWebApiContext
    Definition Classes
    AsyncApi3DocumentParserAsyncApiDocumentParser → BaseSpecParser
  13. val definitionsKey: String
    Attributes
    protected
    Definition Classes
    AsyncApiDocumentParserOasLikeDeclarationsHelper
  14. def ensuring(cond: (AsyncApi3DocumentParser) ⇒ Boolean, msg: ⇒ Any): AsyncApi3DocumentParser
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to Ensuring[AsyncApi3DocumentParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: (AsyncApi3DocumentParser) ⇒ Boolean): AsyncApi3DocumentParser
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to Ensuring[AsyncApi3DocumentParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: Boolean, msg: ⇒ Any): AsyncApi3DocumentParser
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to Ensuring[AsyncApi3DocumentParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: Boolean): AsyncApi3DocumentParser
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to Ensuring[AsyncApi3DocumentParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  20. def getAnnotationsFromMap(map: YMap, key: String): Annotations
    Attributes
    protected
    Definition Classes
    SpecParserOps
  21. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  22. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  23. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  27. def parseApi(map: YMap): AsyncApi
    Attributes
    protected
    Definition Classes
    AsyncApi3DocumentParserAsyncApiDocumentParser
  28. def parseChannels(entry: YMapEntry, api: AsyncApi): Unit
    Attributes
    protected
    Definition Classes
    AsyncApiDocumentParser
  29. def parseDocument(): Document
    Definition Classes
    AsyncApiDocumentParser
  30. def parseTopLevelOperations(map: YMap, api: AsyncApi): Unit

    Parse the top-level operations map and populate AsyncApi.operations.

    Parse the top-level operations map and populate AsyncApi.operations.

    3.0 allows each top-level operations entry to be either an inline Operation Object or a { $$ref: '#/components/operations/<id>' } referring to a declared concrete operation.

    Attributes
    protected
  31. def parseTypeDeclarations(map: YMap, declarationKeysHolder: Option[DeclarationKeyCollector])(implicit ctx: OasLikeWebApiContext): List[AnyShape]
    Definition Classes
    OasLikeDeclarationsHelper
  32. def parseTypeDeclarations(map: YMap)(implicit ctx: OasLikeWebApiContext): List[AnyShape]
    Definition Classes
    OasLikeDeclarationsHelper
  33. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  34. def toString(): String
    Definition Classes
    AnyRef → Any
  35. def validateNames()(implicit ctx: OasLikeWebApiContext): Unit
    Definition Classes
    OasLikeDeclarationsHelper
  36. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. def [B](y: B): (AsyncApi3DocumentParser, B)
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to ArrowAssoc[AsyncApi3DocumentParser] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated
  2. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from AsyncApi3DocumentParser to StringFormat[AsyncApi3DocumentParser] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

Inherited from AsyncApiDocumentParser

Inherited from OasLikeDeclarationsHelper

Inherited from AsyncApiSpecParser

Inherited from WebApiBaseSpecParser

Inherited from DeclarationKeyCollector

Inherited from SpecParserOps

Inherited from QuickFieldParserOps

Inherited from BaseSpecParser

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from AsyncApi3DocumentParser to any2stringadd[AsyncApi3DocumentParser]

Inherited by implicit conversion StringFormat from AsyncApi3DocumentParser to StringFormat[AsyncApi3DocumentParser]

Inherited by implicit conversion Ensuring from AsyncApi3DocumentParser to Ensuring[AsyncApi3DocumentParser]

Inherited by implicit conversion ArrowAssoc from AsyncApi3DocumentParser to ArrowAssoc[AsyncApi3DocumentParser]

Ungrouped