本文整理匯總了Java中org.apache.zookeeper.Watcher.Event.KeeperState.ConnectedReadOnly方法的典型用法代碼示例。如果您正苦於以下問題:Java KeeperState.ConnectedReadOnly方法的具體用法?Java KeeperState.ConnectedReadOnly怎麽用?Java KeeperState.ConnectedReadOnly使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類org.apache.zookeeper.Watcher.Event.KeeperState
的用法示例。
在下文中一共展示了KeeperState.ConnectedReadOnly方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: process
import org.apache.zookeeper.Watcher.Event.KeeperState; //導入方法依賴的package包/類
synchronized public void process(WatchedEvent event) {
KeeperState state = event.getState();
if (state == KeeperState.SyncConnected) {
connected = true;
syncConnected = true;
readOnlyConnected = false;
} else if (state == KeeperState.ConnectedReadOnly) {
connected = true;
syncConnected = false;
readOnlyConnected = true;
} else {
connected = false;
syncConnected = false;
readOnlyConnected = false;
}
notifyAll();
if (connected) {
clientConnected.countDown();
}
}
示例2: process
import org.apache.zookeeper.Watcher.Event.KeeperState; //導入方法依賴的package包/類
@Override
synchronized public void process(WatchedEvent event) {
if (event.getState() == KeeperState.SyncConnected ||
event.getState() == KeeperState.ConnectedReadOnly) {
connected = true;
notifyAll();
clientConnected.countDown();
} else {
connected = false;
notifyAll();
}
}
示例3: onConnected
import org.apache.zookeeper.Watcher.Event.KeeperState; //導入方法依賴的package包/類
/**
* Callback invoked by the ClientCnxnSocket once a connection has been
* established.
*
* @param _negotiatedSessionTimeout
* @param _sessionId
* @param _sessionPasswd
* @param isRO
* @throws IOException
*/
void onConnected(int _negotiatedSessionTimeout, long _sessionId,
byte[] _sessionPasswd, boolean isRO) throws IOException {
negotiatedSessionTimeout = _negotiatedSessionTimeout;
if (negotiatedSessionTimeout <= 0) {
state = States.CLOSED;
eventThread.queueEvent(new WatchedEvent(
Watcher.Event.EventType.None,
Watcher.Event.KeeperState.Expired, null));
eventThread.queueEventOfDeath();
String warnInfo;
warnInfo = "Unable to reconnect to ZooKeeper service, session 0x"
+ Long.toHexString(sessionId) + " has expired";
LOG.warn(warnInfo);
throw new SessionExpiredException(warnInfo);
}
if (!readOnly && isRO) {
LOG.error("Read/write client got connected to read-only server");
}
readTimeout = negotiatedSessionTimeout * 2 / 3;
connectTimeout = negotiatedSessionTimeout / hostProvider.size();
hostProvider.onConnected();
sessionId = _sessionId;
sessionPasswd = _sessionPasswd;
state = (isRO) ?
States.CONNECTEDREADONLY : States.CONNECTED;
seenRwServerBefore |= !isRO;
LOG.info("Session establishment complete on server "
+ clientCnxnSocket.getRemoteSocketAddress()
+ ", sessionid = 0x" + Long.toHexString(sessionId)
+ ", negotiated timeout = " + negotiatedSessionTimeout
+ (isRO ? " (READ-ONLY mode)" : ""));
KeeperState eventState = (isRO) ?
KeeperState.ConnectedReadOnly : KeeperState.SyncConnected;
eventThread.queueEvent(new WatchedEvent(
Watcher.Event.EventType.None,
eventState, null));
}
示例4: process
import org.apache.zookeeper.Watcher.Event.KeeperState; //導入方法依賴的package包/類
synchronized public void process(WatchedEvent event) {
if (event.getState() == KeeperState.SyncConnected ||
event.getState() == KeeperState.ConnectedReadOnly) {
connected = true;
notifyAll();
clientConnected.countDown();
} else {
connected = false;
notifyAll();
}
}
示例5: isAvailable
import org.apache.zookeeper.Watcher.Event.KeeperState; //導入方法依賴的package包/類
public boolean isAvailable() {
if(zookeeper == null) return false;
return _currentState == KeeperState.SyncConnected
|| _currentState == KeeperState.ConnectedReadOnly;
}