Skip to content

Commit

Permalink
Merge pull request #467 from aml-org/publish-6.0.4
Browse files Browse the repository at this point in the history
publish 6.0.4
  • Loading branch information
nschejtman authored Feb 7, 2022
2 parents 4ecfe49 + 2007b46 commit 84151a0
Show file tree
Hide file tree
Showing 38 changed files with 148 additions and 110 deletions.
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ FROM ubuntu:18.04
ARG USER_HOME_DIR="/root"

ENV SCALA_VERSION 2.12.11
ENV SBT_VERSION 1.3.9
ENV SBT_VERSION 1.6.1

# Update the repository sources list and install dependencies
RUN apt-get update
Expand Down Expand Up @@ -43,7 +43,7 @@ RUN \
curl -L -o sbt-$SBT_VERSION.deb https://scala.jfrog.io/artifactory/debian/sbt-$SBT_VERSION.deb && \
dpkg -i sbt-$SBT_VERSION.deb && \
rm sbt-$SBT_VERSION.deb && \
sbt sbtVersion
sbt -Dsbt.rootdir=true sbtVersion

VOLUME "$USER_HOME_DIR/.sbt"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@ case class AnnotationMapping(override private[amf] val _internal: InternalAnnota
_internal.withAllowMultiple(allow)
this
}
def withDomain(domains: ClientList[String]): AnnotationMapping = {
_internal.withDomain(domains.asInternal)
this
}
def withEnum(values: ClientList[Any]): AnnotationMapping = {
_internal.withEnum(values.asInternal)
this
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ case class Dialect(fields: Fields, annotations: Annotations)
usesKeyProperty.contains(true)
}

private[amf] def hasExtensions(): Boolean = this.extensions().nonEmpty

private[amf] def usesHeaderMatching: Boolean = !usesKeyPropertyMatching
private[amf] def extensionIndex: Map[String, Dialect] =
extensions().map(e => e.extensionName().value() -> this).toMap
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import amf.core.internal.parser.{Root, YMapOps}
import amf.aml.client.scala.model.document.DialectInstancePatch
import amf.aml.internal.validate.DialectValidations.DialectError
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.internal.utils.UriUtils
import org.yaml.model.YType

class DialectInstancePatchParser(root: Root)(implicit override val ctx: DialectInstanceContext)
Expand All @@ -20,7 +21,7 @@ class DialectInstancePatchParser(root: Root)(implicit override val ctx: DialectI
private def checkTarget(patch: DialectInstancePatch): DialectInstancePatch = {
map.key("$target") match {
case Some(entry) if entry.value.tagType == YType.Str =>
patch.withExtendsModel(platform.resolvePath(entry.value.as[String]))
patch.withExtendsModel(UriUtils.resolvePath(entry.value.as[String]))

case Some(entry) =>
ctx.eh.violation(DialectError, patch.id, "Patch $target must be a valid URL", entry.value.location)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import org.yaml.model.YMap
import amf.core.internal.parser.domain.BaseSpecParser
import amf.core.internal.parser.{Root, YMapOps}
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.internal.utils.UriUtils

/*
* TODO: should be a class which is passed as parameter to the dialect instance parser. Most of all because of the resolvedPath(String) and basePath(String) methods.
Expand Down Expand Up @@ -51,9 +52,9 @@ object JsonPointerResolver extends NodeMappableHelper with PlatformSecrets {
else basePath(base) + str
if (fullPath.contains("#")) {
val parts = fullPath.split("#")
platform.resolvePath(parts.head) + "#" + parts.last
UriUtils.resolvePath(parts.head) + "#" + parts.last
} else {
platform.resolvePath(fullPath)
UriUtils.resolvePath(fullPath)
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,17 @@ import amf.aml.client.platform.model.domain._
import amf.aml.client.scala.model.{document, domain}
import amf.aml.internal.metamodel.document._
import amf.aml.internal.metamodel.domain._
import amf.core.internal.convert.CoreRegister
import amf.core.internal.convert.UniqueInitializer
import amf.core.internal.metamodel.Obj
import amf.core.internal.remote.Platform
import amf.core.internal.unsafe.PlatformSecrets

object VocabulariesRegister extends PlatformSecrets {
object VocabulariesRegister extends UniqueInitializer with PlatformSecrets {

// TODO ARM remove when APIMF-3000 is done
def register(): Unit = register(platform)

def register(platform: Platform): Unit = {
CoreRegister.register(platform)
def register(platform: Platform): Unit = if (shouldInitialize) {

val p: (Obj) => Boolean = (x: Obj) => x.isInstanceOf[DialectDomainElementModel]
platform.registerWrapperPredicate(p) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ package amf.testing.common.cycling

import amf.aml.client.scala.AMLConfiguration
import amf.core.client.scala.AMFGraphConfiguration
import amf.core.io.FileAssertionTest
import amf.core.client.scala.model.document.BaseUnit
import amf.core.internal.remote.Syntax.Syntax
import amf.core.internal.remote.{Hint, Spec}
import amf.core.internal.parser.{AMFCompiler, CompilerContextBuilder}
import amf.core.internal.remote.Spec
import amf.core.internal.remote.Syntax.Syntax
import amf.core.io.FileAssertionTest
import amf.testing.common.utils.AMFRenderer

import scala.concurrent.{ExecutionContext, Future}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ import amf.core.client.scala.config.RenderOptions
import amf.core.internal.plugins.document.graph.{EmbeddedForm, FlattenedForm, JsonLdDocumentForm}
import amf.testing.common.jsonld
import org.scalactic.Fail
import org.scalatest.{Assertion, AsyncFunSuite}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite

import scala.concurrent.Future

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package amf.testing.common.utils

import amf.core.client.scala.config.RenderOptions
import amf.core.internal.remote.Syntax.Syntax
import amf.core.internal.remote.{Hint, Spec}
import amf.testing.common.cycling.FunSuiteCycleTests
import org.scalatest.Assertion

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package amf.testing.common.utils
import amf.aml.client.scala.AMLConfiguration
import amf.core.client.scala.validation.AMFValidationReport
import amf.core.internal.unsafe.PlatformSecrets
import org.scalatest.AsyncFunSuite
import org.scalatest.funsuite.AsyncFunSuite

import scala.concurrent.Future

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import amf.aml.internal.transform.pipelines.DialectTransformationPipeline
import amf.core.client.scala.errorhandling.DefaultErrorHandler
import amf.core.client.scala.transform.TransformationPipelineRunner
import amf.core.internal.parser.{AMFCompiler, CompilerContextBuilder}
import amf.core.internal.remote.Aml
import amf.core.internal.unsafe.PlatformBuilder.platform

import scala.concurrent.{ExecutionContext, Future}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
package amf.testing.common.utils

import amf.aml.client.scala.AMLConfiguration
import amf.core.client.scala.errorhandling.DefaultErrorHandler
import amf.core.internal.validation.ValidationConfiguration
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.client.scala.validation.AMFValidationReport
import amf.core.internal.parser.{AMFCompiler, CompilerContextBuilder}
import amf.aml.client.scala.model.document.Dialect
import org.scalatest.{Assertion, AsyncFunSuite}
import amf.core.internal.unsafe.PlatformSecrets
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite

import scala.concurrent.Future

Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
package amf.testing.common.utils

import amf.aml.client.scala.AMLConfiguration
import amf.aml.client.scala.model.document.DialectInstanceUnit
import amf.aml.internal.render.plugin.AMLDialectInstanceRenderingPlugin
import amf.core.client.scala.model.document.BaseUnit
import amf.core.client.scala.model.domain.DomainElement
import amf.core.client.scala.parse.document.SyamlParsedDocument
import amf.core.internal.plugins.syntax.SyamlSyntaxRenderPlugin
import amf.core.internal.remote.Hint
import amf.core.internal.remote.Mimes._
import amf.core.io.FileAssertionTest
import org.scalatest.{Assertion, AsyncFunSuite}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite
import org.yaml.model.{YDocument, YNode}

import java.io.StringWriter
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package amf.testing.common.utils

import amf.core.io.FileAssertionTest
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.client.scala.validation.AMFValidationReport
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.io.FileAssertionTest
import amf.validation.internal.emitters.ValidationReportJSONLDEmitter
import org.scalatest.{Assertion, Matchers}
import org.scalatest.Assertion
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ import amf.aml.client.scala.model.domain.NodeMapping
import amf.aml.internal.parse.plugin.AMLDialectInstanceParsingPlugin
import amf.aml.internal.render.plugin.AMLDialectInstanceRenderingPlugin
import amf.core.internal.resource.AMFResolvers.platform.fs
import org.scalatest.{Assertion, AsyncFunSuite, Matchers}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@ package amf.testing.rdf

import amf.aml.client.scala.AMLConfiguration
import amf.core.client.scala.config.RenderOptions
import amf.core.internal.remote.Syntax.Syntax
import amf.core.internal.remote.{Amf, Aml, Syntax, VocabularyYamlHint}
import amf.core.internal.remote.Syntax
import amf.core.internal.unsafe.PlatformSecrets
import amf.testing.common.cycling.FunSuiteRdfCycleTests
import amf.testing.common.utils.AMLParsingHelper
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
package amf.testing.render

import amf.core.client.scala.errorhandling.DefaultErrorHandler
import amf.core.client.scala.errorhandling.UnhandledErrorHandler
import amf.core.internal.remote.VocabularyYamlHint
import amf.core.client.scala.errorhandling.{DefaultErrorHandler, UnhandledErrorHandler}
import amf.core.internal.unsafe.PlatformSecrets
import amf.testing.common.cycling.FunSuiteCycleTests

Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package amf.testing.resolution

import amf.aml.client.scala.AMLConfiguration
import amf.core.client.scala.model.document.BaseUnit
import amf.core.internal.remote.{Aml, Syntax, VocabularyYamlHint}
import amf.aml.internal.transform.pipelines.DefaultAMLTransformationPipeline
import amf.core.client.scala.model.document.BaseUnit
import amf.core.internal.remote.Syntax
import amf.testing.common.cycling.FunSuiteCycleTests
import amf.testing.common.utils.DialectInstanceTester

Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,21 @@
package amf.testing.semantic

import amf.aml.client.scala.model.domain.DialectDomainElement
import amf.aml.client.scala.model.document.DialectInstance
import amf.aml.client.scala.AMLConfiguration
import amf.aml.client.scala.model.document.DialectInstance
import amf.aml.client.scala.model.domain.DialectDomainElement
import amf.core.client.scala.errorhandling.UnhandledErrorHandler
import amf.core.internal.annotations.LexicalInformation
import amf.core.internal.parser.domain.Value
import org.scalatest.{Assertion, AsyncFunSuite, Matchers}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

class AppliedExtensionTest extends AsyncFunSuite with Matchers {

val basePath = "file://amf-aml/shared/src/test/resources/vocabularies2/semantic/"
override implicit val executionContext = ExecutionContext.Implicits.global
val basePath = "file://amf-aml/shared/src/test/resources/vocabularies2/semantic/"
override implicit val executionContext: ExecutionContext = ExecutionContext.Implicits.global

test("Applied extensions") {
assertModel("dialect-extensions.yaml", "instance.yaml") { instance =>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ import amf.aml.client.scala.AMLConfiguration
import amf.aml.client.scala.model.document.DialectInstance
import amf.core.client.scala.config.RenderOptions
import amf.core.client.scala.errorhandling.UnhandledErrorHandler
import org.scalatest.{AsyncFunSuite, Matchers}
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import amf.core.client.scala.model.document.BaseUnit
import amf.core.internal.remote.Syntax.JsonLd
import amf.testing.common.cycling.FunSuiteCycleTests
import org.mulesoft.common.test.AsyncBeforeAndAfterEach
import org.scalatest.{AsyncFunSuite, BeforeAndAfterEachTestData, Matchers}

import scala.concurrent.Future

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ import amf.aml.client.scala.AMLConfiguration
import amf.aml.client.scala.model.document.DialectInstance
import amf.aml.client.scala.model.domain.DialectDomainElement
import amf.core.client.scala.errorhandling.UnhandledErrorHandler
import org.scalatest.{Assertion, AsyncFunSuite, Matchers}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package amf.testing.unclassified

import amf.aml.client.scala.AMLConfiguration
import org.scalatest.{Assertion, AsyncFunSuite, Matchers}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
package amf.testing.unclassified

import amf.core.client.scala.model.domain.DomainElement
import amf.core.internal.remote.VocabularyYamlHint
import amf.testing.common.utils.DialectTests
import org.scalatest.Matchers
import org.scalatest.matchers.should.Matchers

import scala.concurrent.ExecutionContext

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ package amf.testing.unclassified

import amf.aml.client.scala.AMLConfiguration
import amf.aml.client.scala.model.domain.DialectDomainElement
import org.scalatest.{AsyncFunSuite, Matchers}
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.ExecutionContext

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package amf.testing.unclassified

import amf.aml.client.scala.AMLConfiguration
import org.scalatest.{Assertion, AsyncFunSuite, Matchers}
import org.scalatest.Assertion
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
package amf.testing.validation

import amf.testing.common.utils.DialectValidation
import org.scalatest.{AsyncFunSuite, Matchers}
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.ExecutionContext

Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
package amf.testing.validation

import amf.aml.client.scala.AMLConfiguration
import amf.core.client.scala.errorhandling.DefaultErrorHandler
import amf.core.internal.validation.ValidationConfiguration
import amf.core.io.FileAssertionTest
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.client.scala.validation.AMFValidationReport
import amf.core.internal.parser.{AMFCompiler, CompilerContextBuilder}
import amf.core.internal.unsafe.PlatformSecrets
import amf.core.io.FileAssertionTest
import amf.validation.internal.emitters.ValidationReportJSONLDEmitter
import org.scalatest
import org.scalatest.{AsyncFunSuite, Matchers}
import org.scalatest.funsuite.AsyncFunSuite
import org.scalatest.matchers.should.Matchers

import scala.concurrent.{ExecutionContext, Future}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ object RdfUnitConverter extends RdfPlatformSecrets {
}

def toNativeRdfModel(unit: BaseUnit, renderOptions: RenderOptions = new RenderOptions()): RdfModel = {
framework.unitToRdfModel(unit, renderOptions)
toNativeRdfModel(unit, AMFGraphConfiguration.predefined(), renderOptions)
}

def toNativeRdfModel(unit: BaseUnit, config: AMFGraphConfiguration, renderOptions: RenderOptions): RdfModel = {
framework.unitToRdfModel(unit, config, renderOptions)
}
}
Loading

0 comments on commit 84151a0

Please sign in to comment.