NIHVIVO-1232 Give the data property statement actions a common ancestor. Clean them up. Make them immutable objects.

This commit is contained in:
jeb228 2010-12-02 18:05:02 +00:00
parent 584a285465
commit 043f2f1a3d
13 changed files with 134 additions and 145 deletions

View file

@ -253,27 +253,27 @@ public class CuratorEditingPolicy implements VisitingPolicyIface {
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy, null action or ids");
}
//cannot edit resources related to system
if( prohibitedNs.contains( action.uriOfSubject() ) ) { // jc55 was getResourceURI()
if( prohibitedNs.contains( action.getSubjectUri() ) ) { // jc55 was getResourceURI()
log.debug("CuratorEditingPolicy for DropDatapropStmt is inconclusive because it does not grant access to admin resources");
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin resources");
}
//many predicates are prohibited by namespace but there are many ones that curator editors need to work with
if( prohibitedNs.contains(action.uriOfPredicate() ) && ! editableVitroUris.contains( action.uriOfPredicate() ) ) {
if( prohibitedNs.contains(action.getPredicateUri() ) && ! editableVitroUris.contains( action.getPredicateUri() ) ) {
log.debug("CuratorEditingPolicy for DropDatapropStmt is inconclusive because it does not grant access to admin controls");
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin controls");
}
//cannot edit resources related to system
if( !canModifyResource( action.uriOfSubject() ) ) {
log.debug("CuratorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.uriOfSubject());
if( !canModifyResource( action.getSubjectUri() ) ) {
log.debug("CuratorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.getSubjectUri());
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin resources; " +
"cannot modify " + action.uriOfSubject());
"cannot modify " + action.getSubjectUri());
}
if( !canModifyPredicate( action.uriOfPredicate() ) ) {
log.debug("CuratorEditingPolicy for EditDatapropStmt is inconclusive because it does not grant access to admin predicates; cannot modify " + action.uriOfPredicate());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("CuratorEditingPolicy for EditDatapropStmt is inconclusive because it does not grant access to admin predicates; cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin predicates; " +
"cannot modify " + action.uriOfPredicate());
"cannot modify " + action.getPredicateUri());
}
log.debug("CuratorEditingPolicy for DropDatapropStmt returns authorization because the user is a curator");
@ -310,17 +310,17 @@ public class CuratorEditingPolicy implements VisitingPolicyIface {
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy, null action or ids");
//cannot edit resources related to system
if( prohibitedNs.contains( action.getResourceUri() ) )
if( prohibitedNs.contains( action.getSubjectUri() ) )
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin resources");
//many predicates are prohibited by namespace but there are many ones that curator editors need to work with
if( prohibitedNs.contains(action.getDataPropUri() ) && ! editableVitroUris.contains( action.getDataPropUri() ) )
if( prohibitedNs.contains(action.getPredicateUri() ) && ! editableVitroUris.contains( action.getPredicateUri() ) )
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin controls");
if( !canModifyPredicate( action.getDataPropUri() ) ) {
log.debug("CuratorEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getDataPropUri());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("CuratorEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.getDataPropUri());
"cannot modify " + action.getPredicateUri());
}
return new BasicPolicyDecision(Authorization.AUTHORIZED,"CuratorEditingPolicy: user may add this data property statement");
@ -337,15 +337,15 @@ public class CuratorEditingPolicy implements VisitingPolicyIface {
}
//cannot edit resources related to system
if( !canModifyResource( action.uriOfSubject() ) ) {
log.debug("CuratorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.uriOfSubject());
if( !canModifyResource( action.getSubjectUri() ) ) {
log.debug("CuratorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.getSubjectUri());
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy does not grant access to admin resources; " +
"cannot modify " + action.uriOfSubject());
"cannot modify " + action.getSubjectUri());
}
if( !canModifyPredicate( action.uriOfPredicate() ) ) {
log.debug("CuratorEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.uriOfPredicate());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("CuratorEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"CuratorEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.uriOfPredicate());
"cannot modify " + action.getPredicateUri());
}
log.debug("CuratorEditingPolicy for EditDatapropStmt returns authorization because the user is a curator");

View file

@ -267,27 +267,27 @@ public class DbAdminEditingPolicy implements VisitingPolicyIface {
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy, null action or ids");
}
//cannot edit resources related to system
if( prohibitedNs.contains( action.uriOfSubject() ) ) { // jc55 was getResourceURI()
if( prohibitedNs.contains( action.getSubjectUri() ) ) { // jc55 was getResourceURI()
log.debug("DbAdminEditingPolicy for DropDatapropStmt is inconclusive because it does not grant access to admin resources");
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to admin resources");
}
//many predicates are prohibited by namespace but there are many ones that dbAdmin editors need to work with
if( prohibitedNs.contains(action.uriOfPredicate() ) && ! editableVitroUris.contains( action.uriOfPredicate() ) ) {
if( prohibitedNs.contains(action.getPredicateUri() ) && ! editableVitroUris.contains( action.getPredicateUri() ) ) {
log.debug("DbAdminEditingPolicy for DropDatapropStmt is inconclusive because it does not grant access to admin controls");
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to admin controls");
}
//cannot edit resources related to system
if( !canModifyResource( action.uriOfSubject() ) ) {
log.debug("DbAdminEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.uriOfSubject());
if( !canModifyResource( action.getSubjectUri() ) ) {
log.debug("DbAdminEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.getSubjectUri());
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to admin resources; " +
"cannot modify " + action.uriOfSubject());
"cannot modify " + action.getSubjectUri());
}
if( !canModifyPredicate( action.uriOfPredicate() ) ) {
log.debug("DbAdminEditingPolicy does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.uriOfPredicate());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("DbAdminEditingPolicy does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.uriOfPredicate());
"cannot modify " + action.getPredicateUri());
}
log.debug("DbAdminEditingPolicy for DropDatapropStmt returns authorization because the user is a dbAdmin");
@ -324,17 +324,17 @@ public class DbAdminEditingPolicy implements VisitingPolicyIface {
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy has null action or ids");
//cannot edit resources related to system
if( prohibitedNs.contains( action.getResourceUri() ) )
if( prohibitedNs.contains( action.getSubjectUri() ) )
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to admin resources from prohibited namespaces");
//many predicates are prohibited by namespace but there are many ones that dbAdmin editors need to work with
if( prohibitedNs.contains(action.getDataPropUri() ) && ! editableVitroUris.contains( action.getDataPropUri() ) )
if( prohibitedNs.contains(action.getPredicateUri() ) && ! editableVitroUris.contains( action.getPredicateUri() ) )
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to admin controls");
if( !canModifyPredicate( action.getDataPropUri() ) ) {
log.debug("DbAdminEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getDataPropUri());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("DbAdminEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.getDataPropUri());
"cannot modify " + action.getPredicateUri());
}
return new BasicPolicyDecision(Authorization.AUTHORIZED,"DbAdminEditingPolicy: user may add this data property statement");
@ -351,15 +351,15 @@ public class DbAdminEditingPolicy implements VisitingPolicyIface {
}
//cannot edit resources related to system
if( !canModifyResource( action.uriOfSubject() ) ) {
log.debug("DbAdminEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.uriOfSubject());
if( !canModifyResource( action.getSubjectUri() ) ) {
log.debug("DbAdminEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.getSubjectUri());
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy does not grant access to admin resources; " +
"cannot modify " + action.uriOfSubject());
"cannot modify " + action.getSubjectUri());
}
if( !canModifyPredicate( action.uriOfPredicate() ) ) {
log.debug("DbAdminEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.uriOfPredicate());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("DbAdminEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"DbAdminEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.uriOfPredicate());
"cannot modify " + action.getPredicateUri());
}
log.debug("DbAdminEditingPolicy for EditDatapropStmt returns authorization because the user is a dbAdmin");

View file

@ -253,27 +253,27 @@ public class EditorEditingPolicy implements VisitingPolicyIface{
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy, null action or ids");
}
//cannot edit resources related to system
if( prohibitedNs.contains( action.uriOfSubject() ) ) { // jc55 was getResourceURI()
if( prohibitedNs.contains( action.getSubjectUri() ) ) { // jc55 was getResourceURI()
log.debug("EditorEditingPolicy for DropDatapropStmt is inconclusive because it does not grant access to admin resources");
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin resources");
}
//many predicates are prohibited by namespace but there are many ones that editor editors need to work with
if( prohibitedNs.contains(action.uriOfPredicate() ) && ! editableVitroUris.contains( action.uriOfPredicate() ) ) {
if( prohibitedNs.contains(action.getPredicateUri() ) && ! editableVitroUris.contains( action.getPredicateUri() ) ) {
log.debug("EditorEditingPolicy for DropDatapropStmt is inconclusive because it does not grant access to admin controls");
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin controls");
}
//cannot edit resources related to system
if( !canModifyResource( action.uriOfSubject() ) ) {
log.debug("EditorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.uriOfSubject());
if( !canModifyResource( action.getSubjectUri() ) ) {
log.debug("EditorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.getSubjectUri());
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin resources; " +
"cannot modify " + action.uriOfSubject());
"cannot modify " + action.getSubjectUri());
}
if( !canModifyPredicate( action.uriOfPredicate() ) ) {
log.debug("EditorEditingPolicy for EditDatapropStmt is inconclusive because it does not grant access to admin predicates; cannot modify " + action.uriOfPredicate());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("EditorEditingPolicy for EditDatapropStmt is inconclusive because it does not grant access to admin predicates; cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin predicates; " +
"cannot modify " + action.uriOfPredicate());
"cannot modify " + action.getPredicateUri());
}
log.debug("EditorEditingPolicy for DropDatapropStmt returns authorization because the user is a editor");
@ -310,17 +310,17 @@ public class EditorEditingPolicy implements VisitingPolicyIface{
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy, null action or ids");
//cannot edit resources related to system
if( prohibitedNs.contains( action.getResourceUri() ) )
if( prohibitedNs.contains( action.getSubjectUri() ) )
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin resources");
//many predicates are prohibited by namespace but there are many ones that editor editors need to work with
if( prohibitedNs.contains(action.getDataPropUri() ) && ! editableVitroUris.contains( action.getDataPropUri() ) )
if( prohibitedNs.contains(action.getPredicateUri() ) && ! editableVitroUris.contains( action.getPredicateUri() ) )
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin controls");
if( !canModifyPredicate( action.getDataPropUri() ) ) {
log.debug("EditorEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getDataPropUri());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("EditorEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy for AddDataPropStmt does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.getDataPropUri());
"cannot modify " + action.getPredicateUri());
}
return new BasicPolicyDecision(Authorization.AUTHORIZED,"EditorEditingPolicy: user may add this data property statement");
@ -337,15 +337,15 @@ public class EditorEditingPolicy implements VisitingPolicyIface{
}
//cannot edit resources related to system
if( !canModifyResource( action.uriOfSubject() ) ) {
log.debug("EditorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.uriOfSubject());
if( !canModifyResource( action.getSubjectUri() ) ) {
log.debug("EditorEditingPolicy for EditDatapropStmt action is inconclusive because it does not grant access to admin resources; cannot modify " + action.getSubjectUri());
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy does not grant access to admin resources; " +
"cannot modify " + action.uriOfSubject());
"cannot modify " + action.getSubjectUri());
}
if( !canModifyPredicate( action.uriOfPredicate() ) ) {
log.debug("EditorEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.uriOfPredicate());
if( !canModifyPredicate( action.getPredicateUri() ) ) {
log.debug("EditorEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: cannot modify " + action.getPredicateUri());
return new BasicPolicyDecision(this.defaultFailure,"EditorEditingPolicy for EditDataPropStmt does not grant access to prohibited predicates or certain namespaces: " +
"cannot modify " + action.uriOfPredicate());
"cannot modify " + action.getPredicateUri());
}
log.debug("EditorEditingPolicy for EditDatapropStmt returns authorization because the user is a editor");

View file

@ -271,8 +271,8 @@ public class JenaNetidPolicy extends DefaultInconclusivePolicy implements Visiti
QuerySolutionMap parameters = new QuerySolutionMap();
parameters.add("netid", model.createLiteral( getNetid(ids) ));
parameters.add("subject",model.createResource( action.getResourceUri() )) ;
parameters.add("predicate", model.createResource( action.getDataPropUri() )) ;
parameters.add("subject",model.createResource( action.getSubjectUri() )) ;
parameters.add("predicate", model.createResource( action.getPredicateUri() )) ;
parameters.add("literalValue", model.createLiteral(action.getData() ));
return doQueries(queryStrs,parameters,action);
}
@ -287,8 +287,8 @@ public class JenaNetidPolicy extends DefaultInconclusivePolicy implements Visiti
QuerySolutionMap parameters = new QuerySolutionMap();
parameters.add("netid", model.createLiteral( getNetid(ids) ));
parameters.add("subject",model.createResource( action.uriOfSubject() )) ;
parameters.add("predicate", model.createResource( action.uriOfPredicate() )) ;
parameters.add("subject",model.createResource( action.getSubjectUri() )) ;
parameters.add("predicate", model.createResource( action.getPredicateUri() )) ;
parameters.add("literalValue", model.createLiteral(action.data() )); // caution: will always do untyped things
return doQueries(queryStrs,parameters,action);
}

View file

@ -201,27 +201,27 @@ public class SelfEditingPolicy implements VisitingPolicyIface {
public PolicyDecision visit(IdentifierBundle ids, AddDataPropStmt action) {
PolicyDecision pd = checkNullArguments(ids, action);
if (pd == null) pd = checkRestrictedResource(action.getResourceUri());
if (pd == null) pd = checkRestrictedPredicate(action.getDataPropUri());
if (pd == null) pd = checkUserEditsAsSubjectOfStmt(ids, action.getResourceUri());
if (pd == null) pd = checkRestrictedResource(action.getSubjectUri());
if (pd == null) pd = checkRestrictedPredicate(action.getPredicateUri());
if (pd == null) pd = checkUserEditsAsSubjectOfStmt(ids, action.getSubjectUri());
if (pd == null) pd = defaultDecision("No basis for decision.");
return pd;
}
public PolicyDecision visit(IdentifierBundle ids, EditDataPropStmt action) {
PolicyDecision pd = checkNullArguments(ids, action);
if (pd == null) pd = checkRestrictedResource(action.uriOfSubject());
if (pd == null) pd = checkRestrictedPredicate(action.uriOfPredicate());
if (pd == null) pd = checkUserEditsAsSubjectOfStmt(ids, action.uriOfSubject());
if (pd == null) pd = checkRestrictedResource(action.getSubjectUri());
if (pd == null) pd = checkRestrictedPredicate(action.getPredicateUri());
if (pd == null) pd = checkUserEditsAsSubjectOfStmt(ids, action.getSubjectUri());
if (pd == null) pd = defaultDecision("No basis for decision.");
return pd;
}
public PolicyDecision visit(IdentifierBundle ids, DropDataPropStmt action) {
PolicyDecision pd = checkNullArguments(ids, action);
if (pd == null) pd = checkRestrictedResource(action.uriOfSubject());
if (pd == null) pd = checkRestrictedPredicate(action.uriOfPredicate());
if (pd == null) pd = checkUserEditsAsSubjectOfStmt(ids, action.uriOfSubject());
if (pd == null) pd = checkRestrictedResource(action.getSubjectUri());
if (pd == null) pd = checkRestrictedPredicate(action.getPredicateUri());
if (pd == null) pd = checkUserEditsAsSubjectOfStmt(ids, action.getSubjectUri());
if (pd == null) pd = defaultDecision("No basis for decision.");
return pd;
}

View file

@ -0,0 +1,46 @@
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
package edu.cornell.mannlib.vitro.webapp.auth.requestedAction.propstmt;
import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestActionConstants;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
/**
* A base class for requestion actions that relate to data properties.
*/
public abstract class AbstractDataPropertyAction implements RequestedAction {
private final String subjectUri;
private final String predicateUri;
public AbstractDataPropertyAction(String subjectUri, String predicateUri) {
this.subjectUri = subjectUri;
this.predicateUri = predicateUri;
}
public String getSubjectUri() {
return subjectUri;
}
public String getPredicateUri() {
return predicateUri;
}
@Override
public String getURI() {
return RequestActionConstants.actionNamespace
+ this.getClass().getName();
}
@Override
public abstract PolicyDecision accept(VisitingPolicyIface policy,
IdentifierBundle whoToAuth);
@Override
public String toString() {
return getClass().getSimpleName() + ": <" + subjectUri + "> <"
+ predicateUri + ">";
}
}

View file

@ -12,12 +12,12 @@ import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAct
* A base class for requested actions that involve manipulating an object
* property.
*/
public abstract class ObjectPropertyAction implements RequestedAction {
public abstract class AbstractObjectPropertyAction implements RequestedAction {
public final String uriOfSubject;
public final String uriOfPredicate;
public final String uriOfObject;
public ObjectPropertyAction(String uriOfSubject, String uriOfPredicate,
public AbstractObjectPropertyAction(String uriOfSubject, String uriOfPredicate,
String uriOfObject) {
this.uriOfSubject = uriOfSubject;
this.uriOfPredicate = uriOfPredicate;

View file

@ -5,69 +5,33 @@ package edu.cornell.mannlib.vitro.webapp.auth.requestedAction.propstmt;
import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestActionConstants;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
public class AddDataPropStmt implements RequestedAction {
public class AddDataPropStmt extends AbstractDataPropertyAction {
protected String resourceUri;
protected String dataPropUri;
protected String data;
protected String dataType;
protected String lang;
public AddDataPropStmt(String resourceUri, String dataPropUri, String value, String dataType, String lang) {
super();
this.resourceUri = resourceUri;
this.dataPropUri = dataPropUri;
public AddDataPropStmt(String subjectUri, String predicateUri, String value, String dataType, String lang) {
super(subjectUri, predicateUri);
this.data= value;
this.dataType = dataType;
this.lang = lang;
}
public String getDataPropUri() {
return dataPropUri;
}
public void setDataPropUri(String dataPropUri) {
this.dataPropUri = dataPropUri;
}
public String getResourceUri() {
return resourceUri;
}
public void setResourceUri(String resourceUri) {
this.resourceUri = resourceUri;
}
public String getData() {
return data;
}
public void setData(String value) {
this.data= value;
}
public String getDataType() {
return dataType;
}
public void setDataType(String dataType) {
this.dataType = dataType;
}
public String getLang() {
return lang;
}
public void setLang(String lang) {
this.lang = lang;
}
public String getURI() {
return RequestActionConstants.actionNamespace + this.getClass().getName();
}
@Override
public PolicyDecision accept(VisitingPolicyIface policy, IdentifierBundle ids ){
return policy.visit(ids, this );
}

View file

@ -7,7 +7,7 @@ import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
public class AddObjectPropStmt extends ObjectPropertyAction implements
public class AddObjectPropStmt extends AbstractObjectPropertyAction implements
RequestedAction {
public AddObjectPropStmt(String uriOfSub, String uriOfPred, String uriOfObj) {

View file

@ -5,49 +5,35 @@ package edu.cornell.mannlib.vitro.webapp.auth.requestedAction.propstmt;
import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestActionConstants;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
import edu.cornell.mannlib.vitro.webapp.beans.DataPropertyStatement;
import edu.cornell.mannlib.vitro.webapp.beans.DataPropertyStatementImpl;
public class DropDataPropStmt implements RequestedAction {
public class DropDataPropStmt extends AbstractDataPropertyAction {
final DataPropertyStatement dataPropStmt;
private final DataPropertyStatement dataPropStmt;
public DropDataPropStmt(DataPropertyStatement dps){
super(dps.getIndividualURI(),dps.getDatapropURI() );
this.dataPropStmt = dps;
}
public DropDataPropStmt(String subjectUri, String predicateUri, String data) {
super(subjectUri, predicateUri);
dataPropStmt = new DataPropertyStatementImpl();
dataPropStmt.setIndividualURI(subjectUri);
dataPropStmt.setDatapropURI(predicateUri);
dataPropStmt.setData(data);
}
@Override
public PolicyDecision accept(VisitingPolicyIface policy, IdentifierBundle whoToAuth) {
return policy.visit(whoToAuth,this);
}
//TODO: rename this method to something like getUriOfSubject
public String uriOfSubject(){ return dataPropStmt.getIndividualURI(); }
//TODO: rename this method to something like getUriOfPredicate
public String uriOfPredicate(){ return dataPropStmt.getDatapropURI(); }
public String data(){ return dataPropStmt.getData(); }
public String lang(){ return dataPropStmt.getLanguage(); }
public String datatype(){return dataPropStmt.getDatatypeURI(); }
public String getURI() {
return RequestActionConstants.actionNamespace + this.getClass().getName();
}
public String toString(){
return "DropDataPropStmt <"+dataPropStmt.getIndividualURI()+"> <"+dataPropStmt.getDatapropURI()+">" ;
}
/*
* TODO: needs to be fixed to work with lang/datatype literals
*/

View file

@ -7,7 +7,7 @@ import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
public class DropObjectPropStmt extends ObjectPropertyAction implements
public class DropObjectPropStmt extends AbstractObjectPropertyAction implements
RequestedAction {
public DropObjectPropStmt(String sub, String pred, String obj) {

View file

@ -5,31 +5,24 @@ package edu.cornell.mannlib.vitro.webapp.auth.requestedAction.propstmt;
import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestActionConstants;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
import edu.cornell.mannlib.vitro.webapp.beans.DataPropertyStatement;
public class EditDataPropStmt implements RequestedAction {
public class EditDataPropStmt extends AbstractDataPropertyAction {
final DataPropertyStatement dataPropStmt;
private final DataPropertyStatement dataPropStmt;
public EditDataPropStmt(DataPropertyStatement dps){
super(dps.getIndividualURI(), dps.getDatapropURI());
this.dataPropStmt = dps;
}
@Override
public PolicyDecision accept(VisitingPolicyIface policy, IdentifierBundle whoToAuth) {
return policy.visit(whoToAuth,this);
}
public String uriOfSubject(){ return dataPropStmt.getIndividualURI(); }
public String uriOfPredicate(){ return dataPropStmt.getDatapropURI(); }
public String data(){ return dataPropStmt.getData(); }
public String lang(){ return dataPropStmt.getLanguage(); }
public String datatype(){return dataPropStmt.getDatatypeURI(); }
public String getURI() {
return RequestActionConstants.actionNamespace + this.getClass().getName();
}
}

View file

@ -8,7 +8,7 @@ import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.VisitingPolicyIface;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
import edu.cornell.mannlib.vitro.webapp.beans.ObjectPropertyStatement;
public class EditObjPropStmt extends ObjectPropertyAction implements
public class EditObjPropStmt extends AbstractObjectPropertyAction implements
RequestedAction {
public EditObjPropStmt(ObjectPropertyStatement ops) {