updating these two generators to include methods to return queries/etc. that can then be overridden in Datastar. The code for VIVO should still function exactly the same.

This commit is contained in:
hjkhjk54 2012-10-22 21:58:10 +00:00
parent 117f634829
commit fbcbaa75cb
2 changed files with 34 additions and 8 deletions

View file

@ -45,12 +45,12 @@ core:rank
*/ */
public class AddEditWebpageFormGenerator extends BaseEditConfigurationGenerator implements EditConfigurationGenerator { public class AddEditWebpageFormGenerator extends BaseEditConfigurationGenerator implements EditConfigurationGenerator {
public static Log log = LogFactory.getLog( AddEditWebpageFormGenerator.class ); public static Log log = LogFactory.getLog( AddEditWebpageFormGenerator.class );
private static String formTemplate = "addEditWebpageForm.ftl";
@Override @Override
public EditConfigurationVTwo getEditConfiguration(VitroRequest vreq, HttpSession session) throws Exception { public EditConfigurationVTwo getEditConfiguration(VitroRequest vreq, HttpSession session) throws Exception {
EditConfigurationVTwo config = new EditConfigurationVTwo(); EditConfigurationVTwo config = new EditConfigurationVTwo();
config.setTemplate("addEditWebpageForm.ftl"); config.setTemplate(this.getTemplate());
initBasics(config, vreq); initBasics(config, vreq);
initPropertyParameters(vreq, session, config); initPropertyParameters(vreq, session, config);
@ -64,8 +64,8 @@ public class AddEditWebpageFormGenerator extends BaseEditConfigurationGenerator
config.setN3Required(list( N3_FOR_WEBPAGE, N3_FOR_URLTYPE )); config.setN3Required(list( N3_FOR_WEBPAGE, N3_FOR_URLTYPE ));
config.setN3Optional(list( N3_FOR_ANCHOR, N3_FOR_RANK)); config.setN3Optional(list( N3_FOR_ANCHOR, N3_FOR_RANK));
config.addUrisInScope("webpageProperty", list( core + "webpage")); config.addUrisInScope("webpageProperty", list( this.getWebpageProperty()));
config.addUrisInScope("inverseProperty", list( core + "webpageOf")); config.addUrisInScope("inverseProperty", list( this.getWebpageOfProperty()));
config.addUrisInScope("linkClass", list( core + "URLLink")); config.addUrisInScope("linkClass", list( core + "URLLink"));
config.addUrisInScope("linkURI", list( core + "linkURI" )); config.addUrisInScope("linkURI", list( core + "linkURI" ));
config.addUrisInScope("linkAnchorPredicate", list( core + "linkAnchorText" )); config.addUrisInScope("linkAnchorPredicate", list( core + "linkAnchorText" ));
@ -167,7 +167,7 @@ public class AddEditWebpageFormGenerator extends BaseEditConfigurationGenerator
int maxRank = 0; // default value int maxRank = 0; // default value
if (objectUri == null) { // adding new webpage if (objectUri == null) { // adding new webpage
String queryStr = QueryUtils.subUriForQueryVar(MAX_RANK_QUERY, "subject", subjectUri); String queryStr = QueryUtils.subUriForQueryVar(this.getMaxRankQueryStr(), "subject", subjectUri);
log.debug("Query string is: " + queryStr); log.debug("Query string is: " + queryStr);
try { try {
ResultSet results = QueryUtils.getQueryResults(queryStr, vreq); ResultSet results = QueryUtils.getQueryResults(queryStr, vreq);
@ -193,4 +193,21 @@ public class AddEditWebpageFormGenerator extends BaseEditConfigurationGenerator
return maxRank; return maxRank;
} }
protected String getTemplate() {
return formTemplate;
}
protected String getWebpageProperty() {
return core + "webpage";
}
protected String getWebpageOfProperty() {
return core + "webpageOf";
}
protected String getMaxRankQueryStr() {
return MAX_RANK_QUERY;
}
} }

View file

@ -55,7 +55,7 @@ public class ManageWebpagesForIndividualGenerator extends BaseEditConfigurationG
ParamMap paramMap = new ParamMap(); ParamMap paramMap = new ParamMap();
paramMap.put("subjectUri", config.getSubjectUri()); paramMap.put("subjectUri", config.getSubjectUri());
paramMap.put("editForm", AddEditWebpageFormGenerator.class.getName()); paramMap.put("editForm", this.getEditForm());
paramMap.put("view", "form"); paramMap.put("view", "form");
String path = UrlBuilder.getUrl( UrlBuilder.Route.EDIT_REQUEST_DISPATCH ,paramMap); String path = UrlBuilder.getUrl( UrlBuilder.Route.EDIT_REQUEST_DISPATCH ,paramMap);
@ -64,7 +64,7 @@ public class ManageWebpagesForIndividualGenerator extends BaseEditConfigurationG
paramMap = new ParamMap(); paramMap = new ParamMap();
paramMap.put("subjectUri", config.getSubjectUri()); paramMap.put("subjectUri", config.getSubjectUri());
paramMap.put("predicateUri", config.getPredicateUri()); paramMap.put("predicateUri", config.getPredicateUri());
paramMap.put("editForm" , AddEditWebpageFormGenerator.class.getName() ); paramMap.put("editForm" , this.getEditForm() );
paramMap.put("cancelTo", "manage"); paramMap.put("cancelTo", "manage");
path = UrlBuilder.getUrl( UrlBuilder.Route.EDIT_REQUEST_DISPATCH ,paramMap); path = UrlBuilder.getUrl( UrlBuilder.Route.EDIT_REQUEST_DISPATCH ,paramMap);
@ -93,7 +93,7 @@ public class ManageWebpagesForIndividualGenerator extends BaseEditConfigurationG
private List<Map<String, String>> getWebpages(String subjectUri, VitroRequest vreq) { private List<Map<String, String>> getWebpages(String subjectUri, VitroRequest vreq) {
String queryStr = QueryUtils.subUriForQueryVar(WEBPAGE_QUERY, "subject", subjectUri); String queryStr = QueryUtils.subUriForQueryVar(this.getQuery(), "subject", subjectUri);
log.debug("Query string is: " + queryStr); log.debug("Query string is: " + queryStr);
List<Map<String, String>> webpages = new ArrayList<Map<String, String>>(); List<Map<String, String>> webpages = new ArrayList<Map<String, String>>();
try { try {
@ -111,4 +111,13 @@ public class ManageWebpagesForIndividualGenerator extends BaseEditConfigurationG
return webpages; return webpages;
} }
//Putting this into a method allows overriding it in subclasses
protected String getEditForm() {
return AddEditWebpageFormGenerator.class.getName();
}
protected String getQuery() {
return WEBPAGE_QUERY;
}
} }