docs: public static<T> T      callWithRetry(CuratorZookeeperClient client, Callable<T> proc) throws Exception
      {
          T               result = null;
          RetryLoop       retryLoop = client.newRetryLoop();
          while ( retryLoop.shouldContinue() )
          {
              try
              {
                  client.internalBlockUntilConnectedOrTimedOut();
  
                  result = proc.call();
                  retryLoop.markComplete();
              }
              catch ( Exception e )
              {
                  ThreadUtils.checkInterrupted(e);
                  retryLoop.takeException(e);
              }
          }
          return result;
      }