@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { validateInfraAccess(request, "delete"); return super.delete(type, id, request, next); }
@Override public Object create(String type, ApiRequest request, ResourceManager next) { validateInfraAccess(request, "create"); return super.create(type, request, next); }
@Override public Object update(String type, String id, ApiRequest request, ResourceManager next) { validateInfraAccess(request, "update"); return super.update(type, id, request, next); }
@Override public Object resourceAction(String type, ApiRequest request, ResourceManager next) { if (ACTIONS.contains(request.getAction())) { validateInUse(type, request.getId(), request, next); } return super.resourceAction(type, request, next); }
protected T getCached(ApiRequest apiRequest) { if (apiRequest == null) { return null; } @SuppressWarnings("unchecked") T cached = (T)apiRequest.getAttribute(this); if (cached == null) { cached = newObject(apiRequest); apiRequest.setAttribute(this, cached); } return cached; }
@Override public Object create(String type, ApiRequest request, ResourceManager next) { Service service = request.proxyRequestObject(Service.class); validateSelectorOnlyService(request, service); return super.create(type, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { validateIfCertificateInUse(id); return super.delete(type, id, request, next); }
@Override public Object update(String type, String id, ApiRequest request, ResourceManager next) { Object instance = objectManager.loadResource(type, id); if (instance == null || !(instance instanceof Instance)) { return super.update(type, id, request, next); } validateInfraAccess(instance, "update"); return super.update(type, id, request, next); }
@Override public Object resourceAction(String type, ApiRequest request, ResourceManager next) { if (ACTIONS.contains(request.getAction())) { validateInUse(type, request.getId(), request, next); } return super.resourceAction(type, request, next); }
@Override public Object create(String type, ApiRequest request, ResourceManager next) { VolumeTemplate template = request.proxyRequestObject(VolumeTemplate.class); validateNameUniqueness(template); validateScope(template); return super.create(type, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { validateInUse(type, id, request, next); return super.delete(type, id, request, next); }
@Override public Object update(String type, String id, ApiRequest request, ResourceManager next) { String cert = DataUtils.getFieldFromRequest(request, "cert", String.class); Certificate certificate = request.proxyRequestObject(Certificate.class); setCertificateFields(cert, certificate); return super.update(type, id, request, next); }
@Override public Object create(String type, ApiRequest request, ResourceManager next) { Stack env = request.proxyRequestObject(Stack.class); validateStackName(type, request, env.getName()); return super.create(type, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { validateSnapshotRemove(request); return super.delete(type, id, request, next); }
@Override public Object update(String type, String id, ApiRequest request, ResourceManager next) { Service service = objectManager.loadResource(Service.class, id); Stack stack = objectManager.loadResource(Stack.class, service.getStackId()); validateInfraAccess(request, "update", stack, service); validateLaunchConfigs(service, request); validateSelector(request); validateLbConfig(request, type); validateScalePolicy(service, request, true); validatePorts(service, type, request); return super.update(type, id, request, next); }
@Override public Object create(String type, ApiRequest request, ResourceManager next) { String cert = DataUtils.getFieldFromRequest(request, "cert", String.class); Certificate certificate = request.proxyRequestObject(Certificate.class); setCertificateFields(cert, certificate); return super.create(type, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { validateInUse(type, id, request, next); return super.delete(type, id, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { validateInfraAccess(request, "delete"); return super.delete(type, id, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { Stack stack = objMgr.loadResource(Stack.class, id); validateInfraAccess(request, stack, "delete"); return super.delete(type, id, request, next); }
@Override public Object delete(String type, String id, ApiRequest request, ResourceManager next) { long accountId = Long.valueOf(id); Account anAdminAccount = accountDao.getAdminAccountExclude(accountId); if (anAdminAccount == null) { throw new ClientVisibleException(ResponseCodes.METHOD_NOT_ALLOWED, AccountConstants.LAST_ADMIN_ACCOUNT, "Cannot delete the last admin account.", AccountConstants.ADMIN_REQUIRED_MESSAGE); } return super.delete(type, id, request, next); }