NIHVIVO-1333 Make ObjectPropertyTemplateModel a non-abstract class to represent uncollated object properties, so UncollatedObjectPropertyTemplateModel is not needed. Some test code in the template to distinguish collated and uncollated object properties.
This commit is contained in:
parent
96b10bed71
commit
cb230a10c3
5 changed files with 34 additions and 17 deletions
|
@ -7,11 +7,11 @@ import java.util.List;
|
|||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty;
|
||||
|
||||
public class CollatedObjectProperty extends ObjectPropertyTemplateModel {
|
||||
public class CollatedObjectPropertyTemplateModel extends ObjectPropertyTemplateModel {
|
||||
|
||||
private List<SubclassList> subclassList;
|
||||
|
||||
CollatedObjectProperty(ObjectProperty property) {
|
||||
CollatedObjectPropertyTemplateModel(ObjectProperty property) {
|
||||
super(property);
|
||||
subclassList = new ArrayList<SubclassList>();
|
||||
}
|
||||
|
@ -20,13 +20,14 @@ public class CollatedObjectProperty extends ObjectPropertyTemplateModel {
|
|||
return subclassList;
|
||||
}
|
||||
|
||||
public List<SubclassList> getStatements() {
|
||||
return subclassList;
|
||||
}
|
||||
// public List<SubclassList> getStatements() {
|
||||
// return subclassList;
|
||||
// }
|
||||
|
||||
/* Access methods for templates */
|
||||
|
||||
public boolean getIsCollatedBySubtype() {
|
||||
@Override
|
||||
public boolean isCollatedBySubclass() {
|
||||
return true;
|
||||
}
|
||||
}
|
|
@ -2,16 +2,27 @@
|
|||
|
||||
package edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty;
|
||||
|
||||
public abstract class ObjectPropertyTemplateModel extends PropertyTemplateModel {
|
||||
public class ObjectPropertyTemplateModel extends PropertyTemplateModel {
|
||||
|
||||
private static final String TYPE = "object";
|
||||
private List<ObjectPropertyStatementTemplateModel> statements;
|
||||
|
||||
ObjectPropertyTemplateModel(ObjectProperty property) {
|
||||
super(property);
|
||||
statements = new ArrayList<ObjectPropertyStatementTemplateModel>();
|
||||
|
||||
// get the statements from the db via sparql query
|
||||
}
|
||||
|
||||
protected static ObjectPropertyTemplateModel getObjectPropertyTemplateModel(ObjectProperty op) {
|
||||
return op.getCollateBySubclass() ? new CollatedObjectPropertyTemplateModel(op)
|
||||
: new ObjectPropertyTemplateModel(op);
|
||||
}
|
||||
|
||||
/* Access methods for templates */
|
||||
|
||||
|
@ -19,7 +30,9 @@ public abstract class ObjectPropertyTemplateModel extends PropertyTemplateModel
|
|||
return TYPE;
|
||||
}
|
||||
|
||||
public abstract boolean getIsCollatedBySubtype();
|
||||
public boolean isCollatedBySubclass() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getAddLink() {
|
||||
|
@ -40,4 +53,9 @@ public abstract class ObjectPropertyTemplateModel extends PropertyTemplateModel
|
|||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
public List<ObjectPropertyStatementTemplateModel> getStatements() {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,11 +26,7 @@ public class PropertyGroupTemplateModel extends BaseTemplateModel {
|
|||
for (Property p : propertyList) {
|
||||
if (p instanceof ObjectProperty) {
|
||||
ObjectProperty op = (ObjectProperty)p;
|
||||
if (op.getCollateBySubclass()) {
|
||||
properties.add(new CollatedObjectProperty(op));
|
||||
} else {
|
||||
properties.add(new UncollatedObjectProperty(op));
|
||||
}
|
||||
properties.add(ObjectPropertyTemplateModel.getObjectPropertyTemplateModel(op));
|
||||
} else {
|
||||
properties.add(new DataPropertyTemplateModel((DataProperty)p, subject, wdf));
|
||||
}
|
||||
|
|
|
@ -7,17 +7,18 @@ import java.util.List;
|
|||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.ObjectProperty;
|
||||
|
||||
public class UncollatedObjectProperty extends ObjectPropertyTemplateModel {
|
||||
public class UncollatedObjectPropertyTemplateModel extends ObjectPropertyTemplateModel {
|
||||
|
||||
private List<ObjectPropertyStatementTemplateModel> statements;
|
||||
|
||||
UncollatedObjectProperty(ObjectProperty property) {
|
||||
UncollatedObjectPropertyTemplateModel(ObjectProperty property) {
|
||||
super(property);
|
||||
statements = new ArrayList<ObjectPropertyStatementTemplateModel>();
|
||||
|
||||
// get the statements from the db via sparql query
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ObjectPropertyStatementTemplateModel> getStatements() {
|
||||
return statements;
|
||||
}
|
||||
|
@ -25,7 +26,8 @@ public class UncollatedObjectProperty extends ObjectPropertyTemplateModel {
|
|||
|
||||
/* Access methods for templates */
|
||||
|
||||
public boolean getIsCollatedBySubtype() {
|
||||
@Override
|
||||
public boolean isCollatedBySubclass() {
|
||||
return false;
|
||||
}
|
||||
}
|
|
@ -42,7 +42,7 @@
|
|||
</#list>
|
||||
|
||||
<#else> <#-- object property -->
|
||||
|
||||
<p>Collated? ${property.collatedBySubclass?string("yes", "no")}</p>
|
||||
</#if>
|
||||
</div> <!-- end property -->
|
||||
</#list>
|
||||
|
|
Loading…
Add table
Reference in a new issue