Removed old classes

This commit is contained in:
Luca Frosini 2023-02-06 17:36:53 +01:00
parent 833a69d8d5
commit 446adc09a1
3 changed files with 0 additions and 200 deletions

View File

@ -1,111 +0,0 @@
package org.gcube.informationsystem.types.knowledge.toBeRemoved;
import java.util.Set;
import java.util.TreeSet;
import org.gcube.informationsystem.types.reference.Type;
/**
* @author Luca Frosini (ISTI - CNR)
*/
public class Node implements Comparable<Node> {
public static String INDENTATION = "\t";
private Type type;
private Tree tree;
private Node parent;
private Set<Node> children;
public Node(Type type) {
this.type = type;
this.children = new TreeSet<Node>();
}
public Tree getTree() {
return tree;
}
private void setTree(Tree tree) {
this.tree = tree;
}
public Type getType() {
return type;
}
public Node getParent() {
return parent;
}
public Node setParent(Node parent) {
this.parent = parent;
return this;
}
public Node addChild(Node child) {
children.add(child);
child.setParent(this);
child.setTree(tree);
return this;
}
public Set<Node> getChildrenNodes() {
return children;
}
public Set<Type> getChildren() {
Set<Type> sortedChildren = new TreeSet<>();
for (Node treeNode : children) {
sortedChildren.add(treeNode.type);
}
return sortedChildren;
}
@Override
public String toString() {
return createTree(0).toString();
}
private StringBuffer createTree(int level) {
StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < level; ++i) {
stringBuffer.append(Node.INDENTATION);
}
stringBuffer.append(type.getName());
for (Node child : children) {
stringBuffer.append("\n");
stringBuffer.append(child.createTree(level+1));
}
return stringBuffer;
}
@Override
public int compareTo(Node other) {
if (this == other) {
return 0;
}
if (other == null) {
return -1;
}
if (getClass() != other.getClass()) {
return -1;
}
return type.getName().compareTo(other.type.getName());
}
public void elaborate(NodeElaborator nodeElaborator) throws Exception {
elaborate(nodeElaborator, 0);
}
protected void elaborate(NodeElaborator nodeElaborator, int level) throws Exception {
nodeElaborator.elaborate(this, level);
for (Node child : children) {
child.elaborate(nodeElaborator, level+1);
}
}
}

View File

@ -1,10 +0,0 @@
package org.gcube.informationsystem.types.knowledge.toBeRemoved;
/**
* @author Luca Frosini (ISTI - CNR)
*/
public interface NodeElaborator {
public void elaborate(Node node, int level) throws Exception;
}

View File

@ -1,79 +0,0 @@
package org.gcube.informationsystem.types.knowledge.toBeRemoved;
import java.util.HashMap;
import java.util.Set;
import org.gcube.informationsystem.base.reference.AccessType;
import org.gcube.informationsystem.types.reference.Type;
import org.gcube.informationsystem.types.reference.entities.ResourceType;
/**
* @author Luca Frosini (ISTI - CNR)
*/
public class Tree {
private Node root;
private boolean allowMultipleInheritance;
private HashMap<String, Node> locate = new HashMap<String, Node>();
public Tree(Type head) {
this.root = new Node(head);
this.locate.put(head.getName(), root);
this.allowMultipleInheritance = false;
}
public void setAllowMultipleInheritance(boolean allowMultipleInheritance) {
this.allowMultipleInheritance = allowMultipleInheritance;
}
protected void createUsageKnowledge(Type type) {
if(type.getAccessType() != AccessType.RESOURCE) {
return;
}
ResourceType rt = (ResourceType) type;
UsageKnowledge fk = UsageKnowledge.getFacetKnowledge();
fk.addAll(rt.getFacets());
UsageKnowledge rk = UsageKnowledge.getResourceKnowledge();
rk.addAll(rt.getResources());
}
public void addNode(Type type) {
createUsageKnowledge(type);
if(root.getType().getName().compareTo(type.getName())==0) {
// Root has been already added
return;
}
Set<String> superClasses = type.getSuperClasses();
String name = type.getName();
for(String superClass : superClasses) {
Node parent = locate.get(superClass);
if(parent==null) {
throw new RuntimeException("I can find parent Node for " + name + ". Missing parent is " + superClass);
}
Node node = new Node(type);
parent.addChild(node);
locate.put(name, node);
if(!allowMultipleInheritance) {
return;
}
}
}
public Node getRoot() {
return root;
}
@Override
public String toString() {
return root.toString();
}
public void elaborate(NodeElaborator nodeElaborator) throws Exception {
root.elaborate(nodeElaborator);
}
}