/** * Creates a new facade with metadata and data about children copied from * specified metadata container. Without any parts. * @param src source of metadata */ public ArchiveObjectFacade(ArchiveObject2 src) { super(src); this.children = src.getChildren(); }
public GetArchive2ObjectResponse getObject(GetArchive2ObjectRequest request) { GetArchive2ObjectResponse response = archive.getObject(request); if(!response.isOK()) return response; if (response.getResult() == null || skipLicenses) return response; YaddaErrorAwareResult<Set<ObligationType>> secResult = licAuthzFacade.retrieveLicenseObligations( securityRequestHandler.extract(request)); if (secResult.getError()!=null) { log.error("got error from security client: " + secResult.getError().getCode() + ", " + secResult.getError().getMssg()); return new GetArchive2ObjectResponse(secResult.getError()); } if (evaluateAccess(secResult.getData(), new LicenseEvaluatorContext<String[]>( request.getId().getId(), response.getResult().getTags()))) { return response; } else { response = new GetArchive2ObjectResponse(new YaddaError(SecurityConstants.ERROR_AUTH, "Permission not granted to retrieve resource id='" + request.getId().getId() + "'!")); return response; } }