Restored previuos working solution

This commit is contained in:
Luca Frosini 2023-01-26 18:58:55 +01:00
parent 0529d64606
commit 47fb1cd35b
9 changed files with 48 additions and 49 deletions

View File

@ -29,5 +29,10 @@
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
</classpath>

View File

@ -71,8 +71,6 @@ public class TreeGenerator extends Generator {
protected void writeSectionOnly(Type type, int level) throws Exception {
DocumentationGenerator dg = getDocumentationGenerator(type);
dg.setFacetKnowledge(tree.getFacetKnowledge());
dg.setResourceKnowledge(tree.getResourceKnowledge());
dg.setLevel(level);
StringBuffer sb = dg.generateSection();
Files.write(file.toPath(), sb.toString().getBytes(), StandardOpenOption.APPEND);
@ -100,25 +98,19 @@ public class TreeGenerator extends Generator {
public void generate() throws Exception {
File is = getFile(IS_MODEL_FILENAME, true);
File file = null;
for(AccessType at : accessTypes) {
Type type = TypeMapper.createTypeDefinition(at.getTypeClass());
writeTypeToFile(type, is);
if(at==AccessType.PROPERTY) {
for(Class<? extends Property> clz : isModelProperties) {
Type t = TypeMapper.createTypeDefinition(clz);
writeTypeToFile(t, is, 1);
}
}
}
File file = null;
for(AccessType at : accessTypes) {
switch (at) {
case PROPERTY:
file = getFile(PROPERTIES_FILENAME, true);
for(Class<? extends Property> clz : isModelProperties) {
Type t = TypeMapper.createTypeDefinition(clz);
writeTypeToFile(t, is, 1);
}
break;
case ENTITY:

View File

@ -17,23 +17,11 @@ public class Tree {
private boolean allowMultipleInheritance;
private HashMap<String, Node> locate = new HashMap<String, Node>();
private UsageKnowledge facetKnowledge;
private UsageKnowledge resourceKnowledge;
public Tree(Type head) {
this.root = new Node(head);
this.locate.put(head.getName(), root);
this.allowMultipleInheritance = false;
this.facetKnowledge = new UsageKnowledge();
this.resourceKnowledge = new UsageKnowledge();
}
public UsageKnowledge getFacetKnowledge() {
return facetKnowledge;
}
public UsageKnowledge getResourceKnowledge() {
return resourceKnowledge;
}
public void setAllowMultipleInheritance(boolean allowMultipleInheritance) {
@ -45,8 +33,10 @@ public class Tree {
return;
}
ResourceType rt = (ResourceType) type;
facetKnowledge.addAll(rt.getFacets());
resourceKnowledge.addAll(rt.getResources());
UsageKnowledge fk = UsageKnowledge.getFacetKnowledge();
fk.addAll(rt.getFacets());
UsageKnowledge rk = UsageKnowledge.getResourceKnowledge();
rk.addAll(rt.getResources());
}
public void addNode(Type type) {

View File

@ -13,9 +13,27 @@ import org.gcube.informationsystem.types.reference.properties.LinkedEntity;
*/
public class UsageKnowledge {
private static UsageKnowledge facetKnowledge;
private static UsageKnowledge resourceKnowledge;
public static UsageKnowledge getFacetKnowledge() {
if(UsageKnowledge.facetKnowledge==null) {
UsageKnowledge.facetKnowledge = new UsageKnowledge();
}
return UsageKnowledge.facetKnowledge;
}
public static UsageKnowledge getResourceKnowledge() {
if(UsageKnowledge.resourceKnowledge==null) {
UsageKnowledge.resourceKnowledge = new UsageKnowledge();
}
return UsageKnowledge.resourceKnowledge;
}
protected Map<String, Set<LinkedEntity>> map;
public UsageKnowledge(){
private UsageKnowledge(){
this.map = new LinkedHashMap<>();
}

View File

@ -9,7 +9,6 @@ import org.gcube.informationsystem.base.reference.AccessType;
import org.gcube.informationsystem.types.reference.Type;
import org.gcube.informationsystem.types.reference.properties.LinkedEntity;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import org.gcube.informationsystem.utils.documentation.knowledge.UsageKnowledge;
import org.gcube.informationsystem.utils.documentation.rst.Section;
import org.gcube.informationsystem.utils.documentation.rst.Section.SectionType;
import org.gcube.informationsystem.utils.documentation.rst.table.Cell;
@ -48,9 +47,6 @@ public abstract class DocumentationGenerator {
protected int offsetLevel;
protected int level;
protected UsageKnowledge facetKnowledge;
protected UsageKnowledge resourceKnowledge;
protected DocumentationGenerator(Type type, AccessType requiredType) {
this.type = type;
this.requiredType = requiredType;
@ -61,8 +57,6 @@ public abstract class DocumentationGenerator {
this.requiredNumberOfColumns = DEFAULT_NUMBER_OF_COLUMNS;
this.superClassToBeExcluded = null;
this.offsetLevel = DocumentationGenerator.defaultOffsetLevel;
this.facetKnowledge = new UsageKnowledge();
this.resourceKnowledge = new UsageKnowledge();
}
public void setLevel(int level) {
@ -72,15 +66,6 @@ public abstract class DocumentationGenerator {
public void setOffsetLevel(int offsetLevel) {
this.offsetLevel = offsetLevel;
}
public void setFacetKnowledge(UsageKnowledge facetKnowledge) {
this.facetKnowledge = facetKnowledge;
}
public void setResourceKnowledge(UsageKnowledge resourceKnowledge) {
this.resourceKnowledge = resourceKnowledge;
}
protected Row getPropertyFieldsBoldRow() {
Row row = new Row(RowType.NORMAL);
Cell name = new Cell();

View File

@ -6,6 +6,7 @@ import org.gcube.informationsystem.base.reference.AccessType;
import org.gcube.informationsystem.types.reference.Type;
import org.gcube.informationsystem.types.reference.properties.LinkedEntity;
import org.gcube.informationsystem.types.reference.properties.PropertyDefinition;
import org.gcube.informationsystem.utils.documentation.knowledge.UsageKnowledge;
import org.gcube.informationsystem.utils.documentation.rst.table.Table;
/**
@ -32,7 +33,8 @@ public class FacetDocumentationGenerator extends EntityDocumentationGenerator {
table.appendRow(getKnownUsageBoldRow());
table.appendRow(getSourceTargetBoldRow());
Set<LinkedEntity> usage = facetKnowledge.getUsage(type.getName());
UsageKnowledge fk = UsageKnowledge.getFacetKnowledge();
Set<LinkedEntity> usage = fk.getUsage(type.getName());
addLinkedEntities(table, usage, NO_SPECIFIC_KNOWN_USAGE);
return table;

View File

@ -6,6 +6,7 @@ import org.gcube.informationsystem.base.reference.AccessType;
import org.gcube.informationsystem.types.reference.Type;
import org.gcube.informationsystem.types.reference.entities.ResourceType;
import org.gcube.informationsystem.types.reference.properties.LinkedEntity;
import org.gcube.informationsystem.utils.documentation.knowledge.UsageKnowledge;
import org.gcube.informationsystem.utils.documentation.rst.table.Table;
/**
@ -33,10 +34,12 @@ public class ResourceDocumentationGenerator extends EntityDocumentationGenerator
table.appendRow(getSourceTargetHeadingRow());
table.appendRow(getRowCellSpan(FACETS_TABLE_HEADING, requiredNumberOfColumns));
ResourceType resourceType = (ResourceType) type;
Set<LinkedEntity> facets = facetKnowledge.getUsage(resourceType.getName());
UsageKnowledge fk = UsageKnowledge.getFacetKnowledge();
Set<LinkedEntity> facets = fk.getUsage(resourceType.getName());
addLinkedEntities(table, facets, NO_SPECIFIC_FACETS);
table.appendRow(getRowCellSpan(RESOURCE_RELATIONS_TABLE_HEADING, requiredNumberOfColumns));
Set<LinkedEntity> resources = resourceKnowledge.getUsage(resourceType.getName());
UsageKnowledge rk = UsageKnowledge.getResourceKnowledge();
Set<LinkedEntity> resources = rk.getUsage(resourceType.getName());
addLinkedEntities(table, resources, NO_SPECIFIC_RESOURCE_RELATIONS);
return table;
}

View File

@ -5,6 +5,7 @@ import java.util.Set;
import org.gcube.informationsystem.base.reference.AccessType;
import org.gcube.informationsystem.types.reference.Type;
import org.gcube.informationsystem.types.reference.properties.LinkedEntity;
import org.gcube.informationsystem.utils.documentation.knowledge.UsageKnowledge;
import org.gcube.informationsystem.utils.documentation.rst.table.Table;
/**
@ -27,7 +28,8 @@ public class ConsistsOfDocumentationGenerator extends RelationDocumentationGener
table.appendRow(getKnownUsageBoldRow());
table.appendRow(getSourceTargetBoldRow());
Set<LinkedEntity> facets = facetKnowledge.getUsage(type.getName());
UsageKnowledge fk = UsageKnowledge.getFacetKnowledge();
Set<LinkedEntity> facets = fk.getUsage(type.getName());
addLinkedEntities(table, facets, NO_SPECIFIC_KNOWN_USAGE);
return table;

View File

@ -5,6 +5,7 @@ import java.util.Set;
import org.gcube.informationsystem.base.reference.AccessType;
import org.gcube.informationsystem.types.reference.Type;
import org.gcube.informationsystem.types.reference.properties.LinkedEntity;
import org.gcube.informationsystem.utils.documentation.knowledge.UsageKnowledge;
import org.gcube.informationsystem.utils.documentation.rst.table.Table;
/**
@ -27,7 +28,8 @@ public class IsRelatedToDocumentationGenerator extends RelationDocumentationGene
table.appendRow(getKnownUsageBoldRow());
table.appendRow(getSourceTargetBoldRow());
Set<LinkedEntity> resources = resourceKnowledge.getUsage(type.getName());
UsageKnowledge rk = UsageKnowledge.getResourceKnowledge();
Set<LinkedEntity> resources = rk.getUsage(type.getName());
addLinkedEntities(table, resources, NO_SPECIFIC_KNOWN_USAGE);
return table;