From 5d7b846d5b124b896d5c270fb8d803661ace9b2f Mon Sep 17 00:00:00 2001 From: "aravind.est" Date: Fri, 23 Aug 2024 17:27:25 +0100 Subject: [PATCH] Replace jsonb as yang data type from image generation Jsonb datatype in image generation replaced with uses information or with the container name. Issue-ID: SMO-156 Change-Id: If2602412bb7180eed2e1e48c274340267000588e Signed-off-by: aravind.est --- .../main/java/org/oran/smo/teiv/pgsqlgenerator/Processor.java | 8 ++++---- .../org/oran/smo/teiv/pgsqlgenerator/YangModelProcessor.java | 4 ++-- .../EntityGraphGenerator.java | 11 ++++++++--- .../EntityGraphGeneratorUml.java | 2 +- .../RelationshipGraphGenerator.java | 2 +- .../RelationshipGraphGeneratorUml.java | 2 +- 6 files changed, 17 insertions(+), 12 deletions(-) rename pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/{grapghgenerator => graphgenerator}/EntityGraphGenerator.java (92%) rename pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/{grapghgenerator => graphgenerator}/EntityGraphGeneratorUml.java (98%) rename pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/{grapghgenerator => graphgenerator}/RelationshipGraphGenerator.java (98%) rename pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/{grapghgenerator => graphgenerator}/RelationshipGraphGeneratorUml.java (98%) diff --git a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/Processor.java b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/Processor.java index 4112fa7..e0ffffb 100644 --- a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/Processor.java +++ b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/Processor.java @@ -27,13 +27,13 @@ import java.util.Collections; import java.util.Comparator; import java.util.List; -import org.oran.smo.teiv.pgsqlgenerator.grapghgenerator.EntityGraphGenerator; -import org.oran.smo.teiv.pgsqlgenerator.grapghgenerator.EntityGraphGeneratorUml; -import org.oran.smo.teiv.pgsqlgenerator.grapghgenerator.RelationshipGraphGeneratorUml; +import org.oran.smo.teiv.pgsqlgenerator.graphgenerator.EntityGraphGenerator; +import org.oran.smo.teiv.pgsqlgenerator.graphgenerator.EntityGraphGeneratorUml; +import org.oran.smo.teiv.pgsqlgenerator.graphgenerator.RelationshipGraphGeneratorUml; import org.oran.smo.teiv.pgsqlgenerator.schema.consumerdata.ConsumerDataSchemaGenerator; import org.oran.smo.teiv.pgsqlgenerator.schema.data.DataSchemaGenerator; import org.oran.smo.teiv.pgsqlgenerator.schema.model.ModelSchemaGenerator; -import org.oran.smo.teiv.pgsqlgenerator.grapghgenerator.RelationshipGraphGenerator; +import org.oran.smo.teiv.pgsqlgenerator.graphgenerator.RelationshipGraphGenerator; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import org.springframework.util.ResourceUtils; diff --git a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/YangModelProcessor.java b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/YangModelProcessor.java index 6d4e790..d3b8132 100644 --- a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/YangModelProcessor.java +++ b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/YangModelProcessor.java @@ -179,8 +179,8 @@ public class YangModelProcessor { String dataType = dataTypeMapping.get(container.getUses().toString()); Attribute.AttributeBuilder attributeBuilder = Attribute.builder().name(container - .getContainerName()).yangDataType(dataType).dataType(dataType).constraints( - new ArrayList()); + .getContainerName()).yangDataType("<< Refer to Module >>").dataType(dataType) + .constraints(new ArrayList()); if (container.getContainerName().equals("geo-location")) { dataType = dataTypeMapping.get("geo:geo-location"); } diff --git a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/EntityGraphGenerator.java b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/EntityGraphGenerator.java similarity index 92% rename from pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/EntityGraphGenerator.java rename to pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/EntityGraphGenerator.java index 6ba77ac..35b6a92 100644 --- a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/EntityGraphGenerator.java +++ b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/EntityGraphGenerator.java @@ -18,7 +18,7 @@ * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ -package org.oran.smo.teiv.pgsqlgenerator.grapghgenerator; +package org.oran.smo.teiv.pgsqlgenerator.graphgenerator; import guru.nidi.graphviz.attribute.*; import guru.nidi.graphviz.engine.Format; @@ -27,6 +27,7 @@ import guru.nidi.graphviz.model.Factory; import guru.nidi.graphviz.model.MutableGraph; import guru.nidi.graphviz.model.MutableNode; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.oran.smo.teiv.pgsqlgenerator.Attribute; import org.oran.smo.teiv.pgsqlgenerator.Entity; import org.springframework.beans.factory.annotation.Value; @@ -92,8 +93,8 @@ public class EntityGraphGenerator { String label = ""; for (Attribute attribute : attributes) { label = label.concat(""); + .getName() + ""); } label = label.concat("
" + attribute - .getName() + " " + attribute - .getYangDataType() + "
" + escapeHtml(attribute + .getYangDataType()) + "
"); MutableNode attributeNode = Factory.mutNode(moduleEntity.getEntityName() + "-attributes").attrs().add(Label.html( @@ -101,4 +102,8 @@ public class EntityGraphGenerator { graph.add(attributeNode); graph.add(moduleNode.addLink(attributeNode)); } + + private String escapeHtml(String text) { + return StringUtils.replaceEach(text, new String[] { "<", ">" }, new String[] { "<", ">" }); + } } diff --git a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/EntityGraphGeneratorUml.java b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/EntityGraphGeneratorUml.java similarity index 98% rename from pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/EntityGraphGeneratorUml.java rename to pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/EntityGraphGeneratorUml.java index b15c99f..9cd0e0a 100644 --- a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/EntityGraphGeneratorUml.java +++ b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/EntityGraphGeneratorUml.java @@ -18,7 +18,7 @@ * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ -package org.oran.smo.teiv.pgsqlgenerator.grapghgenerator; +package org.oran.smo.teiv.pgsqlgenerator.graphgenerator; import java.io.File; import java.io.IOException; diff --git a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/RelationshipGraphGenerator.java b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/RelationshipGraphGenerator.java similarity index 98% rename from pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/RelationshipGraphGenerator.java rename to pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/RelationshipGraphGenerator.java index 31541f7..d1737d9 100644 --- a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/RelationshipGraphGenerator.java +++ b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/RelationshipGraphGenerator.java @@ -18,7 +18,7 @@ * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ -package org.oran.smo.teiv.pgsqlgenerator.grapghgenerator; +package org.oran.smo.teiv.pgsqlgenerator.graphgenerator; import guru.nidi.graphviz.attribute.Arrow; import guru.nidi.graphviz.attribute.Attributes; diff --git a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/RelationshipGraphGeneratorUml.java b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/RelationshipGraphGeneratorUml.java similarity index 98% rename from pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/RelationshipGraphGeneratorUml.java rename to pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/RelationshipGraphGeneratorUml.java index f5a4211..692771f 100644 --- a/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/grapghgenerator/RelationshipGraphGeneratorUml.java +++ b/pgsql-schema-generator/src/main/java/org/oran/smo/teiv/pgsqlgenerator/graphgenerator/RelationshipGraphGeneratorUml.java @@ -18,7 +18,7 @@ * SPDX-License-Identifier: Apache-2.0 * ============LICENSE_END========================================================= */ -package org.oran.smo.teiv.pgsqlgenerator.grapghgenerator; +package org.oran.smo.teiv.pgsqlgenerator.graphgenerator; import java.io.File; import java.io.IOException; -- 2.16.6