private void handleResponseStatus(DataSegmentChangeRequest changeRequest, SegmentLoadDropHandler.Status status) { changeRequest.go( new DataSegmentChangeHandler() { @Override public void addSegment(DataSegment segment, DataSegmentChangeCallback callback) { updateSuccessOrFailureInHolder(segmentsToLoad.remove(segment), status); } @Override public void removeSegment(DataSegment segment, DataSegmentChangeCallback callback) { updateSuccessOrFailureInHolder(segmentsToDrop.remove(segment), status); } private void updateSuccessOrFailureInHolder(SegmentHolder holder, SegmentLoadDropHandler.Status status) { if (holder == null) { return; } if (status.getState() == SegmentLoadDropHandler.Status.STATE.FAILED) { holder.requestFailed(status.getFailureCause()); } else { holder.requestSucceeded(); } } }, null ); }
changeRequest.go( new DataSegmentChangeHandler()
@Override public void childEvent(CuratorFramework client, PathChildrenCacheEvent event) throws Exception { if (event.getType() == PathChildrenCacheEvent.Type.CHILD_ADDED) { DataSegmentChangeRequest request = jsonMapper.readValue( event.getData().getData(), DataSegmentChangeRequest.class ); request.go(handler, null); } } }
private void handleResponseStatus(DataSegmentChangeRequest changeRequest, SegmentLoadDropHandler.Status status) { changeRequest.go( new DataSegmentChangeHandler() { @Override public void addSegment(DataSegment segment, DataSegmentChangeCallback callback) { updateSuccessOrFailureInHolder(segmentsToLoad.remove(segment), status); } @Override public void removeSegment(DataSegment segment, DataSegmentChangeCallback callback) { updateSuccessOrFailureInHolder(segmentsToDrop.remove(segment), status); } private void updateSuccessOrFailureInHolder(SegmentHolder holder, SegmentLoadDropHandler.Status status) { if (holder == null) { return; } if (status.getState() == SegmentLoadDropHandler.Status.STATE.FAILED) { holder.requestFailed(status.getFailureCause()); } else { holder.requestSucceeded(); } } }, null ); }
changeRequest.go( new DataSegmentChangeHandler()