• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java ServerCnxn类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.zookeeper.server.ServerCnxn的典型用法代码示例。如果您正苦于以下问题:Java ServerCnxn类的具体用法?Java ServerCnxn怎么用?Java ServerCnxn使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



ServerCnxn类属于org.apache.zookeeper.server包,在下文中一共展示了ServerCnxn类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: validateSession

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
/**
 * validate a session for a client
 *
 * @param clientId
 *                the client to be revalidated
 * @param timeout
 *                the timeout for which the session is valid
 * @return
 * @throws IOException
 */
void validateSession(ServerCnxn cnxn, long clientId, int timeout)
        throws IOException {
    LOG.info("Revalidating client: 0x" + Long.toHexString(clientId));
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    DataOutputStream dos = new DataOutputStream(baos);
    dos.writeLong(clientId);
    dos.writeInt(timeout);
    dos.close();
    QuorumPacket qp = new QuorumPacket(Leader.REVALIDATE, -1, baos
            .toByteArray(), null);
    pendingRevalidations.put(clientId, cnxn);
    if (LOG.isTraceEnabled()) {
        ZooTrace.logTraceMessage(LOG,
                                 ZooTrace.SESSION_TRACE_MASK,
                                 "To validate session 0x"
                                 + Long.toHexString(clientId));
    }
    writePacket(qp, true);
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:30,代码来源:Learner.java


示例2: revalidate

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
protected void revalidate(QuorumPacket qp) throws IOException {
    ByteArrayInputStream bis = new ByteArrayInputStream(qp
            .getData());
    DataInputStream dis = new DataInputStream(bis);
    long sessionId = dis.readLong();
    boolean valid = dis.readBoolean();
    ServerCnxn cnxn = pendingRevalidations
    .remove(sessionId);
    if (cnxn == null) {
        LOG.warn("Missing session 0x"
                + Long.toHexString(sessionId)
                + " for validation");
    } else {
        zk.finishSessionInit(cnxn, valid);
    }
    if (LOG.isTraceEnabled()) {
        ZooTrace.logTraceMessage(LOG,
                ZooTrace.SESSION_TRACE_MASK,
                "Session 0x" + Long.toHexString(sessionId)
                + " is valid: " + valid);
    }
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:23,代码来源:Learner.java


示例3: handleAuthentication

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
public KeeperException.Code 
    handleAuthentication(ServerCnxn cnxn, byte[] authData)
{
    String id = new String(authData);
    try {
        String digest = generateDigest(id);
        if (digest.equals(superDigest)) {
            cnxn.addAuthInfo(new Id("super", ""));
        }
        cnxn.addAuthInfo(new Id(getScheme(), digest));
        return KeeperException.Code.OK;
    } catch (NoSuchAlgorithmException e) {
        LOG.error("Missing algorithm",e);
    }
    return KeeperException.Code.AUTHFAILED;
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:17,代码来源:DigestAuthenticationProvider.java


示例4: revalidate

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
protected void revalidate(QuorumPacket qp) throws IOException {
    ByteArrayInputStream bis = new ByteArrayInputStream(qp
            .getData());
    DataInputStream dis = new DataInputStream(bis);
    long sessionId = dis.readLong();
    boolean valid = dis.readBoolean();
    ServerCnxn cnxn = pendingRevalidations.remove(sessionId);
    if (cnxn == null) {
        LOG.warn("Missing session 0x"
                + Long.toHexString(sessionId)
                + " for validation");
    } else {
        zk.finishSessionInit(cnxn, valid);
    }
    if (LOG.isTraceEnabled()) {
        ZooTrace.logTraceMessage(LOG,
                ZooTrace.SESSION_TRACE_MASK,
                "Session 0x" + Long.toHexString(sessionId)
                + " is valid: " + valid);
    }
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:22,代码来源:Learner.java


示例5: commandRun

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
@Override
public void commandRun() {
    if (!isZKServerRunning()) {
        pw.println(ZK_NOT_SERVING);
    } else {
        pw.print("Zookeeper version: ");
        pw.println(Version.getFullVersion());
        if (zkServer instanceof ReadOnlyZooKeeperServer) {
            pw.println("READ-ONLY mode; serving only read-only clients");
        }
        if (len == FourLetterCommands.statCmd) {
            LOG.info("Stat command output");
            pw.println("Clients:");
            for(ServerCnxn c : factory.getConnections()){
                c.dumpConnectionInfo(pw, true);
                pw.println();
            }
            pw.println();
        }
        pw.print(zkServer.serverStats().toString());
        pw.print("Node count: ");
        pw.println(zkServer.getZKDatabase().getNodeCount());
    }
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:25,代码来源:StatCommand.java


示例6: testFourLetterWordsAllDisabledByDefault

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
@Test(timeout=30000)
public void testFourLetterWordsAllDisabledByDefault() throws Exception {
    stopServer();
    ServerCnxn.resetWhiteList();
    System.setProperty("zookeeper.4lw.commands.whitelist", "stat");
    startServer();

    // Default white list for 3.5.x is empty, so all command should fail.
    verifyAllCommandsFail();

    TestableZooKeeper zk = createClient();

    verifyAllCommandsFail();

    zk.getData("/", true, null);

    verifyAllCommandsFail();

    zk.close();

    verifyFuzzyMatch("stat", "Outstanding");
    verifyAllCommandsFail();
}
 
开发者ID:l294265421,项目名称:ZooKeeper,代码行数:24,代码来源:FourLetterWordsWhiteListTest.java


示例7: testFourLetterWordsEnableSomeCommands

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
@Test(timeout=30000)
public void testFourLetterWordsEnableSomeCommands() throws Exception {
    stopServer();
    ServerCnxn.resetWhiteList();
    System.setProperty("zookeeper.4lw.commands.whitelist", "stat, ruok, isro");
    startServer();
    // stat, ruok and isro are white listed.
    verifyFuzzyMatch("stat", "Outstanding");
    verifyExactMatch("ruok", "imok");
    verifyExactMatch("isro", "rw");

    // Rest of commands fail.
    verifyExactMatch("conf", generateExpectedMessage("conf"));
    verifyExactMatch("cons", generateExpectedMessage("cons"));
    verifyExactMatch("crst", generateExpectedMessage("crst"));
    verifyExactMatch("dump", generateExpectedMessage("dump"));
    verifyExactMatch("envi", generateExpectedMessage("envi"));
    verifyExactMatch("gtmk", generateExpectedMessage("gtmk"));
    verifyExactMatch("stmk", generateExpectedMessage("stmk"));
    verifyExactMatch("srst", generateExpectedMessage("srst"));
    verifyExactMatch("wchc", generateExpectedMessage("wchc"));
    verifyExactMatch("wchp", generateExpectedMessage("wchp"));
    verifyExactMatch("wchs", generateExpectedMessage("wchs"));
    verifyExactMatch("mntr", generateExpectedMessage("mntr"));
}
 
开发者ID:l294265421,项目名称:ZooKeeper,代码行数:26,代码来源:FourLetterWordsWhiteListTest.java


示例8: commandRun

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
@Override
public void commandRun() {
    if (zkServer == null) {
        pw.println(ZK_NOT_SERVING);
    } else {
        pw.print("Zookeeper version: ");
        pw.println(Version.getFullVersion());
        if (zkServer instanceof ReadOnlyZooKeeperServer) {
            pw.println("READ-ONLY mode; serving only read-only clients");
        }
        if (len == FourLetterCommands.statCmd) {
            LOG.info("Stat command output");
            pw.println("Clients:");
            for(ServerCnxn c : factory.getConnections()){
                c.dumpConnectionInfo(pw, true);
                pw.println();
            }
            pw.println();
        }
        pw.print(zkServer.serverStats().toString());
        pw.print("Node count: ");
        pw.println(zkServer.getZKDatabase().getNodeCount());
    }
}
 
开发者ID:sereca,项目名称:SecureKeeper,代码行数:25,代码来源:StatCommand.java


示例9: revalidateSession

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
@Override
protected void revalidateSession(ServerCnxn cnxn, long sessionId,
    int sessionTimeout) throws IOException {
    super.revalidateSession(cnxn, sessionId, sessionTimeout);
    try {
        // setowner as the leader itself, unless updated
        // via the follower handlers
        setOwner(sessionId, ServerCnxn.me);
    } catch (SessionExpiredException e) {
        // this is ok, it just means that the session revalidation failed.
    }
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:13,代码来源:LeaderZooKeeperServer.java


示例10: handleAuthentication

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
public KeeperException.Code
    handleAuthentication(ServerCnxn cnxn, byte[] authData)
{
    // Should never call this: SASL authentication is negotiated at session initiation.
    // TODO: consider substituting current implementation of direct ClientCnxn manipulation with
    // a call to this method (SASLAuthenticationProvider:handleAuthentication()) at session initiation.
    return KeeperException.Code.AUTHFAILED;

}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:10,代码来源:SASLAuthenticationProvider.java


示例11: handleAuthentication

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
public KeeperException.Code
    handleAuthentication(ServerCnxn cnxn, byte[] authData)
{
    String id = cnxn.getRemoteSocketAddress().getAddress().getHostAddress();
    cnxn.addAuthInfo(new Id(getScheme(), id));
    return KeeperException.Code.OK;
}
 
开发者ID:maoling,项目名称:fuck_zookeeper,代码行数:8,代码来源:IPAuthenticationProvider.java


示例12: revalidateSession

import org.apache.zookeeper.server.ServerCnxn; //导入依赖的package包/类
@Override
protected void revalidateSession(ServerCnxn cnxn, long sessionId,
        int sessionTimeout) throws IOException {
    if (upgradeableSessionTracker.isLocalSession(sessionId)) {
        super.revalidateSession(cnxn, sessionId, sessionTimeout);
    } else {
        getLearner().validateSession(cnxn, sessionId, sessionTimeout);
    }
}
 
开发者ID:didichuxing2,项目名称:https-github.com-apache-zookeeper,代码行数:10,代码来源:LearnerZooKeeperServer.java



注:本文中的org.apache.zookeeper.server.ServerCnxn类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java TransactionOptions类代码示例发布时间:2022-05-21
下一篇:
Java Mapper类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap