operator/src/main/java/oracle/kubernetes/operator/work/Fiber.java
private void resume(Packet resumePacket, CompletionCallback callback) {
    if (status.get() == NOT_COMPLETE) {

      if (LOGGER.isFinerEnabled()) {
        LOGGER.finer("{0} resumed", getName());
      }

      boolean doAddRunnable = false;
      lock.lock();
      try {
        if (callback != null) {
          setCompletionCallback(callback);
        }
        if (LOGGER.isFinerEnabled()) {
          LOGGER.finer("{0} resuming.", getName());
        }
        na.packet = resumePacket;
        if (na.kind == Kind.SUSPEND) {
          doAddRunnable = true;
          NextAction resume = new NextAction();
          resume.invoke(na.next, na.packet);
          na = resume;
        } else {
          if (LOGGER.isFinerEnabled()) {
            LOGGER.finer(
                "{0} taking no action on resume because not suspended", getName());
          }
        }
      } finally {
        lock.unlock();

        if (doAddRunnable) {
          owner.addRunnable(this);
        }
      }
    }
  }
/**
   * Similar to resume(Packet) but allowing the Fiber to be resumed and at the same time atomically
   * assign a new CompletionCallback to it.
   *
   * @param resumePacket packet used in the resumed processing
   * @param callback Replacement completion callback
   */
Similar to resume(Packet) but allowing the Fiber to be resumed and at the same time atomically
assign a new CompletionCallback to it.

@param resumePacket packet used in the resumed processing
@param callback Replacement completion callback
Similar to resume ( Packet ) but allowing the Fiber to be resumed and at the same time atomically assign a new CompletionCallback to it . @param resumePacket packet used in the resumed processing @param callback Replacement completion callback
private void resume(Packet resumePacket, CompletionCallback callback) {
    if (status.get() == NOT_COMPLETE) {
      if (LOGGER.isFinerEnabled()) {
        LOGGER.finer("{0} resumed", getName());
      }
      boolean doAddRunnable = false;
      lock.lock();
      try {
        if (callback != null) {
          setCompletionCallback(callback);
        }
        if (LOGGER.isFinerEnabled()) {
          LOGGER.finer("{0} resuming.", getName());
        }
        na.packet = resumePacket;
        if (na.kind == Kind.SUSPEND) {
          doAddRunnable = true;
          NextAction resume = new NextAction();
          resume.invoke(na.next, na.packet);
          na = resume;
        } else {
          if (LOGGER.isFinerEnabled()) {
            LOGGER.finer(
                "{0} taking no action on resume because not suspended", getName());
          }
        }
      } finally {
        lock.unlock();
        if (doAddRunnable) {
          owner.addRunnable(this);
        }
      }
    }
  }
private void resume ( Packet resumePacket , CompletionCallback callback ) { if ( status . get ( ) == NOT_COMPLETE ) { if ( LOGGER . isFinerEnabled ( ) ) { LOGGER . finer ( "{0} resumed" , getName ( ) ) ; } boolean doAddRunnable = false ; lock . lock ( ) ; try { if ( callback != null ) { setCompletionCallback ( callback ) ; } if ( LOGGER . isFinerEnabled ( ) ) { LOGGER . finer ( "{0} resuming." , getName ( ) ) ; } na . packet = resumePacket ; if ( na . kind == Kind . SUSPEND ) { doAddRunnable = true ; NextAction resume = new NextAction ( ) ; resume . invoke ( na . next , na . packet ) ; na = resume ; } else { if ( LOGGER . isFinerEnabled ( ) ) { LOGGER . finer ( "{0} taking no action on resume because not suspended" , getName ( ) ) ; } } } finally { lock . unlock ( ) ; if ( doAddRunnable ) { owner . addRunnable ( this ) ; } } } }
Similar to resume(Packet) but allowing the Fiber to be resumed and at the same time atomically
 assign a new CompletionCallback to it.
Similar to resume ( Packet ) but allowing the Fiber to be resumed and at the same time atomically assign a new CompletionCallback to it .