Skip to content

Commit

Permalink
refactor(util): various improvements
Browse files Browse the repository at this point in the history
Signed-off-by: Stefan Blaginov <[email protected]>
  • Loading branch information
Stefan Blaginov committed Feb 24, 2023
1 parent e9ef5d6 commit bc6007b
Show file tree
Hide file tree
Showing 20 changed files with 881 additions and 203 deletions.
21 changes: 11 additions & 10 deletions packages/concerto-cli/lib/commands.js
Original file line number Diff line number Diff line change
Expand Up @@ -584,21 +584,22 @@ class Commands {
let schema = JSON.parse(fs.readFileSync(input, 'utf8'));

if (format.toLowerCase() === 'openapi'){
const inferredConcertoJsonModel = (
new CodeGen.OpenApiDefinition(schema)
).accept(
(new CodeGen.OpenApiToConcertoVisitor),
{
metaModelNamespace: '[email protected]',
namespace,
},
);
const inferredConcertoJsonModel = CodeGen.OpenApiToConcertoVisitor
.parse(schema)
.accept(
(new CodeGen.OpenApiToConcertoVisitor),
{
metaModelNamespace: '[email protected]',
namespace,
},
);

return Printer.toCTO(
inferredConcertoJsonModel.models[0]
);
}
const inferredConcertoJsonModel = (new CodeGen.JsonSchemaModel(schema))
const inferredConcertoJsonModel = CodeGen.JSONSchemaToConcertoVisitor
.parse(schema)
.accept(
(new CodeGen.JSONSchemaToConcertoVisitor),
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,50 +8,50 @@ concept Root {
o Integer age
o Double height range=[50,]
o String favouriteFood optional
o Root$_children[] children
o Root$_company company
o Root$_properties$_children[] children
o Root$_properties$_company company
o String alternative optional
}

concept Root$_children {
concept Root$_properties$_children {
o String name
o Integer age
o String hairColor
o Boolean coolDude
o String missing optional
o Root$_children$_pet pet
o Root$_properties$_children$_properties$_pet pet
o String[] favoriteColors
o Integer[] favoriteNumbers
o String[] mixed
o String[] arrayOfNull
o String[] emptyArray
o Root$_children$_favoritePets[] favoritePets
o Root$_children$_stuff[] stuff
o Root$_properties$_children$_properties$_favoritePets[] favoritePets
o Root$_properties$_children$_properties$_stuff[] stuff
o String alternative optional
}

concept Root$_children$_pet {
concept Root$_properties$_children$_properties$_pet {
o String name
o String breed
}

concept Root$_children$_favoritePets {
concept Root$_properties$_children$_properties$_favoritePets {
o String name
o String breed
}

concept Root$_children$_stuff {
concept Root$_properties$_children$_properties$_stuff {
o String sku
o Double price
o Pet product
}

concept Root$_company {
concept Root$_properties$_company {
o String name
o Root$_company$_employees[] employees
o Root$_properties$_company$_properties$_employees[] employees
}

concept Root$_company$_employees {
concept Root$_properties$_company$_properties$_employees {
o String name
}

Expand All @@ -68,15 +68,15 @@ concept Children {
o String[] arrayOfNull
o String[] emptyArray
o Pet[] favoritePets
o definitions$_Children$_stuff[] stuff
o definitions$_Children$_properties$_stuff[] stuff
@StringifiedJson
o String json optional
@StringifiedJson
o String jsonWithAdditionalProperties optional
o Double alternation optional
}

concept definitions$_Children$_stuff {
concept definitions$_Children$_properties$_stuff {
o String sku
o Double price
o Pet product
Expand All @@ -103,10 +103,10 @@ concept Stuff {

concept Company {
o String name
o definitions$_Company$_employees[] employees
o definitions$_Company$_properties$_employees[] employees
}

concept definitions$_Company$_employees {
concept definitions$_Company$_properties$_employees {
o String name
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ concept customer {
o address address optional
@StringifiedJson
o String metadata optional
o components$_schemas$_customer$_foo foo optional
o components$_schemas$_customer$_properties$_foo foo optional
}

concept components$_schemas$_customer$_foo {
o components$_schemas$_customer$_foo$_bar bar optional
concept components$_schemas$_customer$_properties$_foo {
o components$_schemas$_customer$_properties$_foo$_properties$_bar bar optional
}

concept components$_schemas$_customer$_foo$_bar {
concept components$_schemas$_customer$_properties$_foo$_properties$_bar {
o String har optional
}
4 changes: 0 additions & 4 deletions packages/concerto-tools/lib/codegen/codegen.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,6 @@ const JSONSchemaToConcertoVisitor = require(
'./fromJsonSchema/cto/jsonSchemaVisitor'
);
const OpenApiToConcertoVisitor = require('./fromOpenApi/cto/openApiVisitor');
const { JsonSchemaModel } = require('./fromJsonSchema/cto/jsonSchemaClasses');
const { OpenApiDefinition } = require('./fromOpenApi/cto/openApiClasses');

module.exports = {
AbstractPlugin,
Expand All @@ -55,8 +53,6 @@ module.exports = {
AvroVisitor,
JSONSchemaToConcertoVisitor,
OpenApiToConcertoVisitor,
JsonSchemaModel,
OpenApiDefinition,
formats: {
golang: GoLangVisitor,
jsonschema: JSONSchemaVisitor,
Expand Down
Loading

0 comments on commit bc6007b

Please sign in to comment.