org.apache.accumulo.core.client
Class ZooKeeperInstance

java.lang.Object
  extended by org.apache.accumulo.core.client.ZooKeeperInstance
All Implemented Interfaces:
Instance

public class ZooKeeperInstance
extends java.lang.Object
implements Instance

An implementation of instance that looks in zookeeper to find information needed to connect to an instance of accumulo.

The advantage of using zookeeper to obtain information about accumulo is that zookeeper is highly available, very responsive, and supports caching.

Because it is possible for multiple instances of accumulo to share a single set of zookeeper servers, all constructors require a accumulo instance name. If you do not know the instance names then run accumulo org.apache.accumulo.server.util.ListInstances on a accumulo server.


Constructor Summary
ZooKeeperInstance(java.lang.String instanceName, java.lang.String zooKeepers)
           
ZooKeeperInstance(java.util.UUID instanceId, java.lang.String zooKeepers)
           
 
Method Summary
 AccumuloConfiguration getConfiguration()
          get the AccumuloConfiguration to use when interacting with this instance
 Connector getConnector(java.lang.String user, byte[] pass)
           
 Connector getConnector(java.lang.String user, java.lang.CharSequence pass)
           
 java.lang.String getInstanceID()
          Get a unique string that identifies this instance of accumulo.
 java.lang.String getInstanceName()
          Returns the instance name given at system initialization time.
 java.util.List<java.lang.String> getMasterLocations()
          Get the location(s) of the accumulo master and any redundant servers.
 java.lang.String getRootTabletLocation()
          Get the location of the tablet server that is serving the root tablet.
 java.lang.String getZooKeepers()
           
 int getZooKeepersSessionTimeOut()
           
 void setConfiguration(AccumuloConfiguration conf)
          set the AccumuloConfiguration to use when interacting with this instance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ZooKeeperInstance

public ZooKeeperInstance(java.lang.String instanceName,
                         java.lang.String zooKeepers)
Parameters:
instanceName - The name of specific accumulo instance. This is set at initialization time.
zooKeepers - A comma separated list of zoo keeper server locations. Each location can contain an optional port, of the format host:port.

ZooKeeperInstance

public ZooKeeperInstance(java.util.UUID instanceId,
                         java.lang.String zooKeepers)
Parameters:
instanceId - The UUID that identifies the accumulo instance you want to connect to.
zooKeepers - A comma separated list of zoo keeper server locations. Each location can contain an optional port, of the format host:port.
Method Detail

getInstanceID

public java.lang.String getInstanceID()
Description copied from interface: Instance
Get a unique string that identifies this instance of accumulo.

Specified by:
getInstanceID in interface Instance
Returns:
a UUID

getMasterLocations

public java.util.List<java.lang.String> getMasterLocations()
Description copied from interface: Instance
Get the location(s) of the accumulo master and any redundant servers.

Specified by:
getMasterLocations in interface Instance
Returns:
a list of locations in "hostname:port" form.

getRootTabletLocation

public java.lang.String getRootTabletLocation()
Description copied from interface: Instance
Get the location of the tablet server that is serving the root tablet.

Specified by:
getRootTabletLocation in interface Instance
Returns:
location in "hostname:port" form.

getInstanceName

public java.lang.String getInstanceName()
Description copied from interface: Instance
Returns the instance name given at system initialization time.

Specified by:
getInstanceName in interface Instance
Returns:
current instance name

getZooKeepers

public java.lang.String getZooKeepers()
Specified by:
getZooKeepers in interface Instance
Returns:
the zoo keepers this instance is using

getZooKeepersSessionTimeOut

public int getZooKeepersSessionTimeOut()
Specified by:
getZooKeepersSessionTimeOut in interface Instance
Returns:
the configured timeout to connect to zookeeper

getConnector

public Connector getConnector(java.lang.String user,
                              java.lang.CharSequence pass)
                       throws AccumuloException,
                              AccumuloSecurityException
Specified by:
getConnector in interface Instance
pass - If a mutable CharSequence is passed in, it may be cleared after this call.
Returns:
Throws:
AccumuloException
AccumuloSecurityException

getConnector

public Connector getConnector(java.lang.String user,
                              byte[] pass)
                       throws AccumuloException,
                              AccumuloSecurityException
Specified by:
getConnector in interface Instance
pass - A UTF-8 encoded password. The password may be cleared after making this call.
Returns:
Throws:
AccumuloException
AccumuloSecurityException

getConfiguration

public AccumuloConfiguration getConfiguration()
Description copied from interface: Instance
get the AccumuloConfiguration to use when interacting with this instance

Specified by:
getConfiguration in interface Instance
Returns:
the AccumuloConfiguration that specifies properties related to interacting with this instance

setConfiguration

public void setConfiguration(AccumuloConfiguration conf)
Description copied from interface: Instance
set the AccumuloConfiguration to use when interacting with this instance

Specified by:
setConfiguration in interface Instance


Copyright © 2012 The Apache Software Foundation. All Rights Reserved.