AuthenticationProvider
/**
* This interface is implemented by authentication providers to add new kinds of
* authentication schemes to ZooKeeper.
*/
DigestAuthenticationProvider
DigestLoginModule
IPAuthenticationProvider
KerberosName
/**
* This class implements parsing and handling of Kerberos principal names. In
* particular, it splits them apart and translates them down into local
* operating system names.
*/
ProviderRegistry
SASLAuthenticationProvider
SaslServerCallbackHandler
FilePadding
FileSnap
/**
* This class implements the snapshot interface.
* it is responsible for storing, serializing
* and deserializing the right snapshot.
* and provides access to the snapshots.
*/
FileTxnLog
/**
* This class implements the TxnLog interface. It provides api's
* to access the txnlogs and add entries to it.
* <p>
* The format of a Transactional log is as follows:
* <blockquote><pre>
* LogFile:
* FileHeader TxnList ZeroPad
*
* FileHeader: {
* magic 4bytes (ZKLG)
* version 4bytes
* dbid 8bytes
* }
*
* TxnList:
* Txn || Txn TxnList
*
* Txn:
* checksum Txnlen TxnHeader Record 0x42
*
* checksum: 8bytes Adler32 is currently used
* calculated across payload -- Txnlen, TxnHeader, Record and 0x42
*
* Txnlen:
* len 4bytes
*
* TxnHeader: {
* sessionid 8bytes
* cxid 4bytes
* zxid 8bytes
* time 8bytes
* type 4bytes
* }
*
* Record:
* See Jute definition file for details on the various record types
*
* ZeroPad:
* 0 padded to EOF (filled during preallocation stage)
* </pre></blockquote>
*/
FileTxnSnapLog
/**
* This is a helper class
* above the implementations
* of txnlog and snapshot
* classes
*/
SnapShot
/**
* snapshot interface for the persistence layer.
* implement this interface for implementing
* snapshots.
*/
TxnLog
/**
* Interface for reading transaction logs.
*
*/
TxnLogToolkit
TxnLogToolkitCliParser
Util
/**
* A collection of utility methods for dealing with file name parsing,
* low level I/O file operations and marshalling/unmarshalling.
*/
DataNodeV1
/**
* This class contains the data for a node in the data tree.
* <p>
* A data node contains a reference to its parent, a byte array as its data, an
* array of ACLs, a stat object, and a set of its children's paths.
*
*/
DataTreeV1
/**
* This class maintains the tree data structure. It doesn't have any networking
* or client connection code in it so that it can be tested in a stand alone
* way.
* <p>
* The tree maintains two parallel data structures: a hashtable that maps from
* full paths to DataNodes and a tree of DataNodes. All accesses to a path is
* through the hashtable. The tree is traversed only when serializing to disk.
*/
UpgradeMain
/**
* This class upgrades the older database
* to a new database for the zookeeper
* servers.
* The way to run it is
* java -class path zookeeper.jar Upgrade dataDir snapShotDir
* or using zookeeper scripts with zkServer -upgrade dataDir snapShotDir
* it creates a backup in the dataDir/.bkup and snapShotDir/.bkup which
* can be retrieved back to the snapShotDir and dataDir
*/
UpgradeSnapShot
/**
* interface for snapshot conversion.
*
*/
UpgradeSnapShotV1
/**
* This class gets the old snapshot
* and the old dataDir and creates
* an brand new snapshot that is
* then converted to the new snapshot
* for upgrading.
*/
KerberosUtil
OSMXBean
/**
* This class is a wrapper for the implementation of
* com.sun.management.UnixOperatingSystemMXBean
* It will decide to use the sun api or its own implementation
* depending on the runtime (vendor) used.
*/
Profiler
SerializeUtils
ZxidUtils