Moving static methods from EditN3Utils to N3EditUtils. Removing EditN3Utils

This commit is contained in:
Brian Caruso 2013-07-10 12:33:43 -04:00
parent 9517f88aeb
commit 0eda150d62
8 changed files with 49 additions and 94 deletions

View file

@ -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);

View file

@ -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));

View file

@ -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<String> userUriList = new ArrayList<String>();
userUriList.add(userUri);

View file

@ -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<Literal> literalsArray = new ArrayList<Literal>();
//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(

View file

@ -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<String> uris = new ArrayList<String>();
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();
}

View file

@ -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

View file

@ -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<String> uris = new ArrayList<String>();
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<URIResource>
}

View file

@ -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);