org.apache.solr.client.solrj.impl

## Class ZkDistribStateManager

- java.lang.Object
- - org.apache.solr.client.solrj.impl.ZkDistribStateManager

All Implemented Interfaces:
  Closeable, AutoCloseable, DistribStateManager

    public class ZkDistribStateManager
    extends Object
    implements DistribStateManager

Implementation of `DistribStateManager` that uses Zookeeper.

### Constructor Summary

Constructors
Constructor and Description
`ZkDistribStateManager(SolrZkClient zkClient)`

### Method Summary

All Methods Instance Methods Concrete Methods
`String` `createData(String path, byte[] data, org.apache.zookeeper.CreateMode mode)`
`AutoScalingConfig` `getAutoScalingConfig(org.apache.zookeeper.Watcher watcher)`
`VersionedData` `getData(String path, org.apache.zookeeper.Watcher watcher)`
`boolean` `hasData(String path)`
`List<String>` `listData(String path)`
`void` `makePath(String path)`
`List<org.apache.zookeeper.OpResult>` `multi(Iterable<org.apache.zookeeper.Op> ops)`
`void` `removeData(String path, int version)`
`void` `setData(String path, byte[] data, int version)`

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

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

### Methods inherited from interface org.apache.solr.client.solrj.cloud.autoscaling.DistribStateManager

`close, getAutoScalingConfig, getData`

### Constructor Detail

#### ZkDistribStateManager

    public ZkDistribStateManager(SolrZkClient zkClient)

### Method Detail

#### hasData

    public boolean hasData(String path)
                    throws IOException,
                           org.apache.zookeeper.KeeperException,
                           InterruptedException

Specified by:
  `hasData` in interface `DistribStateManager`
Throws:
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### listData

    public List<String> listData(String path)
                          throws NoSuchElementException,
                                 IOException,
                                 org.apache.zookeeper.KeeperException,
                                 InterruptedException

Specified by:
  `listData` in interface `DistribStateManager`
Throws:
  `NoSuchElementException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### getData

    public VersionedData getData(String path,
                                 org.apache.zookeeper.Watcher watcher)
                          throws NoSuchElementException,
                                 IOException,
                                 org.apache.zookeeper.KeeperException,
                                 InterruptedException

Specified by:
  `getData` in interface `DistribStateManager`
Throws:
  `NoSuchElementException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### makePath

    public void makePath(String path)
                  throws AlreadyExistsException,
                         IOException,
                         org.apache.zookeeper.KeeperException,
                         InterruptedException

Specified by:
  `makePath` in interface `DistribStateManager`
Throws:
  `AlreadyExistsException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### createData

    public String createData(String path,
                             byte[] data,
                             org.apache.zookeeper.CreateMode mode)
                      throws AlreadyExistsException,
                             IOException,
                             org.apache.zookeeper.KeeperException,
                             InterruptedException

Specified by:
  `createData` in interface `DistribStateManager`
Throws:
  `AlreadyExistsException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### removeData

    public void removeData(String path,
                           int version)
                    throws NoSuchElementException,
                           IOException,
                           org.apache.zookeeper.KeeperException,
                           InterruptedException

Specified by:
  `removeData` in interface `DistribStateManager`
Throws:
  `NoSuchElementException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### setData

    public void setData(String path,
                        byte[] data,
                        int version)
                 throws BadVersionException,
                        NoSuchElementException,
                        IOException,
                        org.apache.zookeeper.KeeperException,
                        InterruptedException

Specified by:
  `setData` in interface `DistribStateManager`
Throws:
  `BadVersionException`
  `NoSuchElementException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### multi

    public List<org.apache.zookeeper.OpResult> multi(Iterable<org.apache.zookeeper.Op> ops)
                                              throws BadVersionException,
                                                     AlreadyExistsException,
                                                     NoSuchElementException,
                                                     IOException,
                                                     org.apache.zookeeper.KeeperException,
                                                     InterruptedException

Specified by:
  `multi` in interface `DistribStateManager`
Throws:
  `BadVersionException`
  `AlreadyExistsException`
  `NoSuchElementException`
  `IOException`
  `org.apache.zookeeper.KeeperException`
  `InterruptedException`

#### getAutoScalingConfig

    public AutoScalingConfig getAutoScalingConfig(org.apache.zookeeper.Watcher watcher)
                                           throws InterruptedException,
                                                  IOException

Specified by:
  `getAutoScalingConfig` in interface `DistribStateManager`
Throws:
  `InterruptedException`
  `IOException`