@Override public void enforceRetrieveFile(Context context, String fileURI) throws AuthzException { try { logger.debug("Entered enforceRetrieveFile for {}", fileURI); String target = Constants.ACTION.RETRIEVE_FILE.uri; context.setActionAttributes(null); context.setResourceAttributes(null); MultiValueMap<URI> resourceAttributes = new MultiValueMap<URI>(); try { resourceAttributes.setReturn(Constants.DATASTREAM.FILE_URI.attributeId, fileURI); } catch (Exception e) { context.setResourceAttributes(null); throw new AuthzOperationalException(target + " couldn't be set " + Constants.DATASTREAM.FILE_URI.attributeId, e); } context.setResourceAttributes(resourceAttributes); m_pep.enforce(context .getSubjectValue(Constants.SUBJECT.LOGIN_ID.uri), target, Constants.ACTION.APIM.uri, "", extractNamespace(fileURI), context); } finally { logger.debug("Exiting enforceRetrieveFile"); } }