code: public OperationStatus getStatus() {
      if (status == null) {
        try {
          get();
        } catch (InterruptedException e) {
          status = new OperationStatus(false, "Interrupted", StatusCode.INTERRUPTED);
        } catch (ExecutionException e) {
          getLogger().warn("Error getting status of operation", e);
        }
      }
      return status;
    }
docs: Get the current status of this operation.
  
  Note that the operation status may change as the operation is tried and
  potentially retried against the servers specified by the NodeLocator.
  
  The interrupted status of the current thread is cleared by this method.
  Inspect the returned OperationStatus to check whether an interruption has taken place.
  
  @return OperationStatus