@Override public EPerson getSubmitter() throws SQLException { return item.getSubmitter(); }
@Override public EPerson getSubmitter() throws SQLException { return item.getSubmitter(); }
@Override public EPerson getSubmitter() throws SQLException { return item.getSubmitter(); }
@Override public RequestItemAuthor getRequestItemAuthor(Context context, Item item) throws SQLException { EPerson submitter = item.getSubmitter(); RequestItemAuthor author = new RequestItemAuthor( submitter.getFullName(), submitter.getEmail()); return author; }
protected void grantSubmitterReadPolicies(Context context, Item item) throws SQLException, AuthorizeException { //A list of policies the user has for this item List<Integer> userHasPolicies = new ArrayList<Integer>(); List<ResourcePolicy> itempols = authorizeService.getPolicies(context, item); EPerson submitter = item.getSubmitter(); for (ResourcePolicy resourcePolicy : itempols) { if (submitter.equals(resourcePolicy.getEPerson())) { //The user has already got this policy so add it to the list userHasPolicies.add(resourcePolicy.getAction()); } } //Make sure we don't add duplicate policies if (!userHasPolicies.contains(Constants.READ)) { addPolicyToItem(context, item, Constants.READ, submitter, ResourcePolicy.TYPE_SUBMISSION); } }
protected void recordStart(Context context, Item myitem) throws SQLException, IOException, AuthorizeException { // get date DCDate now = DCDate.getCurrent(); // Create provenance description String provmessage; if (myitem.getSubmitter() != null) { provmessage = "Submitted by " + myitem.getSubmitter().getFullName() + " (" + myitem.getSubmitter().getEmail() + ") on " + now.toString() + "\n"; } else { // else, null submitter provmessage = "Submitted by unknown (probably automated) on" + now.toString() + "\n"; } // add sizes and checksums of bitstreams provmessage += installItemService.getBitstreamProvenanceMessage(context, myitem); // Add message to the DC itemService .addMetadata(context, myitem, MetadataSchema.DC_SCHEMA, "description", "provenance", "en", provmessage); itemService.update(context, myitem); }
protected void recordStart(Context context, Item myitem, Action action) throws SQLException, IOException, AuthorizeException { // get date DCDate now = DCDate.getCurrent(); // Create provenance description String provmessage = ""; if (myitem.getSubmitter() != null) { provmessage = "Submitted by " + myitem.getSubmitter().getFullName() + " (" + myitem.getSubmitter().getEmail() + ") on " + now.toString() + " workflow start=" + action.getProvenanceStartId() + "\n"; } else { // else, null submitter provmessage = "Submitted by unknown (probably automated) on" + now.toString() + " workflow start=" + action.getProvenanceStartId() + "\n"; } // add sizes and checksums of bitstreams provmessage += installItemService.getBitstreamProvenanceMessage(context, myitem); // Add message to the DC itemService .addMetadata(context, myitem, MetadataSchema.DC_SCHEMA, "description", "provenance", "en", provmessage); itemService.update(context, myitem); }
@Override public boolean canCreateNewVersion(Context context, Item item) throws SQLException { if (authorizeService.isAdmin(context, item)) { return true; } if (context.getCurrentUser() != null && context.getCurrentUser().equals(item.getSubmitter())) { return configurationService.getPropertyAsType( "versioning.submitterCanCreateNewVersion", false); } return false; } }
public void removeUserItemPolicies(Context context, Item item, EPerson e) throws SQLException, AuthorizeException { if (e != null) { //Also remove any lingering authorizations from this user authorizeService.removeEPersonPolicies(context, item, e); //Remove the bundle rights List<Bundle> bundles = item.getBundles(); for (Bundle bundle : bundles) { authorizeService.removeEPersonPolicies(context, bundle, e); List<Bitstream> bitstreams = bundle.getBitstreams(); for (Bitstream bitstream : bitstreams) { authorizeService.removeEPersonPolicies(context, bitstream, e); } } // Ensure that the submitter always retains his resource policies if (e.getID().equals(item.getSubmitter().getID())) { grantSubmitterReadPolicies(context, item); } } }
@Override public Version createNewVersion(Context context, VersionHistory history, Item item, String summary, Date date, int versionNumber) { try { Version version = versionDAO.create(context, new Version()); version.setVersionNumber(getNextVersionNumer(context, history)); version.setVersionDate(date); version.setePerson(item.getSubmitter()); version.setItem(item); version.setSummary(summary); version.setVersionHistory(history); versionDAO.save(context, version); versionHistoryService.add(context, history, version); return version; } catch (SQLException e) { throw new RuntimeException(e.getMessage(), e); } }
authorizeService.addPolicy(context, item, Constants.READ, item.getSubmitter(), ResourcePolicy.TYPE_SUBMISSION); authorizeService.addPolicy(context, item, Constants.WRITE, item.getSubmitter(), ResourcePolicy.TYPE_SUBMISSION); authorizeService.addPolicy(context, item, Constants.ADD, item.getSubmitter(), ResourcePolicy.TYPE_SUBMISSION); .addPolicy(context, item, Constants.REMOVE, item.getSubmitter(), ResourcePolicy.TYPE_SUBMISSION); .addPolicy(context, item, Constants.DELETE, item.getSubmitter(), ResourcePolicy.TYPE_SUBMISSION);
if (dso.getType() == Constants.ITEM) { Item item = (Item) dso; EPerson is = item.getSubmitter(); if (is != null) { dc.add(makeDC("creator", null, is.getEmail()));
try { EPerson ep = item.getSubmitter();
@Override public void deleteAll(Context context, WorkspaceItem workspaceItem) throws SQLException, AuthorizeException, IOException { /* * Authorisation is a special case. The submitter won't have REMOVE * permission on the collection, so our policy is this: Only the * original submitter or an administrator can delete a workspace item. */ Item item = workspaceItem.getItem(); if (!authorizeService.isAdmin(context) && ((context.getCurrentUser() == null) || (context .getCurrentUser().getID() != item.getSubmitter() .getID()))) { // Not an admit, not the submitter throw new AuthorizeException("Must be an administrator or the " + "original submitter to delete a workspace item"); } log.info(LogManager.getHeader(context, "delete_workspace_item", "workspace_item_id=" + workspaceItem.getID() + "item_id=" + item.getID() + "collection_id=" + workspaceItem.getCollection().getID())); // Need to delete the epersongroup2workspaceitem row first since it refers // to workspaceitem ID workspaceItem.getSupervisorGroups().clear(); // Need to delete the workspaceitem row first since it refers // to item ID workspaceItemDAO.delete(context, workspaceItem); // Delete item itemService.delete(context, item); }
try { EPerson ep = item.getSubmitter();
if (item.getSubmitter() != null) { doc.addField("item.submitter", item.getSubmitter().getEmail());
grantUserAllItemPolicies(c, myitem, myitem.getSubmitter());
wfi.setPublishedBefore(wsi.isPublishedBefore()); xmlWorkflowItemService.update(context, wfi); removeUserItemPolicies(context, myitem, myitem.getSubmitter()); grantSubmitterReadPolicies(context, myitem);
EPerson submitter = ((Item) usageWorkflowEvent.getObject()).getSubmitter(); if (submitter != null) { solrDoc.addField("submitter", submitter.getID());
EPerson submitterEPerson = workspaceItem.getItem().getSubmitter(); EPerson submitterEPerson = workspaceItem.getItem().getSubmitter();