void startWithMetadata(Bucket data, ClientContext context) { parent.completedBlock(true, context); handleMetadata(data, context); }
@Override public void onFetchedBlock() { boolean dontNotify = true; if(getter.hasQueued()) { dontNotify = false; } else { synchronized(this) { if(storeFetchCounter++ == STORE_NOTIFY_BLOCKS) { storeFetchCounter = 0; dontNotify = false; lastNotifiedStoreFetch = System.currentTimeMillis(); } else { long now = System.currentTimeMillis(); if(now - lastNotifiedStoreFetch >= STORE_NOTIFY_INTERVAL) { dontNotify = false; lastNotifiedStoreFetch = now; } } } } parent.completedBlock(dontNotify, context); }
@Override public void onResume(int succeededBlocks, int failedBlocks, ClientMetadata meta, long finalSize) { for(int i=0;i<succeededBlocks-1;i++) parent.completedBlock(true, context); if(succeededBlocks > 0) parent.completedBlock(false, context); for(int i=0;i<failedBlocks-1;i++) parent.failedBlock(true, context); if(failedBlocks > 0) parent.failedBlock(false, context); parent.blockSetFinalized(context); try { cb.onExpectedMIME(meta, context); } catch (FetchException e) { fail(e); return; } cb.onExpectedSize(finalSize, context); }
if(parent instanceof ClientGetter) ((ClientGetter)parent).addKeyToBinaryBlob(block, context); parent.completedBlock(fromStore, context);