Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

W-14931493 - Exposed internal Async plugin #1956

Merged
merged 1 commit into from
Apr 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,21 +1,8 @@
package amf.apicontract.internal.spec.async

import amf.apicontract.internal.spec.async.AsyncHeader.{
Async20Header,
Async21Header,
Async22Header,
Async23Header,
Async24Header,
Async25Header,
Async26Header
}
import amf.apicontract.internal.spec.async.AsyncHeader._
import amf.apicontract.internal.spec.async.parser.context.{Async2WebApiContext, AsyncWebApiContext}
import amf.apicontract.internal.spec.async.parser.document
import amf.apicontract.internal.spec.async.parser.domain.declarations.{
Async20DeclarationParser,
Async23DeclarationParser,
Async24DeclarationParser
}
import amf.apicontract.internal.spec.common.AsyncWebApiDeclarations
import amf.apicontract.internal.spec.oas.OasLikeParsePlugin
import amf.apicontract.internal.spec.raml.Raml10ParsePlugin
Expand Down Expand Up @@ -52,6 +39,12 @@ object Async20ParsePlugin extends OasLikeParsePlugin {
private def parseAsyncUnit(header: AsyncHeader, root: Root)(implicit ctx: AsyncWebApiContext): BaseUnit = {
header match {
case Async20Header => document.AsyncApi20DocumentParser(root).parseDocument()
case Async21Header => document.AsyncApi21DocumentParser(root).parseDocument()
case Async22Header => document.AsyncApi22DocumentParser(root).parseDocument()
case Async23Header => document.AsyncApi23DocumentParser(root).parseDocument()
case Async24Header => document.AsyncApi24DocumentParser(root).parseDocument()
case Async25Header => document.AsyncApi25DocumentParser(root).parseDocument()
case Async26Header => document.AsyncApi26DocumentParser(root).parseDocument()
case _ =>
throw new InvalidDocumentHeaderException(spec.id)
}
Expand Down

This file was deleted.

3 changes: 1 addition & 2 deletions amf-cli/shared/src/test/scala/amf/io/BuildCycleTests.scala
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package amf.io

import amf.apicontract.client.scala.{AMFConfiguration, APIConfiguration}
import amf.apicontract.internal.spec.async.NotFinishedAsync20ParsePlugin
import amf.core.client.scala.AMFGraphConfiguration
import amf.core.client.scala.config.RenderOptions
import amf.core.client.scala.errorhandling.{AMFErrorHandler, IgnoringErrorHandler}
Expand Down Expand Up @@ -148,7 +147,7 @@ trait BuildCycleTestCommon extends FileAssertionTest {
def renderOptions(): RenderOptions = RenderOptions().withoutFlattenedJsonLd

protected def buildConfig(options: Option[RenderOptions], eh: Option[AMFErrorHandler]): AMFConfiguration = {
val amfConfig: AMFConfiguration = APIConfiguration.API().withPlugin(NotFinishedAsync20ParsePlugin)
val amfConfig: AMFConfiguration = APIConfiguration.API()
val renderedConfig: AMFConfiguration = options.fold(amfConfig.withRenderOptions(renderOptions()))(r => {
amfConfig.withRenderOptions(r)
})
Expand Down
15 changes: 7 additions & 8 deletions amf-cli/shared/src/test/scala/amf/testing/ConfigProvider.scala
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package amf.testing

import amf.apicontract.client.scala._
import amf.apicontract.internal.spec.async.NotFinishedAsync20ParsePlugin
import amf.core.internal.remote._
import amf.graphql.client.scala.GraphQLConfiguration
import amf.graphqlfederation.client.scala.GraphQLFederationConfiguration
Expand All @@ -14,13 +13,13 @@ object ConfigProvider {
case Raml10 => RAMLConfiguration.RAML10()
case Oas20 => OASConfiguration.OAS20()
case Oas30 => OASConfiguration.OAS30()
case AsyncApi20 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi21 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi22 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi23 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi24 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi25 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi26 => AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin)
case AsyncApi20 => AsyncAPIConfiguration.Async20()
case AsyncApi21 => AsyncAPIConfiguration.Async20()
case AsyncApi22 => AsyncAPIConfiguration.Async20()
case AsyncApi23 => AsyncAPIConfiguration.Async20()
case AsyncApi24 => AsyncAPIConfiguration.Async20()
case AsyncApi25 => AsyncAPIConfiguration.Async20()
case AsyncApi26 => AsyncAPIConfiguration.Async20()
case Grpc => GRPCConfiguration.GRPC()
case GraphQL => GraphQLConfiguration.GraphQL()
case GraphQLFederation => GraphQLFederationConfiguration.GraphQLFederation()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import amf.apicontract.client.scala._
import amf.apicontract.client.scala.model.domain.api.WebApi
import amf.apicontract.client.scala.model.domain.security.OAuth2Settings
import amf.apicontract.internal.metamodel.domain.{EndPointModel, OperationModel}
import amf.apicontract.internal.spec.async.NotFinishedAsync20ParsePlugin
import amf.core.client.common.transform.PipelineId
import amf.core.client.scala.config.RenderOptions
import amf.core.client.scala.model.document.{BaseUnit, Document}
Expand Down Expand Up @@ -41,9 +40,8 @@ class AMFModelAssertionTest extends AsyncFunSuite with Matchers {
val raml08Client: AMFBaseUnitClient = raml08Config.baseUnitClient()
val oasConfig: AMFConfiguration = OASConfiguration.OAS30().withRenderOptions(ro)
val oasClient: AMFBaseUnitClient = oasConfig.baseUnitClient()
val asyncConfig: AMFConfiguration =
AsyncAPIConfiguration.Async20().withPlugin(NotFinishedAsync20ParsePlugin).withRenderOptions(ro)
val asyncClient: AMFBaseUnitClient = asyncConfig.baseUnitClient()
val asyncConfig: AMFConfiguration = AsyncAPIConfiguration.Async20().withRenderOptions(ro)
val asyncClient: AMFBaseUnitClient = asyncConfig.baseUnitClient()

def modelAssertion(
path: String,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package amf.validation

import amf.apicontract.client.scala.{AMFConfiguration, APIConfiguration, WebAPIConfiguration}
import amf.apicontract.internal.spec.async.NotFinishedAsync20ParsePlugin
import amf.apicontract.client.scala.{AMFConfiguration, APIConfiguration}
import amf.apicontract.internal.transformation.ValidationTransformationPipeline
import amf.core.client.common.validation._
import amf.core.client.scala.errorhandling.DefaultErrorHandler
Expand Down Expand Up @@ -46,7 +45,7 @@ sealed trait AMFValidationReportGenTest extends AsyncFunSuite with FileAssertion
configOverride: Option[AMFConfiguration] = None,
hideValidationResultsIfParseNotConforms: Boolean = true
): Future[Assertion] = {
val initialConfig = configOverride.getOrElse(APIConfiguration.API().withPlugin(NotFinishedAsync20ParsePlugin))
val initialConfig = configOverride.getOrElse(APIConfiguration.API())
for {
parseResult <- parse(directory + api, initialConfig)
report <- configOverride
Expand Down Expand Up @@ -93,7 +92,6 @@ trait ResolutionForUniquePlatformReportTest extends UniquePlatformReportGenTest
val errorHandler = DefaultErrorHandler()
val config = APIConfiguration
.API()
.withPlugin(NotFinishedAsync20ParsePlugin)
.withErrorHandlerProvider(() => errorHandler)
for {
model <- config.baseUnitClient().parse(basePath + api).map(_.baseUnit)
Expand Down