org.apache.solr.common.cloud

## Class ZkCmdExecutor

- java.lang.Object
- - org.apache.solr.common.cloud.ZkCmdExecutor

    public class ZkCmdExecutor
    extends Object

### Constructor Summary

Constructors
Constructor and Description
`ZkCmdExecutor(int timeoutms)` TODO: At this point, this should probably take a SolrZkClient in it's constructor.

### Method Summary

Methods
`void` `ensureExists(String path, byte[] data, org.apache.zookeeper.CreateMode createMode, SolrZkClient zkClient)`
`void` `ensureExists(String path, SolrZkClient zkClient)`
`List<org.apache.zookeeper.data.ACL>` `getAcl()`
`long` `getRetryDelay()`
`protected void` `retryDelay(int attemptCount)` Performs a retry delay if this is not the first attempt
`<T> T` `retryOperation(ZkOperation operation)` Perform the given operation, retrying if the connection fails
`void` `setAcl(List<org.apache.zookeeper.data.ACL> acl)`
`void` `setRetryDelay(long retryDelay)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ZkCmdExecutor

    public ZkCmdExecutor(int timeoutms)

TODO: At this point, this should probably take a SolrZkClient in it's constructor.

Parameters:
  `timeoutms` - the client timeout for the ZooKeeper clients that will be used with this class.

### Method Detail

#### getAcl

    public List<org.apache.zookeeper.data.ACL> getAcl()

#### setAcl

    public void setAcl(List<org.apache.zookeeper.data.ACL> acl)

#### getRetryDelay

    public long getRetryDelay()

#### setRetryDelay

    public void setRetryDelay(long retryDelay)

#### retryOperation

    public <T> T retryOperation(ZkOperation operation)
                     throws org.apache.zookeeper.KeeperException,
                            InterruptedException

Perform the given operation, retrying if the connection fails

Throws:
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### ensureExists

    public void ensureExists(String path,
                    SolrZkClient zkClient)
                      throws org.apache.zookeeper.KeeperException,
                             InterruptedException

Throws:
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### ensureExists

    public void ensureExists(String path,
                    byte[] data,
                    org.apache.zookeeper.CreateMode createMode,
                    SolrZkClient zkClient)
                      throws org.apache.zookeeper.KeeperException,
                             InterruptedException

Throws:
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### retryDelay

    protected void retryDelay(int attemptCount)
                       throws InterruptedException

Performs a retry delay if this is not the first attempt

Parameters:
  `attemptCount` - the number of the attempts performed so far
Throws:
  `InterruptedException`