From 0eda150d62b12f3ff737d080bffef73c97579ee3 Mon Sep 17 00:00:00 2001 From: Brian Caruso Date: Wed, 10 Jul 2013 12:33:43 -0400 Subject: [PATCH] Moving static methods from EditN3Utils to N3EditUtils. Removing EditN3Utils --- .../controller/edit/PrimitiveRdfEdit.java | 4 +- .../freemarker/DeletePropertyController.java | 4 +- .../n3editing/VTwo/EditConfigurationVTwo.java | 3 +- .../VTwo/MultiValueEditSubmission.java | 3 +- .../edit/n3editing/VTwo/N3EditUtils.java | 40 +++++++++ .../controller/ProcessRdfFormController.java | 3 +- .../n3editing/processEdit/EditN3Utils.java | 82 ------------------- .../edit/n3editing/EditN3UtilsTest.java | 4 +- 8 files changed, 49 insertions(+), 94 deletions(-) delete mode 100644 webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/processEdit/EditN3Utils.java diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/edit/PrimitiveRdfEdit.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/edit/PrimitiveRdfEdit.java index cc02de81c..34f0f7ada 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/edit/PrimitiveRdfEdit.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/edit/PrimitiveRdfEdit.java @@ -25,8 +25,8 @@ import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; import edu.cornell.mannlib.vitro.webapp.controller.ajax.VitroAjaxController; import edu.cornell.mannlib.vitro.webapp.dao.jena.DependentResourceDeleteJena; import edu.cornell.mannlib.vitro.webapp.dao.jena.event.EditEvent; +import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.N3EditUtils; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.StandardModelSelector; -import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditN3Utils; public class PrimitiveRdfEdit extends VitroAjaxController { @@ -78,7 +78,7 @@ public class PrimitiveRdfEdit extends VitroAjaxController { return; } - String editorUri = EditN3Utils.getEditorUri(vreq); + String editorUri = N3EditUtils.getEditorUri(vreq); try { Model a = mergeModels(additions); Model r = mergeModels(retractions); diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/DeletePropertyController.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/DeletePropertyController.java index cabce6eba..f0b863aa5 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/DeletePropertyController.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/freemarker/DeletePropertyController.java @@ -20,7 +20,7 @@ import edu.cornell.mannlib.vitro.webapp.controller.freemarker.responsevalues.Tem import edu.cornell.mannlib.vitro.webapp.dao.ModelAccess; import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.EditConfigurationUtils; -import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditN3Utils; +import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.N3EditUtils; import edu.cornell.mannlib.vitro.webapp.web.URLEncoder; /* * Custom deletion controller to which deletion requests from default property form are sent. May be replaced @@ -107,7 +107,7 @@ public class DeletePropertyController extends FreemarkerHttpServlet { //This is the standard mechanism but note that datapropStmtDelete uses wdf with user aware //DataProperty prop = EditConfigurationUtils.getDataProperty(vreq); - String editorUri = EditN3Utils.getEditorUri(vreq); + String editorUri = N3EditUtils.getEditorUri(vreq); WebappDaoFactory wdf = vreq.getWebappDaoFactory().getUserAwareDaoFactory(editorUri); DataProperty prop = wdf.getDataPropertyDao().getDataPropertyByURI( EditConfigurationUtils.getPredicateUri(vreq)); diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/EditConfigurationVTwo.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/EditConfigurationVTwo.java index 39be126fb..87c319aed 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/EditConfigurationVTwo.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/EditConfigurationVTwo.java @@ -37,7 +37,6 @@ import edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.StandardWDF import edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.WDFSelector; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.DefaultDataPropertyFormGenerator; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.preprocessors.ModelChangePreprocessor; -import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditN3Utils; import edu.cornell.mannlib.vitro.webapp.search.beans.ProhibitedFromSearch; @@ -299,7 +298,7 @@ public class EditConfigurationVTwo { throw new Error("EditConfiguration.addSystemValues() needs a session"); /* ********** Get URI of a logged in user ************** */ - String userUri = EditN3Utils.getEditorUri(request); + String userUri = N3EditUtils.getEditorUri(request); log.debug("EditConfiguration.java - checking system value for User URI " + userUri); List userUriList = new ArrayList(); userUriList.add(userUri); diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/MultiValueEditSubmission.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/MultiValueEditSubmission.java index b28a8f21d..abbbe7505 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/MultiValueEditSubmission.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/MultiValueEditSubmission.java @@ -27,7 +27,6 @@ import com.hp.hpl.jena.vocabulary.XSD; import edu.cornell.mannlib.vitro.webapp.edit.EditLiteral; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.fields.FieldVTwo; -import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditN3Utils; public class MultiValueEditSubmission { @@ -263,7 +262,7 @@ public class MultiValueEditSubmission { List literalsArray = new ArrayList(); //now support multiple values for(String value:valueList) { - value = EditN3Utils.stripInvalidXMLChars(value); + value = N3EditUtils.stripInvalidXMLChars(value); //Add to array of literals corresponding to this variable if (!StringUtils.isEmpty(value)) { literalsArray.add(createLiteral( diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/N3EditUtils.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/N3EditUtils.java index 60638ee77..864a4c620 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/N3EditUtils.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/VTwo/N3EditUtils.java @@ -4,9 +4,17 @@ package edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo; import java.util.ArrayList; import java.util.List; +import javax.servlet.http.HttpServletRequest; + +import org.apache.xerces.util.XMLChar; + import com.hp.hpl.jena.rdf.model.Literal; import com.hp.hpl.jena.rdf.model.Model; +import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle; +import edu.cornell.mannlib.vitro.webapp.auth.identifier.RequestIdentifiers; +import edu.cornell.mannlib.vitro.webapp.auth.identifier.common.HasProfile; +import edu.cornell.mannlib.vitro.webapp.auth.identifier.common.IsUser; import edu.cornell.mannlib.vitro.webapp.beans.DataPropertyStatement; import edu.cornell.mannlib.vitro.webapp.beans.DataPropertyStatementImpl; import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; @@ -115,6 +123,38 @@ public class N3EditUtils { } } + } + + + /** Several places could give an editor URI. Return the first one. */ + public static String getEditorUri(HttpServletRequest request) { + IdentifierBundle ids = RequestIdentifiers.getIdBundleForRequest(request); + + List uris = new ArrayList(); + uris.addAll(IsUser.getUserUris(ids)); + uris.addAll(HasProfile.getProfileUris(ids)); + uris.add("Unknown N3 Editor"); + return uris.get(0); + } + + + /** + * Strips from a string any characters that are not valid in XML 1.0 + * @param in + * @return + */ + public static String stripInvalidXMLChars(String in) { + if (in == null) { + return null; + } + StringBuffer out = new StringBuffer(); + for (int i = 0; i < in.length(); i++) { + char c = in.charAt(i); + if (!XMLChar.isInvalid(c)) { + out.append(c); + } + } + return out.toString(); } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/controller/ProcessRdfFormController.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/controller/ProcessRdfFormController.java index 3c8c0a717..03669b39a 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/controller/ProcessRdfFormController.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/controller/ProcessRdfFormController.java @@ -37,7 +37,6 @@ import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.EditSubmissionUtils; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.MultiValueEditSubmission; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.N3EditUtils; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.ProcessRdfForm; -import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditN3Utils; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.RdfLiteralHash; /** @@ -102,7 +101,7 @@ public class ProcessRdfFormController extends FreemarkerHttpServlet{ N3EditUtils.preprocessModels(changes, configuration, vreq); - ProcessRdfForm.applyChangesToWriteModel(changes, queryModel, writeModel, EditN3Utils.getEditorUri(vreq) ); + ProcessRdfForm.applyChangesToWriteModel(changes, queryModel, writeModel, N3EditUtils.getEditorUri(vreq) ); //Here we are trying to get the entity to return to URL, //More involved processing for data property apparently diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/processEdit/EditN3Utils.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/processEdit/EditN3Utils.java deleted file mode 100644 index 2f1b1bb62..000000000 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/processEdit/EditN3Utils.java +++ /dev/null @@ -1,82 +0,0 @@ -/* $This file is distributed under the terms of the license in /doc/license.txt$ */ - -package edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit; - -import java.util.ArrayList; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.xerces.util.XMLChar; - -import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle; -import edu.cornell.mannlib.vitro.webapp.auth.identifier.RequestIdentifiers; -import edu.cornell.mannlib.vitro.webapp.auth.identifier.common.HasProfile; -import edu.cornell.mannlib.vitro.webapp.auth.identifier.common.IsUser; - -public class EditN3Utils { - /** Several places could give an editor URI. Return the first one. */ - public static String getEditorUri(HttpServletRequest request) { - IdentifierBundle ids = RequestIdentifiers.getIdBundleForRequest(request); - - List uris = new ArrayList(); - uris.addAll(IsUser.getUserUris(ids)); - uris.addAll(HasProfile.getProfileUris(ids)); - uris.add("Unknown N3 Editor"); - return uris.get(0); - } - - /** - * Strips from a string any characters that are not valid in XML 1.0 - * @param in - * @return - */ - public static String stripInvalidXMLChars(String in) { - if (in == null) { - return null; - } - StringBuffer out = new StringBuffer(); - for (int i = 0; i < in.length(); i++) { - char c = in.charAt(i); - if (!XMLChar.isInvalid(c)) { - out.append(c); - } - } - return out.toString(); - } - - -// public static void addModTimes( Model additions, Model retractions, Model contextModel ){ -// Property modtime = ResourceFactory.createProperty(VitroVocabulary.MODTIME); -// Date time = Calendar.getInstance().getTime(); -// -// //get all resources in additions and retractions that are not types -// additions.listStatements() -// -// Lock lock = contextModel.getLock(); -// try { -// -// String existingValue = null; -// Statement stmt = res.getProperty(modtime); -// if (stmt != null) { -// RDFNode object = stmt.getObject(); -// if (object != null && object.isLiteral()){ -// existingValue = ((Literal)object).getString(); -// } -// } -// String formattedDateStr = xsdDateTimeFormat.format(time); -// if ( (existingValue!=null && value == null) || (existingValue!=null && value != null && !(existingValue.equals(formattedDateStr)) ) ) { -// model.removeAll(res, modtime, null); -// } -// if ( (existingValue==null && value != null) || (existingValue!=null && value != null && !(existingValue.equals(formattedDateStr)) ) ) { -// model.add(res, modtime, formattedDateStr, XSDDatatype.XSDdateTime); -// } -// -// } catch (Exception e) { -// log.error("Error in updatePropertyDateTimeValue"); -// log.error(e, e); -// } -// } -// -// private static List -} diff --git a/webapp/test/edu/cornell/mannlib/vitro/webapp/edit/n3editing/EditN3UtilsTest.java b/webapp/test/edu/cornell/mannlib/vitro/webapp/edit/n3editing/EditN3UtilsTest.java index 604babd38..d020fa27c 100644 --- a/webapp/test/edu/cornell/mannlib/vitro/webapp/edit/n3editing/EditN3UtilsTest.java +++ b/webapp/test/edu/cornell/mannlib/vitro/webapp/edit/n3editing/EditN3UtilsTest.java @@ -11,7 +11,7 @@ import com.hp.hpl.jena.rdf.model.Model; import com.hp.hpl.jena.rdf.model.ModelFactory; import com.hp.hpl.jena.vocabulary.RDFS; -import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditN3Utils; +import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.N3EditUtils; public class EditN3UtilsTest { @@ -27,7 +27,7 @@ public class EditN3UtilsTest { Assert.assertFalse(isSerializableAsXML(m)); - String stripped = EditN3Utils.stripInvalidXMLChars( + String stripped = N3EditUtils.stripInvalidXMLChars( containsInvalidXMLChars); Assert.assertEquals(clean, stripped);