Created
March 25, 2022 08:10
-
-
Save deepu105/1e41e86b7f927eacfc0d29e7f7247391 to your computer and use it in GitHub Desktop.
JDL -> JSON
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"applications": [ | |
{ | |
"config": { | |
"baseName": "store", | |
"applicationType": "gateway", | |
"packageName": "com.jhipster.demo.store", | |
"packageFolder": "com/jhipster/demo/store", | |
"serviceDiscoveryType": "no", | |
"authenticationType": "jwt", | |
"prodDatabaseType": "mysql", | |
"cacheProvider": "hazelcast", | |
"buildTool": "gradle", | |
"clientFramework": "react", | |
"useSass": true, | |
"testFrameworks": [ | |
"protractor" | |
] | |
}, | |
"entities": { | |
"entityList": [ | |
"*" | |
], | |
"excluded": [] | |
}, | |
"options": {} | |
}, | |
{ | |
"config": { | |
"baseName": "product", | |
"applicationType": "microservice", | |
"packageName": "com.jhipster.demo.product", | |
"packageFolder": "com/jhipster/demo/product", | |
"serviceDiscoveryType": "no", | |
"authenticationType": "jwt", | |
"prodDatabaseType": "mysql", | |
"cacheProvider": "hazelcast", | |
"buildTool": "gradle", | |
"serverPort": "8081" | |
}, | |
"entities": { | |
"entityList": [ | |
"Product", | |
"ProductCategory", | |
"ProductOrder", | |
"OrderItem" | |
], | |
"excluded": [] | |
}, | |
"options": {} | |
}, | |
{ | |
"config": { | |
"baseName": "invoice", | |
"applicationType": "microservice", | |
"packageName": "com.jhipster.demo.invoice", | |
"packageFolder": "com/jhipster/demo/invoice", | |
"serviceDiscoveryType": "no", | |
"authenticationType": "jwt", | |
"prodDatabaseType": "mysql", | |
"buildTool": "gradle", | |
"serverPort": "8082" | |
}, | |
"entities": { | |
"entityList": [ | |
"Invoice", | |
"Shipment" | |
], | |
"excluded": [] | |
}, | |
"options": {} | |
}, | |
{ | |
"config": { | |
"baseName": "notification", | |
"applicationType": "microservice", | |
"packageName": "com.jhipster.demo.notification", | |
"packageFolder": "com/jhipster/demo/notification", | |
"serviceDiscoveryType": "no", | |
"authenticationType": "jwt", | |
"databaseType": "mongodb", | |
"cacheProvider": "no", | |
"enableHibernateCache": false, | |
"buildTool": "gradle", | |
"serverPort": "8083" | |
}, | |
"entities": { | |
"entityList": [ | |
"Notification" | |
], | |
"excluded": [] | |
}, | |
"options": {} | |
} | |
], | |
"deployments": [ | |
{ | |
"deploymentType": "kubernetes", | |
"appsFolders": [ | |
"store", | |
"invoice", | |
"notification", | |
"product" | |
], | |
"dockerRepositoryName": "deepu105", | |
"serviceDiscoveryType": "no", | |
"istio": true, | |
"kubernetesServiceType": "Ingress", | |
"kubernetesNamespace": "jhipster", | |
"ingressDomain": "34.90.236.124.nip.io" | |
} | |
], | |
"constants": {}, | |
"entities": [ | |
{ | |
"annotations": [], | |
"name": "Customer", | |
"tableName": "Customer", | |
"body": [ | |
{ | |
"name": "firstName", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "lastName", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "gender", | |
"type": "Gender", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "email", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
}, | |
{ | |
"key": "pattern", | |
"value": "^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "phone", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "addressLine1", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "addressLine2", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "city", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "country", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": "\n* Entities for Store Gateway\n" | |
}, | |
{ | |
"annotations": [], | |
"name": "Product", | |
"tableName": "Product", | |
"body": [ | |
{ | |
"name": "name", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "description", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "price", | |
"type": "BigDecimal", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
}, | |
{ | |
"key": "min", | |
"value": "0" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "size", | |
"type": "Size", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "image", | |
"type": "ImageBlob", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": "\n* Entities for product microservice\n" | |
}, | |
{ | |
"annotations": [], | |
"name": "ProductCategory", | |
"tableName": "ProductCategory", | |
"body": [ | |
{ | |
"name": "name", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "description", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": null | |
}, | |
{ | |
"annotations": [], | |
"name": "ProductOrder", | |
"tableName": "ProductOrder", | |
"body": [ | |
{ | |
"name": "placedDate", | |
"type": "Instant", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "status", | |
"type": "OrderStatus", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "code", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "invoiceId", | |
"type": "Long", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "customer", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": null | |
}, | |
{ | |
"annotations": [], | |
"name": "OrderItem", | |
"tableName": "OrderItem", | |
"body": [ | |
{ | |
"name": "quantity", | |
"type": "Integer", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
}, | |
{ | |
"key": "min", | |
"value": "0" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "totalPrice", | |
"type": "BigDecimal", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
}, | |
{ | |
"key": "min", | |
"value": "0" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "status", | |
"type": "OrderItemStatus", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": null | |
}, | |
{ | |
"annotations": [], | |
"name": "Invoice", | |
"tableName": "Invoice", | |
"body": [ | |
{ | |
"name": "code", | |
"type": "String", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "date", | |
"type": "Instant", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "details", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "status", | |
"type": "InvoiceStatus", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "paymentMethod", | |
"type": "PaymentMethod", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "paymentDate", | |
"type": "Instant", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "paymentAmount", | |
"type": "BigDecimal", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": "\n* Entities for Invoice microservice\n" | |
}, | |
{ | |
"annotations": [], | |
"name": "Shipment", | |
"tableName": "Shipment", | |
"body": [ | |
{ | |
"name": "trackingCode", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "date", | |
"type": "Instant", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "details", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": null | |
}, | |
{ | |
"annotations": [], | |
"name": "Notification", | |
"tableName": "Notification", | |
"body": [ | |
{ | |
"name": "date", | |
"type": "Instant", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "details", | |
"type": "String", | |
"validations": [], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "sentDate", | |
"type": "Instant", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "format", | |
"type": "NotificationType", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "userId", | |
"type": "Long", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
}, | |
{ | |
"name": "productId", | |
"type": "Long", | |
"validations": [ | |
{ | |
"key": "required", | |
"value": "" | |
} | |
], | |
"javadoc": null, | |
"annotations": [] | |
} | |
], | |
"javadoc": "\n* Entities for notification microservice\n" | |
} | |
], | |
"relationships": [ | |
{ | |
"from": { | |
"name": "Customer", | |
"injectedField": "user(login)", | |
"javadoc": null, | |
"required": true | |
}, | |
"to": { | |
"name": "User", | |
"injectedField": null, | |
"javadoc": null | |
}, | |
"options": [], | |
"cardinality": "OneToOne" | |
}, | |
{ | |
"from": { | |
"name": "OrderItem", | |
"injectedField": "product(name)", | |
"javadoc": null, | |
"required": true | |
}, | |
"to": { | |
"name": "Product", | |
"injectedField": null, | |
"javadoc": null | |
}, | |
"options": [], | |
"cardinality": "ManyToOne" | |
}, | |
{ | |
"from": { | |
"name": "ProductOrder", | |
"injectedField": "orderItem", | |
"javadoc": null, | |
"required": false | |
}, | |
"to": { | |
"name": "OrderItem", | |
"injectedField": "order(code)", | |
"javadoc": null, | |
"required": true | |
}, | |
"options": [], | |
"cardinality": "OneToMany" | |
}, | |
{ | |
"from": { | |
"name": "ProductCategory", | |
"injectedField": "product", | |
"javadoc": null, | |
"required": false | |
}, | |
"to": { | |
"name": "Product", | |
"injectedField": "productCategory(name)", | |
"javadoc": null, | |
"required": false | |
}, | |
"options": [], | |
"cardinality": "OneToMany" | |
}, | |
{ | |
"from": { | |
"name": "Invoice", | |
"injectedField": "shipment", | |
"javadoc": null, | |
"required": false | |
}, | |
"to": { | |
"name": "Shipment", | |
"injectedField": "invoice(code)", | |
"javadoc": null, | |
"required": true | |
}, | |
"options": [], | |
"cardinality": "OneToMany" | |
} | |
], | |
"enums": [ | |
{ | |
"name": "Gender", | |
"values": [ | |
{ | |
"key": "MALE" | |
}, | |
{ | |
"key": "FEMALE" | |
}, | |
{ | |
"key": "OTHER" | |
} | |
] | |
}, | |
{ | |
"name": "Size", | |
"values": [ | |
{ | |
"key": "S" | |
}, | |
{ | |
"key": "M" | |
}, | |
{ | |
"key": "L" | |
}, | |
{ | |
"key": "XL" | |
}, | |
{ | |
"key": "XXL" | |
} | |
] | |
}, | |
{ | |
"name": "OrderStatus", | |
"values": [ | |
{ | |
"key": "COMPLETED" | |
}, | |
{ | |
"key": "PENDING" | |
}, | |
{ | |
"key": "CANCELLED" | |
} | |
] | |
}, | |
{ | |
"name": "OrderItemStatus", | |
"values": [ | |
{ | |
"key": "AVAILABLE" | |
}, | |
{ | |
"key": "OUT_OF_STOCK" | |
}, | |
{ | |
"key": "BACK_ORDER" | |
} | |
] | |
}, | |
{ | |
"name": "InvoiceStatus", | |
"values": [ | |
{ | |
"key": "PAID" | |
}, | |
{ | |
"key": "ISSUED" | |
}, | |
{ | |
"key": "CANCELLED" | |
} | |
] | |
}, | |
{ | |
"name": "PaymentMethod", | |
"values": [ | |
{ | |
"key": "CREDIT_CARD" | |
}, | |
{ | |
"key": "CASH_ON_DELIVERY" | |
}, | |
{ | |
"key": "PAYPAL" | |
} | |
] | |
}, | |
{ | |
"name": "NotificationType", | |
"values": [ | |
{ | |
"key": "EMAIL" | |
}, | |
{ | |
"key": "SMS" | |
}, | |
{ | |
"key": "PARCEL" | |
} | |
] | |
} | |
], | |
"options": { | |
"service": { | |
"serviceClass": { | |
"list": [ | |
"Customer", | |
"Product", | |
"ProductCategory", | |
"ProductOrder", | |
"OrderItem", | |
"Invoice", | |
"Shipment" | |
], | |
"excluded": [] | |
} | |
}, | |
"pagination": { | |
"pagination": { | |
"list": [ | |
"Customer", | |
"Product", | |
"ProductOrder", | |
"OrderItem", | |
"Invoice", | |
"Shipment" | |
], | |
"excluded": [] | |
} | |
}, | |
"microservice": { | |
"product": { | |
"list": [ | |
"Product", | |
"ProductOrder", | |
"ProductCategory", | |
"OrderItem" | |
], | |
"excluded": [] | |
}, | |
"invoice": { | |
"list": [ | |
"Invoice", | |
"Shipment" | |
], | |
"excluded": [] | |
}, | |
"notification": { | |
"list": [ | |
"Notification" | |
], | |
"excluded": [] | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment