information-system-model-do.../src/main/java/org/gcube/informationsystem/utils/documentation/model/entities/ResourceDocumentationGenera...

35 lines
1.2 KiB
Java

package org.gcube.informationsystem.utils.documentation.model.entities;
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.utils.documentation.knowledge.Knowledge;
import org.gcube.informationsystem.utils.documentation.rst.table.Table;
/**
* @author Luca Frosini (ISTI - CNR)
*/
public class ResourceDocumentationGenerator extends EntityDocumentationGenerator {
public ResourceDocumentationGenerator(Type type) {
super(type,AccessType.RESOURCE);
ResourceType rt = (ResourceType) type;
Knowledge k = Knowledge.getInstace();
k.addAll(rt.getFacets());
k.addAll(rt.getResources());
}
@Override
protected Table getTable() {
Table table = new Table();
table.appendRow(getSourceTargetHeadingRow());
table.appendRow(getRowCellSpan("**Facets**", requiredNumberOfColumns));
ResourceType resourceType = (ResourceType) type;
addLinkedEntities(table, resourceType.getFacets());
table.appendRow(getRowCellSpan("**Relations**", requiredNumberOfColumns));
addLinkedEntities(table, resourceType.getResources());
return table;
}
}