@Override public void onResume(ClientContext context) throws InsertException, ResumeFailedException { synchronized(this) { if(resumed) return; resumed = true; } if(sfi != null) sfi.onResume(context); if(metadataPutter != null) metadataPutter.onResume(context); if(sfi != null) sfi.schedule(context); if(metadataPutter != null) { if(ctx.earlyEncode || sfi == null || metaInsertStarted) metadataPutter.schedule(context); } }
@Override public void innerOnResume(ClientContext context) throws ResumeFailedException { super.innerOnResume(context); try { if(currentState != null) currentState.onResume(context); if(origSFI != null) origSFI.onResume(context); } catch (InsertException e) { Logger.error(this, "Failed to start insert on resume: "+e, e); throw new ResumeFailedException("Insert error: "+e); } }
@Override public void onResume(ClientContext context) throws InsertException, ResumeFailedException { synchronized(this) { if(resumed) return; resumed = true; } for(ClientPutState s : getWaitingFor()) s.onResume(context); if(cb != parent) cb.onResume(context); }
@Override public void innerOnResume(ClientContext context) throws ResumeFailedException { super.innerOnResume(context); if(currentState != null) { try { currentState.onResume(context); } catch (InsertException e) { this.onFailure(e, null, context); return; } } if(data != null) data.onResume(context); notifyClients(context); }