updates for edit submission preprocessor, passing vreq, also beginning to add middle name to foaflabelpreprocessor

This commit is contained in:
hudajkhan 2013-09-24 14:59:31 -04:00
parent 0ec8dcbce1
commit 112b55d8bc
6 changed files with 15 additions and 9 deletions

View file

@ -2,8 +2,10 @@
package edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo;
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.MultiValueEditSubmission;
public interface EditSubmissionVTwoPreprocessor {
public void preprocess(MultiValueEditSubmission editSubmission);
//certain preprocessors might require the vreq - which should be passed at the time this method is executed
public void preprocess(MultiValueEditSubmission editSubmission, VitroRequest vreq);
}

View file

@ -21,6 +21,7 @@ import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.shared.Lock;
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
import edu.cornell.mannlib.vitro.webapp.dao.InsertException;
import edu.cornell.mannlib.vitro.webapp.dao.jena.DependentResourceDeleteJena;
import edu.cornell.mannlib.vitro.webapp.dao.jena.event.EditEvent;
@ -68,12 +69,13 @@ public class ProcessRdfForm {
*/
public AdditionsAndRetractions process(
EditConfigurationVTwo configuration,
MultiValueEditSubmission submission)
MultiValueEditSubmission submission,
VitroRequest vreq)
throws Exception{
log.debug("configuration:\n" + configuration.toString());
log.debug("submission:\n" + submission.toString());
applyEditSubmissionPreprocessors( configuration, submission );
applyEditSubmissionPreprocessors( configuration, submission, vreq );
AdditionsAndRetractions changes;
if( configuration.isUpdate() ){
@ -378,11 +380,11 @@ public class ProcessRdfForm {
}
private void applyEditSubmissionPreprocessors(
EditConfigurationVTwo configuration, MultiValueEditSubmission submission) {
EditConfigurationVTwo configuration, MultiValueEditSubmission submission, VitroRequest vreq) {
List<EditSubmissionVTwoPreprocessor> preprocessors = configuration.getEditSubmissionPreprocessors();
if(preprocessors != null) {
for(EditSubmissionVTwoPreprocessor p: preprocessors) {
p.preprocess(submission);
p.preprocess(submission, vreq);
}
}
}

View file

@ -33,7 +33,7 @@ public class FoafNameToRdfsLabelPreprocessor implements ModelChangePreprocessor
Resource sub = subs.nextResource();
Statement fname = sub.getProperty( firstNameP );
Statement lname = sub.getProperty( lastNameP );
Statement mname = sub.getProperty(middleNameP)l
Statement mname = sub.getProperty(middleNameP);
if( fname != null && lname != null && fname.getString() != null && lname.getString() != null ){
//Check if there are languages associated with first name and last name and add the language
//attribute to the label

View file

@ -17,6 +17,7 @@ import com.hp.hpl.jena.rdf.model.ResIterator;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.rdf.model.Statement;
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
import edu.cornell.mannlib.vitro.webapp.dao.VitroVocabulary;
/*
* This preprocessor is used to set the language attribute on the label based on the user selection
@ -37,7 +38,7 @@ public class ManageLabelsForIndividualPreprocessor extends BaseEditSubmissionPre
}
@Override
public void preprocess(MultiValueEditSubmission inputSubmission) {
public void preprocess(MultiValueEditSubmission inputSubmission, VitroRequest vreq) {
//Check and see if a language was selected by the user, and this is the regular label submission
//TODO: Check if firstname and lastname should be changed here or elsewhere
if(inputSubmission.hasLiteralValue("label") && inputSubmission.hasLiteralValue("newLabelLanguage")) {

View file

@ -17,6 +17,7 @@ import org.apache.commons.logging.LogFactory;
import com.hp.hpl.jena.rdf.model.Literal;
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.BaseEditSubmissionPreprocessorVTwo;
import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.EditConfigurationUtils;
import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.EditConfigurationVTwo;
@ -48,7 +49,7 @@ public class ManagePagePreprocessor extends
editConfiguration = editConfig;
}
public void preprocess(MultiValueEditSubmission inputSubmission) {
public void preprocess(MultiValueEditSubmission inputSubmission, VitroRequest vreq) {
submission = inputSubmission;
// Get the input elements for concept node and concept label as well
// as vocab uri (which is based on thge

View file

@ -90,7 +90,7 @@ public class ProcessRdfFormController extends FreemarkerHttpServlet{
ProcessRdfForm prf =
new ProcessRdfForm(configuration, new NewURIMakerVitro(vreq.getWebappDaoFactory()));
changes = prf.process(configuration, submission);
changes = prf.process(configuration, submission, vreq);
} catch (Exception e) {
throw new Error(e);