@Override public void handlePatch(Operation patch) { DiskState currentState = getState(patch); Function<Operation, Boolean> customPatchHandler = new Function<Operation, Boolean>() { @Override public Boolean apply(Operation t) { DiskState patchBody = patch.getBody(DiskState.class); boolean hasStateChanged = false; if (patchBody.capacityMBytes != 0 && patchBody.capacityMBytes != currentState.capacityMBytes) { currentState.capacityMBytes = patchBody.capacityMBytes; hasStateChanged = true; } return hasStateChanged; } }; ResourceUtils.handlePatch(patch, currentState, getStateDescription(), DiskState.class, customPatchHandler); }
private DiskState validatePut(Operation op) { DiskState state = processInput(op); DiskState currentState = getState(op); ResourceUtils.validatePut(state, currentState); return state; }
DiskState currentState = getState(patch); Function<Operation, Boolean> customPatchHandler = new Function<Operation, Boolean>() { @Override
@Override public void handleGet(Operation get) { DiskState currentState = getState(get); boolean doExpand = get.getUri().getQuery() != null && UriUtils.hasODataExpandParamValue(get.getUri());
@Override public void handleGet(Operation get) { DiskState currentState = getState(get); boolean doExpand = get.getUri().getQuery() != null && UriUtils.hasODataExpandParamValue(get.getUri());
@Override public void handlePut(Operation put) { if (PhotonModelUtils.isFromMigration(put)) { super.handlePut(put); return; } DiskState returnState = validatePut(put); ResourceUtils.populateTags(this, returnState) .thenAccept(__ -> { ResourceUtils.updateNoEndpointFlag(returnState, getState(put), DiskState.class); setState(put, returnState); }) .whenCompleteNotify(put); }