switch (rp.getdSpaceObject().getType()) { case Constants.BITSTREAM: authorizeManageBitstreamPolicy(c, (Bitstream) rp.getdSpaceObject()); break; case Constants.BUNDLE: authorizeManageBundlePolicy(c, (Bundle) rp.getdSpaceObject()); break; authorizeManageItemPolicy(c, (Item) rp.getdSpaceObject()); break; case Constants.COLLECTION: authorizeManageCollectionPolicy(c, (Collection) rp.getdSpaceObject()); break; case Constants.COMMUNITY: authorizeManageCommunityPolicy(c, (Community) rp.getdSpaceObject()); break;
/** * Delete an ResourcePolicy * * @param context context * @param resourcePolicy resource policy * @throws SQLException if database error * @throws AuthorizeException if authorization error */ @Override public void delete(Context context, ResourcePolicy resourcePolicy) throws SQLException, AuthorizeException { // FIXME: authorizations // Remove ourself resourcePolicyDAO.delete(context, resourcePolicy); context.turnOffAuthorisationSystem(); if (resourcePolicy.getdSpaceObject() != null) { //A policy for a DSpace Object has been modified, fire a modify event on the DSpace object contentServiceFactory.getDSpaceObjectService(resourcePolicy.getdSpaceObject()) .updateLastModified(context, resourcePolicy.getdSpaceObject()); } context.restoreAuthSystemState(); }
/** * Update the ResourcePolicies */ @Override public void update(Context context, List<ResourcePolicy> resourcePolicies) throws SQLException, AuthorizeException { if (CollectionUtils.isNotEmpty(resourcePolicies)) { Set<DSpaceObject> relatedDSpaceObjects = new HashSet<>(); for (ResourcePolicy resourcePolicy : resourcePolicies) { if (resourcePolicy.getdSpaceObject() != null) { relatedDSpaceObjects.add(resourcePolicy.getdSpaceObject()); } // FIXME: Check authorisation resourcePolicyDAO.save(context, resourcePolicy); } //Update the last modified timestamp of all related DSpace Objects context.turnOffAuthorisationSystem(); for (DSpaceObject dSpaceObject : relatedDSpaceObjects) { //A policy for a DSpace Object has been modified, fire a modify event on the DSpace object contentServiceFactory.getDSpaceObjectService(dSpaceObject).updateLastModified(context, dSpaceObject); } context.restoreAuthSystemState(); } } }
if (resourcePolicy.getdSpaceObject().getID().equals(dspaceBitstream.getID()) && authorizeService .authorizeActionBoolean(context, dspaceBitstream, org.dspace.core.Constants.REMOVE)) {
.find(context, rp.getdSpaceObject().getID()); allCollections.add(collection); ResourcePolicy rp = communitiesPolicies.get(i); Community community = ContentServiceFactory.getInstance().getCommunityService() .find(context, rp.getdSpaceObject().getID());
this.resourceId = dspacePolicy.getdSpaceObject().getID().toString(); this.rpDescription = dspacePolicy.getRpDescription(); this.rpName = dspacePolicy.getRpName(); this.startDate = dspacePolicy.getStartDate(); this.endDate = dspacePolicy.getEndDate(); switch (dspacePolicy.getdSpaceObject().getType()) { case org.dspace.core.Constants.BITSTREAM: this.resourceType = "bitstream";
.getBitstreamPolicies(context, bundle); for (org.dspace.authorize.ResourcePolicy policy : bitstreamsPolicies) { if (policy.getdSpaceObject().equals(bitstream)) { tempPolicies.add(new ResourcePolicy(policy));
.ResourcePolicy>(); for (org.dspace.authorize.ResourcePolicy policy : bitstreamsPolicies) { if (policy.getdSpaceObject().getID().equals(dspaceBitstream.getID())) { policiesToRemove.add(policy);