From f99b450c8352175beec6182dfa40ec4fa92275fb Mon Sep 17 00:00:00 2001 From: ryounes Date: Thu, 7 Jul 2011 22:19:35 +0000 Subject: [PATCH] Re-refactoring in template model objects: move vreq instance member out of BaseTemplateModel and into only those classes that use it. Also add final modifier to some instance variables, and remove initializations to null. --- .../vitro/webapp/dao/jena/MenuDaoJena.java | 1 + .../web/templatemodels/BaseTemplateModel.java | 10 --------- .../vitro/webapp/web/templatemodels/Tags.java | 2 +- .../vitro/webapp/web/templatemodels/User.java | 3 ++- .../VClassGroupTemplateModel.java | 4 ++-- .../templatemodels/VClassTemplateModel.java | 2 +- .../edit/EditConfigurationTemplateModel.java | 7 +++--- .../edit/EditSubmissionTemplateModel.java | 14 +++++------- ...MultiValueEditSubmissionTemplateModel.java | 14 +++++------- .../BaseIndividualTemplateModel.java | 9 +++++--- .../BaseObjectPropertyDataPostProcessor.java | 4 ++-- .../CollatedObjectPropertyTemplateModel.java | 7 +++--- .../DataPropertyStatementTemplateModel.java | 4 ++-- .../individual/DataPropertyTemplateModel.java | 2 +- .../individual/GroupedPropertyList.java | 10 ++++----- .../ObjectPropertyStatementTemplateModel.java | 18 +++------------ .../ObjectPropertyTemplateModel.java | 7 ++---- .../PropertyGroupTemplateModel.java | 4 ++-- .../PropertyStatementTemplateModel.java | 22 +++++++++---------- .../individual/PropertyTemplateModel.java | 16 ++++++++------ ...UncollatedObjectPropertyTemplateModel.java | 2 +- .../individuallist/BaseListedIndividual.java | 5 +++-- .../web/templatemodels/menu/MainMenu.java | 6 +++-- .../webapp/web/templatemodels/menu/Menu.java | 9 ++------ .../web/templatemodels/menu/MenuItem.java | 4 ++-- .../BaseIndividualSearchResult.java | 5 +++-- .../searchresult/IndividualSearchResult.java | 2 -- 27 files changed, 83 insertions(+), 110 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MenuDaoJena.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MenuDaoJena.java index 2c36c99ba..2d1f8269e 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MenuDaoJena.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MenuDaoJena.java @@ -76,6 +76,7 @@ public class MenuDaoJena extends JenaBaseDao implements MenuDao { //run SPARQL query to get menu and menu items QueryExecution qexec = QueryExecutionFactory.create(menuQuery, displayModel, initialBindings ); try{ + // ryounes Seems suspicious that a dao is creating a template model object. What's this all about? MainMenu menu = new MainMenu(); /* bdc34: currently there is no good way to decide which url to show diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/BaseTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/BaseTemplateModel.java index 2a6e12da4..aca991be3 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/BaseTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/BaseTemplateModel.java @@ -16,16 +16,6 @@ public abstract class BaseTemplateModel { private static final Log log = LogFactory.getLog(BaseTemplateModel.class); protected static ServletContext servletContext; - protected final VitroRequest vreq; - - protected BaseTemplateModel(VitroRequest vreq) { - this.vreq = vreq; - } - - // Provide no-arg constructor for types that don't need vreq. - protected BaseTemplateModel() { - this.vreq = null; - }; // Convenience method so subclasses can call getUrl(path) protected String getUrl(String path) { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/Tags.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/Tags.java index 81293c994..cef5c98a0 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/Tags.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/Tags.java @@ -6,7 +6,7 @@ import java.util.LinkedHashSet; public class Tags extends BaseTemplateModel { - protected LinkedHashSet tags = null; + protected final LinkedHashSet tags; public Tags() { this.tags = new LinkedHashSet(); diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/User.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/User.java index 708b4e64d..80c22699c 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/User.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/User.java @@ -16,11 +16,12 @@ import edu.cornell.mannlib.vitro.webapp.controller.freemarker.SiteAdminControlle import edu.cornell.mannlib.vitro.webapp.controller.freemarker.UrlBuilder; public class User extends BaseTemplateModel { + private final VitroRequest vreq; private final UserAccount currentUser; private final String profileUrl; public User(VitroRequest vreq) { - super(vreq); + this.vreq = vreq; this.currentUser = LoginStatusBean.getCurrentUser(vreq); this.profileUrl = figureAssociatedProfileUrl(); } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassGroupTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassGroupTemplateModel.java index 40ebe9489..a8db892ed 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassGroupTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassGroupTemplateModel.java @@ -16,8 +16,8 @@ public class VClassGroupTemplateModel extends BaseTemplateModel { private static final Log log = LogFactory.getLog(VClassGroupTemplateModel.class.getName()); - private VClassGroup vClassGroup = null; - private List classes = null; + private final VClassGroup vClassGroup; + private List classes; public VClassGroupTemplateModel(VClassGroup vClassGroup) { this.vClassGroup = vClassGroup; diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassTemplateModel.java index 676dbfe02..f25db242d 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/VClassTemplateModel.java @@ -15,7 +15,7 @@ public class VClassTemplateModel extends BaseTemplateModel { private static final Log log = LogFactory.getLog(VClassTemplateModel.class); private static final String PATH = Route.INDIVIDUAL_LIST.path(); - private VClass vclass; + private final VClass vclass; public VClassTemplateModel(VClass vclass) { this.vclass = vclass; diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditConfigurationTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditConfigurationTemplateModel.java index 14b49131e..e256860b8 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditConfigurationTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditConfigurationTemplateModel.java @@ -7,10 +7,11 @@ import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; import edu.cornell.mannlib.vitro.webapp.web.templatemodels.BaseTemplateModel; public class EditConfigurationTemplateModel extends BaseTemplateModel { - EditConfigurationVTwo editConfig; - VitroRequest vreq; - public EditConfigurationTemplateModel( EditConfigurationVTwo editConfig, VitroRequest vreq){ + final EditConfigurationVTwo editConfig; + final VitroRequest vreq; + + public EditConfigurationTemplateModel(EditConfigurationVTwo editConfig, VitroRequest vreq){ this.editConfig = editConfig; this.vreq = vreq; } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditSubmissionTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditSubmissionTemplateModel.java index a0b0565ec..2643b9d32 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditSubmissionTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/EditSubmissionTemplateModel.java @@ -9,7 +9,12 @@ import com.hp.hpl.jena.rdf.model.Literal; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.processEdit.EditSubmission; public class EditSubmissionTemplateModel { - private EditSubmission editSub; + + private final EditSubmission editSub; + + public EditSubmissionTemplateModel(EditSubmission editSub){ + this.editSub = editSub; + } public Map getLiteralsFromForm() { return editSub.getLiteralsFromForm(); @@ -23,11 +28,4 @@ public class EditSubmissionTemplateModel { return editSub.getUrisFromForm(); } - public EditSubmissionTemplateModel(EditSubmission editSub){ - this.editSub = editSub; - } - - - - } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/MultiValueEditSubmissionTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/MultiValueEditSubmissionTemplateModel.java index db1893cee..40ce60a3d 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/MultiValueEditSubmissionTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/edit/MultiValueEditSubmissionTemplateModel.java @@ -9,7 +9,12 @@ import com.hp.hpl.jena.rdf.model.Literal; import edu.cornell.mannlib.vitro.webapp.edit.n3editing.VTwo.MultiValueEditSubmission; public class MultiValueEditSubmissionTemplateModel { - private MultiValueEditSubmission editSub; + + private final MultiValueEditSubmission editSub; + + public MultiValueEditSubmissionTemplateModel(MultiValueEditSubmission editSub){ + this.editSub = editSub; + } public Map> getLiteralsFromForm() { return editSub.getLiteralsFromForm(); @@ -24,11 +29,4 @@ public class MultiValueEditSubmissionTemplateModel { return editSub.getUrisFromForm(); } - public MultiValueEditSubmissionTemplateModel(MultiValueEditSubmission editSub){ - this.editSub = editSub; - } - - - - } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseIndividualTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseIndividualTemplateModel.java index 324cb6856..5abf1b504 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseIndividualTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseIndividualTemplateModel.java @@ -31,13 +31,16 @@ public abstract class BaseIndividualTemplateModel extends BaseTemplateModel { private static final Log log = LogFactory.getLog(BaseIndividualTemplateModel.class); - protected Individual individual; + protected final Individual individual; + protected final LoginStatusBean loginStatusBean; + protected final VitroRequest vreq; + protected GroupedPropertyList propertyList; - protected LoginStatusBean loginStatusBean; + private EditingPolicyHelper policyHelper; public BaseIndividualTemplateModel(Individual individual, VitroRequest vreq) { - super(vreq); + this.vreq = vreq; this.individual = individual; this.loginStatusBean = LoginStatusBean.getBean(vreq); // Needed for getting portal-sensitive urls. Remove if multi-portal support is removed. diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseObjectPropertyDataPostProcessor.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseObjectPropertyDataPostProcessor.java index 4ca9773f6..fc55d48e2 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseObjectPropertyDataPostProcessor.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/BaseObjectPropertyDataPostProcessor.java @@ -19,8 +19,8 @@ public abstract class BaseObjectPropertyDataPostProcessor implements private static final Log log = LogFactory.getLog(BaseObjectPropertyDataPostProcessor.class); - protected ObjectPropertyTemplateModel objectPropertyTemplateModel; - protected WebappDaoFactory wdf; + protected final ObjectPropertyTemplateModel objectPropertyTemplateModel; + protected final WebappDaoFactory wdf; public BaseObjectPropertyDataPostProcessor(ObjectPropertyTemplateModel optm, WebappDaoFactory wdf) { this.objectPropertyTemplateModel = optm; diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/CollatedObjectPropertyTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/CollatedObjectPropertyTemplateModel.java index fdbc60d6f..3c8ca4963 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/CollatedObjectPropertyTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/CollatedObjectPropertyTemplateModel.java @@ -38,7 +38,7 @@ public class CollatedObjectPropertyTemplateModel extends ObjectPropertyTemplateM private static final Pattern ORDER_BY_SUBCLASS_PATTERN = Pattern.compile("ORDER\\s+BY\\s+(DESC\\s*\\(\\s*)?\\?" + SUBCLASS_VARIABLE_NAME, Pattern.CASE_INSENSITIVE); - private SortedMap> subclasses; + private final SortedMap> subclasses; CollatedObjectPropertyTemplateModel(ObjectProperty op, Individual subject, VitroRequest vreq, EditingPolicyHelper policyHelper, @@ -46,9 +46,7 @@ public class CollatedObjectPropertyTemplateModel extends ObjectPropertyTemplateM throws InvalidConfigurationException { super(op, subject, vreq, policyHelper); - - subclasses = new TreeMap>(); - + if (populatedObjectPropertyList.contains(op)) { log.debug("Getting data for populated object property " + op.getURI()); @@ -66,6 +64,7 @@ public class CollatedObjectPropertyTemplateModel extends ObjectPropertyTemplateM } } else { log.debug("Object property " + getUri() + " is unpopulated."); + subclasses = new TreeMap>(); } } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyStatementTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyStatementTemplateModel.java index c53a56cf3..7aa11c09e 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyStatementTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyStatementTemplateModel.java @@ -26,10 +26,10 @@ public class DataPropertyStatementTemplateModel extends PropertyStatementTemplat private static final Log log = LogFactory.getLog(DataPropertyStatementTemplateModel.class); private static final String EDIT_PATH = "edit/editDatapropStmtRequestDispatch.jsp"; - protected String value = null; + protected String value; // Used for editing - protected String dataPropHash = null; + protected String dataPropHash; //Extended to include vitro request to check for special parameters DataPropertyStatementTemplateModel(String subjectUri, String propertyUri, diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyTemplateModel.java index be39889a1..aa0bab920 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/DataPropertyTemplateModel.java @@ -31,7 +31,7 @@ public class DataPropertyTemplateModel extends PropertyTemplateModel { private static final String TYPE = "data"; private static final String EDIT_PATH = "edit/editDatapropStmtRequestDispatch.jsp"; - private List statements; + private final List statements; DataPropertyTemplateModel(DataProperty dp, Individual subject, VitroRequest vreq, EditingPolicyHelper policyHelper, List populatedDataPropertyList) { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/GroupedPropertyList.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/GroupedPropertyList.java index fa49d8ab7..01f333b7b 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/GroupedPropertyList.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/GroupedPropertyList.java @@ -44,19 +44,17 @@ public class GroupedPropertyList extends BaseTemplateModel { @SuppressWarnings("serial") protected static final List VITRO_PROPS_TO_ADD_TO_LIST = new ArrayList() {{ - add(VitroVocabulary.PRIMARY_LINK); - add(VitroVocabulary.ADDITIONAL_LINK); add(VitroVocabulary.IND_MAIN_IMAGE); }}; - private Individual subject; - private VitroRequest vreq; - private WebappDaoFactory wdf; + private final Individual subject; + private final VitroRequest vreq; + private final WebappDaoFactory wdf; private List groups; GroupedPropertyList(Individual subject, VitroRequest vreq, EditingPolicyHelper policyHelper) { - super(vreq); + this.vreq = vreq; this.subject = subject; this.wdf = vreq.getWebappDaoFactory(); diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyStatementTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyStatementTemplateModel.java index 4ba3362aa..d7bc8e9c0 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyStatementTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyStatementTemplateModel.java @@ -25,11 +25,11 @@ public class ObjectPropertyStatementTemplateModel extends PropertyStatementTempl private static final String EDIT_PATH = "edit/editRequestDispatch.jsp"; - private Map data; + private final Map data; // Used for editing - private String objectUri; - private String templateName; + private final String objectUri; + private final String templateName; //Updating to include Vitro Request ObjectPropertyStatementTemplateModel(String subjectUri, String propertyUri, String objectKey, @@ -42,18 +42,6 @@ public class ObjectPropertyStatementTemplateModel extends PropertyStatementTempl setEditAccess(policyHelper); } - /** - * This method handles the special case where we are creating a DataPropertyStatementTemplateModel - * outside the GroupedPropertyList. Specifically, it allows vitro:primaryLink and vitro:additionalLink - * to be treated like object property statements and thus have editing links. (In a future version, - * these properties will be replaced by vivo core ontology properties.) It could potentially be used - * for other properties outside the property list as well. - */ - ObjectPropertyStatementTemplateModel(String subjectUri, String propertyUri, - VitroRequest vreq, EditingPolicyHelper policyHelper) { - super(subjectUri, propertyUri, policyHelper, vreq); - } - private void setEditAccess(EditingPolicyHelper policyHelper) { // If the policyHelper is non-null, we are in edit mode, so create the list of editing permissions. // We do this now rather than in getEditUrl() and getDeleteUrl(), because getEditUrl() also needs to know diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyTemplateModel.java index c67945b45..36ffa0383 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/ObjectPropertyTemplateModel.java @@ -91,10 +91,7 @@ public abstract class ObjectPropertyTemplateModel extends PropertyTemplateModel private String objectKey; // Used for editing - private boolean addAccess = false; - - //To allow for checking of special parameters - private VitroRequest vitroRequest = null; + private boolean addAccess; // defaults to false ObjectPropertyTemplateModel(ObjectProperty op, Individual subject, VitroRequest vreq, EditingPolicyHelper policyHelper) @@ -588,7 +585,7 @@ public abstract class ObjectPropertyTemplateModel extends PropertyTemplateModel "predicateUri", propertyUri); //Check if special parameters being sent - HashMap specialParams = UrlBuilder.getSpecialParams(vitroRequest); + HashMap specialParams = UrlBuilder.getSpecialParams(vreq); if(specialParams.size() > 0) { params.putAll(specialParams); } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyGroupTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyGroupTemplateModel.java index 792e848f6..41bfacd86 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyGroupTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyGroupTemplateModel.java @@ -22,8 +22,8 @@ public class PropertyGroupTemplateModel extends BaseTemplateModel { private static final Log log = LogFactory.getLog(PropertyGroupTemplateModel.class); - private String name; - private List properties; + private final String name; + private final List properties; PropertyGroupTemplateModel(VitroRequest vreq, PropertyGroup group, Individual subject, EditingPolicyHelper policyHelper, diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyStatementTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyStatementTemplateModel.java index a51921d22..082e4fbf2 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyStatementTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyStatementTemplateModel.java @@ -15,26 +15,26 @@ import edu.cornell.mannlib.vitro.webapp.web.templatemodels.BaseTemplateModel; public abstract class PropertyStatementTemplateModel extends BaseTemplateModel { private static final Log log = LogFactory.getLog(PropertyStatementTemplateModel.class); - + private static enum EditAccess { EDIT, DELETE; } + protected final VitroRequest vreq; // Used for editing - protected String subjectUri = null; - protected String propertyUri = null; - private List editAccessList = null; + protected final String subjectUri; + protected final String propertyUri; + private final List editAccessList; + PropertyStatementTemplateModel(String subjectUri, String propertyUri, EditingPolicyHelper policyHelper, VitroRequest vreq) { - super(vreq); + this.vreq = vreq; // Instantiate the list even if not editing, so calls to getEditUrl() and getDeleteUrl() from // dump methods don't generate an error when they call isEditable() and isDeletable(). - editAccessList = new ArrayList(); - - if (policyHelper != null) { // we're editing - this.subjectUri = subjectUri; - this.propertyUri = propertyUri; - } + editAccessList = new ArrayList(); + this.subjectUri = subjectUri; + this.propertyUri = propertyUri; + } protected void markEditable() { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyTemplateModel.java index 66b169c8a..eb3bf29ca 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/PropertyTemplateModel.java @@ -26,15 +26,17 @@ public abstract class PropertyTemplateModel extends BaseTemplateModel { private static final Log log = LogFactory.getLog(PropertyTemplateModel.class); + protected final VitroRequest vreq; + protected final String subjectUri; + protected final String propertyUri; + private final String localName; + + protected Map verboseDisplay; + protected boolean addAccess; // defaults to false private String name; - private String localName; - protected String propertyUri; - protected Map verboseDisplay = null; - protected String subjectUri = null; - protected boolean addAccess = false; - + PropertyTemplateModel(Property property, Individual subject, EditingPolicyHelper policyHelper, VitroRequest vreq) { - super(vreq); + this.vreq = vreq; subjectUri = subject.getURI(); propertyUri = property.getURI(); localName = property.getLocalName(); diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/UncollatedObjectPropertyTemplateModel.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/UncollatedObjectPropertyTemplateModel.java index 69e95efd9..91a84ef7e 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/UncollatedObjectPropertyTemplateModel.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individual/UncollatedObjectPropertyTemplateModel.java @@ -19,7 +19,7 @@ public class UncollatedObjectPropertyTemplateModel extends ObjectPropertyTemplat private static final Log log = LogFactory.getLog(UncollatedObjectPropertyTemplateModel.class); - private List statements; + private final List statements; UncollatedObjectPropertyTemplateModel(ObjectProperty op, Individual subject, VitroRequest vreq, EditingPolicyHelper policyHelper, diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individuallist/BaseListedIndividual.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individuallist/BaseListedIndividual.java index 9f0e54833..0e3ae2af9 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individuallist/BaseListedIndividual.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/individuallist/BaseListedIndividual.java @@ -19,10 +19,11 @@ public abstract class BaseListedIndividual extends BaseTemplateModel { private static final Log log = LogFactory.getLog(BaseListedIndividual.class); - protected Individual individual; + protected final Individual individual; + protected final VitroRequest vreq; public BaseListedIndividual(Individual individual, VitroRequest vreq) { - super(vreq); + this.vreq = vreq; this.individual = individual; } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MainMenu.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MainMenu.java index b3c8f58a6..d9b14a256 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MainMenu.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MainMenu.java @@ -17,10 +17,12 @@ public class MainMenu extends Menu { private static final long serialVersionUID = 1L; private static final Log log = LogFactory.getLog(MainMenu.class); - public MainMenu(){ } + protected VitroRequest vreq; + + public MainMenu() { } public MainMenu(VitroRequest vreq) { - super(vreq); + this.vreq = vreq; } public void addItem(String text, String path) { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/Menu.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/Menu.java index fe1c69873..9ae142098 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/Menu.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/Menu.java @@ -18,13 +18,8 @@ public class Menu extends BaseTemplateModel { protected List items; - public Menu(VitroRequest vreq) { - super(vreq); - items = new ArrayList(); - } - - public Menu() { - items = new ArrayList(); + public Menu() { + items = new ArrayList(); } public void addItem(String text, String path) { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MenuItem.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MenuItem.java index 715948b5e..5ddebb875 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MenuItem.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/menu/MenuItem.java @@ -11,8 +11,8 @@ public class MenuItem extends BaseTemplateModel { private static final Log log = LogFactory.getLog(MenuItem.class.getName()); - private String text; - private String path; + private final String text; + private final String path; private boolean active; public MenuItem(String linkText, String path) { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/BaseIndividualSearchResult.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/BaseIndividualSearchResult.java index 15d2b5681..27297bff6 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/BaseIndividualSearchResult.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/BaseIndividualSearchResult.java @@ -22,10 +22,11 @@ public abstract class BaseIndividualSearchResult extends BaseTemplateModel { private static final Log log = LogFactory.getLog(BaseIndividualSearchResult.class); - protected Individual individual; + protected final VitroRequest vreq; + protected final Individual individual; public BaseIndividualSearchResult(Individual individual, VitroRequest vreq) { - super(vreq); + this.vreq = vreq; this.individual = individual; } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/IndividualSearchResult.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/IndividualSearchResult.java index 36628b9ec..01204ad00 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/IndividualSearchResult.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/IndividualSearchResult.java @@ -11,8 +11,6 @@ import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; public class IndividualSearchResult extends BaseIndividualSearchResult { private static final Log log = LogFactory.getLog(IndividualSearchResult.class); - - protected Individual individual; public IndividualSearchResult(Individual individual, VitroRequest vreq) { super(individual, vreq);