From 6db5256e708da9e2a473b667c4edd34c61e0f22e Mon Sep 17 00:00:00 2001 From: "luca.frosini" Date: Thu, 26 Oct 2023 18:11:50 +0200 Subject: [PATCH] Improved solution --- .../types/knowledge/TypesKnowledge.java | 19 +++++++++++++++++++ .../knowledge/ModelKnowledgeTest.java | 7 ++++--- 2 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 src/main/java/org/gcube/informationsystem/types/knowledge/TypesKnowledge.java rename src/test/java/org/gcube/informationsystem/{model => types}/knowledge/ModelKnowledgeTest.java (93%) diff --git a/src/main/java/org/gcube/informationsystem/types/knowledge/TypesKnowledge.java b/src/main/java/org/gcube/informationsystem/types/knowledge/TypesKnowledge.java new file mode 100644 index 0000000..d7459a4 --- /dev/null +++ b/src/main/java/org/gcube/informationsystem/types/knowledge/TypesKnowledge.java @@ -0,0 +1,19 @@ +package org.gcube.informationsystem.types.knowledge; + +import org.gcube.informationsystem.model.knowledge.ModelKnowledge; +import org.gcube.informationsystem.types.reference.Type; + +/** + * @author Luca Frosini (ISTI - CNR) + */ +public class TypesKnowledge { + + protected static ModelKnowledge modelKnowledge; + + public synchronized static ModelKnowledge getModelKnowledge() { + if(modelKnowledge==null) { + modelKnowledge = new ModelKnowledge<>(new TypeInformation()); + } + return modelKnowledge; + } +} diff --git a/src/test/java/org/gcube/informationsystem/model/knowledge/ModelKnowledgeTest.java b/src/test/java/org/gcube/informationsystem/types/knowledge/ModelKnowledgeTest.java similarity index 93% rename from src/test/java/org/gcube/informationsystem/model/knowledge/ModelKnowledgeTest.java rename to src/test/java/org/gcube/informationsystem/types/knowledge/ModelKnowledgeTest.java index 3576dde..1bfee01 100644 --- a/src/test/java/org/gcube/informationsystem/model/knowledge/ModelKnowledgeTest.java +++ b/src/test/java/org/gcube/informationsystem/types/knowledge/ModelKnowledgeTest.java @@ -1,4 +1,4 @@ -package org.gcube.informationsystem.model.knowledge; +package org.gcube.informationsystem.types.knowledge; import java.io.File; import java.io.IOException; @@ -10,12 +10,13 @@ import java.util.Map; import java.util.Map.Entry; import org.gcube.informationsystem.base.reference.AccessType; +import org.gcube.informationsystem.model.knowledge.ModelKnowledge; +import org.gcube.informationsystem.model.knowledge.UsageKnowledge; import org.gcube.informationsystem.queries.templates.QueryTemplateTest; import org.gcube.informationsystem.tree.Node; import org.gcube.informationsystem.tree.NodeElaborator; import org.gcube.informationsystem.tree.Tree; import org.gcube.informationsystem.types.TypeMapper; -import org.gcube.informationsystem.types.knowledge.TypeInformation; import org.gcube.informationsystem.types.reference.Type; import org.gcube.informationsystem.types.reference.properties.LinkedEntity; import org.gcube.informationsystem.types.reference.properties.PropertyDefinition; @@ -44,7 +45,7 @@ public class ModelKnowledgeTest{ @Test public void test() throws Exception { - ModelKnowledge modelKnowledge = new ModelKnowledge<>(new TypeInformation()); + ModelKnowledge modelKnowledge = TypesKnowledge.getModelKnowledge(); File typesDirectory = getTypesDirectory();