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

Java HelloMessage类代码示例

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

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



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

示例1: handshake

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
protected void handshake(HelloMessage request, Channel channel) {
    try {
        switch (getAuthScheme()) {
            case CHALLENGE_RESPONSE:
                handshakeChallengeResponse(request, channel);
                break;
            case NO_AUTH:
                // shouldn't get here
                break;
        }
    } catch (AuthException e) {
        logger.warn("[{}->{}] Failed to authenticate connection: {}",
                    new Object[]{getLocalNodeIdString(), 
                                 getRemoteNodeIdString(), 
                                 e.getMessage()});
        channel.writeAndFlush(getError(request.getHeader().getTransactionId(), 
                               e, MessageType.HELLO));
        channel.close();
    }
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:21,代码来源:AbstractRPCChannelHandler.java


示例2: handleHello

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
    remoteNodeId = hello.getNodeId();
    
    org.sdnplatform.sync.thrift.Node n = 
            new org.sdnplatform.sync.thrift.Node();
    n.setHostname(bootstrap.localNode.getHostname());
    n.setPort(bootstrap.localNode.getPort());
    if (bootstrap.localNode.getNodeId() >= 0)
        n.setNodeId(bootstrap.localNode.getNodeId());
    if (bootstrap.localNode.getDomainId() >= 0)
        n.setDomainId(bootstrap.localNode.getDomainId());
    
    ClusterJoinRequestMessage cjrm = new ClusterJoinRequestMessage();
    AsyncMessageHeader header = new AsyncMessageHeader();
    header.setTransactionId(bootstrap.transactionId.getAndIncrement());
    cjrm.setHeader(header);
    cjrm.setNode(n);
    SyncMessage bsm = 
            new SyncMessage(MessageType.CLUSTER_JOIN_REQUEST);
    bsm.setClusterJoinRequest(cjrm);
    channel.writeAndFlush(bsm);
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:24,代码来源:BootstrapChannelHandler.java


示例3: handshake

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@LogMessageDoc(level="WARN",
               message="Failed to authenticate connection from {remote}: {message}",
               explanation="Challenge/Response authentication failed",
               recommendation="Check the included error message, and " + 
                       "verify the shared secret is correctly-configured")
protected void handshake(HelloMessage request, Channel channel) {
    try {
        switch (getAuthScheme()) {
            case CHALLENGE_RESPONSE:
                handshakeChallengeResponse(request, channel);
                break;
            case NO_AUTH:
                // shouldn't get here
                break;
        }
    } catch (AuthException e) {
        logger.warn("[{}->{}] Failed to authenticate connection: {}",
                    new Object[]{getLocalNodeIdString(), 
                                 getRemoteNodeIdString(), 
                                 e.getMessage()});
        channel.write(getError(request.getHeader().getTransactionId(), 
                               e, MessageType.HELLO));
        channel.close();
    }
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:26,代码来源:AbstractRPCChannelHandler.java


示例4: handleHello

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
    remoteNodeId = hello.getNodeId();
    
    org.sdnplatform.sync.thrift.Node n = 
            new org.sdnplatform.sync.thrift.Node();
    n.setHostname(bootstrap.localNode.getHostname());
    n.setPort(bootstrap.localNode.getPort());
    if (bootstrap.localNode.getNodeId() >= 0)
        n.setNodeId(bootstrap.localNode.getNodeId());
    if (bootstrap.localNode.getDomainId() >= 0)
        n.setDomainId(bootstrap.localNode.getDomainId());
    
    ClusterJoinRequestMessage cjrm = new ClusterJoinRequestMessage();
    AsyncMessageHeader header = new AsyncMessageHeader();
    header.setTransactionId(bootstrap.transactionId.getAndIncrement());
    cjrm.setHeader(header);
    cjrm.setNode(n);
    SyncMessage bsm = 
            new SyncMessage(MessageType.CLUSTER_JOIN_REQUEST);
    bsm.setClusterJoinRequest(cjrm);
    channel.write(bsm);
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:24,代码来源:BootstrapChannelHandler.java


示例5: handshake

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
protected void handshake(HelloMessage request, Channel channel) {
    try {
        switch (getAuthScheme()) {
            case CHALLENGE_RESPONSE:
                handshakeChallengeResponse(request, channel);
                break;
            case NO_AUTH:
                // shouldn't get here
                break;
        }
    } catch (AuthException e) {
        logger.warn("[{}->{}] Failed to authenticate connection: {}",
                    new Object[]{getLocalNodeIdString(),
                                 getRemoteNodeIdString(),
                                 e.getMessage()});
        channel.writeAndFlush(getError(request.getHeader().getTransactionId(),
                               e, MessageType.HELLO));
        channel.close();
    }
}
 
开发者ID:zhenshengcai,项目名称:floodlight-hardware,代码行数:21,代码来源:AbstractRPCChannelHandler.java


示例6: handleHello

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
    remoteNodeId = hello.getNodeId();

    org.sdnplatform.sync.thrift.Node n =
            new org.sdnplatform.sync.thrift.Node();
    n.setHostname(bootstrap.localNode.getHostname());
    n.setPort(bootstrap.localNode.getPort());
    if (bootstrap.localNode.getNodeId() >= 0)
        n.setNodeId(bootstrap.localNode.getNodeId());
    if (bootstrap.localNode.getDomainId() >= 0)
        n.setDomainId(bootstrap.localNode.getDomainId());

    ClusterJoinRequestMessage cjrm = new ClusterJoinRequestMessage();
    AsyncMessageHeader header = new AsyncMessageHeader();
    header.setTransactionId(bootstrap.transactionId.getAndIncrement());
    cjrm.setHeader(header);
    cjrm.setNode(n);
    SyncMessage bsm =
            new SyncMessage(MessageType.CLUSTER_JOIN_REQUEST);
    bsm.setClusterJoinRequest(cjrm);
    channel.writeAndFlush(bsm);
}
 
开发者ID:zhenshengcai,项目名称:floodlight-hardware,代码行数:24,代码来源:BootstrapChannelHandler.java


示例7: handshake

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
protected void handshake(HelloMessage request, Channel channel) {
    try {
        switch (getAuthScheme()) {
            case CHALLENGE_RESPONSE:
                handshakeChallengeResponse(request, channel);
                break;
            case NO_AUTH:
                // shouldn't get here
                break;
        }
    } catch (AuthException e) {
        logger.warn("[{}->{}] Failed to authenticate connection: {}",
                    new Object[]{getLocalNodeIdString(), 
                                 getRemoteNodeIdString(), 
                                 e.getMessage()});
        channel.write(getError(request.getHeader().getTransactionId(), 
                               e, MessageType.HELLO));
        channel.close();
    }
}
 
开发者ID:rhoybeen,项目名称:floodlightLB,代码行数:21,代码来源:AbstractRPCChannelHandler.java


示例8: channelActive

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@Override
public void channelActive(ChannelHandlerContext ctx) throws Exception {
    channelState = ChannelState.CONNECTED;

    HelloMessage m = new HelloMessage();
    if (getLocalNodeId() != null)
        m.setNodeId(getLocalNodeId());
    AsyncMessageHeader header = new AsyncMessageHeader();
    header.setTransactionId(getTransactionId());
    m.setHeader(header);
    switch (getAuthScheme()) {
        case NO_AUTH:
            channelState = ChannelState.AUTHENTICATED;
            m.setAuthScheme(org.sdnplatform.sync.thrift.
                            AuthScheme.NO_AUTH);
            break;
        case CHALLENGE_RESPONSE:
            AuthChallengeResponse cr = new AuthChallengeResponse();
            cr.setChallenge(generateChallenge());
            m.setAuthScheme(org.sdnplatform.sync.thrift.
                            AuthScheme.CHALLENGE_RESPONSE);
            m.setAuthChallengeResponse(cr);
            break;
    }
    SyncMessage bsm = new SyncMessage(MessageType.HELLO);
    bsm.setHello(m);
    ctx.channel().writeAndFlush(bsm);
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:29,代码来源:AbstractRPCChannelHandler.java


示例9: handshakeChallengeResponse

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
protected void handshakeChallengeResponse(HelloMessage request,
                                          Channel channel) 
                                                  throws AuthException {
    AuthChallengeResponse cr = request.getAuthChallengeResponse();
    if (cr == null) {
        throw new AuthException("No authentication data in " + 
                "handshake message");
    }
    if (cr.isSetResponse()) {
        authenticateResponse(currentChallenge, cr.getResponse());
        currentChallenge = null;
        channelState = ChannelState.AUTHENTICATED;
        handleHello(request, channel);
    } else if (cr.isSetChallenge()) {
        HelloMessage m = new HelloMessage();
        if (getLocalNodeId() != null)
            m.setNodeId(getLocalNodeId());
        AsyncMessageHeader header = new AsyncMessageHeader();
        header.setTransactionId(getTransactionId());
        m.setHeader(header);
        SyncMessage bsm = new SyncMessage(MessageType.HELLO);
        bsm.setHello(m);

        AuthChallengeResponse reply = new AuthChallengeResponse();
        reply.setResponse(generateResponse(cr.getChallenge()));
        m.setAuthChallengeResponse(reply);
        channel.writeAndFlush(bsm);
    } else {
        throw new AuthException("No authentication data in " + 
                "handshake message");
    }
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:33,代码来源:AbstractRPCChannelHandler.java


示例10: handleHello

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@Override
protected void handleHello(HelloMessage hello, Channel channel) {
    syncManager.remoteNodeId = hello.getNodeId();
    syncManager.ready = true;
    synchronized (syncManager.readyNotify) {
        syncManager.notifyAll();
    }
}
 
开发者ID:xuraylei,项目名称:fresco_floodlight,代码行数:9,代码来源:RemoteSyncChannelHandler.java


示例11: channelConnected

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
@Override
public void channelConnected(ChannelHandlerContext ctx,
                             ChannelStateEvent e) throws Exception {
    channelState = ChannelState.CONNECTED;

    HelloMessage m = new HelloMessage();
    if (getLocalNodeId() != null)
        m.setNodeId(getLocalNodeId());
    AsyncMessageHeader header = new AsyncMessageHeader();
    header.setTransactionId(getTransactionId());
    m.setHeader(header);
    switch (getAuthScheme()) {
        case NO_AUTH:
            channelState = ChannelState.AUTHENTICATED;
            m.setAuthScheme(org.sdnplatform.sync.thrift.
                            AuthScheme.NO_AUTH);
            break;
        case CHALLENGE_RESPONSE:
            AuthChallengeResponse cr = new AuthChallengeResponse();
            cr.setChallenge(generateChallenge());
            m.setAuthScheme(org.sdnplatform.sync.thrift.
                            AuthScheme.CHALLENGE_RESPONSE);
            m.setAuthChallengeResponse(cr);
            break;
    }
    SyncMessage bsm = new SyncMessage(MessageType.HELLO);
    bsm.setHello(m);
    ctx.getChannel().write(bsm);
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:30,代码来源:AbstractRPCChannelHandler.java


示例12: handshakeChallengeResponse

import org.sdnplatform.sync.thrift.HelloMessage; //导入依赖的package包/类
protected void handshakeChallengeResponse(HelloMessage request,
                                          Channel channel) 
                                                  throws AuthException {
    AuthChallengeResponse cr = request.getAuthChallengeResponse();
    if (cr == null) {
        throw new AuthException("No authentication data in " + 
                "handshake message");
    }
    if (cr.isSetResponse()) {
        authenticateResponse(currentChallenge, cr.getResponse());
        currentChallenge = null;
        channelState = ChannelState.AUTHENTICATED;
        handleHello(request, channel);
    } else if (cr.isSetChallenge()) {
        HelloMessage m = new HelloMessage();
        if (getLocalNodeId() != null)
            m.setNodeId(getLocalNodeId());
        AsyncMessageHeader header = new AsyncMessageHeader();
        header.setTransactionId(getTransactionId());
        m.setHeader(header);
        SyncMessage bsm = new SyncMessage(MessageType.HELLO);
        bsm.setHello(m);

        AuthChallengeResponse reply = new AuthChallengeResponse();
        reply.setResponse(generateResponse(cr.getChallenge()));
        m.setAuthChallengeResponse(reply);
        channel.write(bsm);
    } else {
        throw new AuthException("No authentication data in " + 
                "handshake message");
    }
}
 
开发者ID:nsg-ethz,项目名称:iTAP-controller,代码行数:33,代码来源:AbstractRPCChannelHandler.java



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
Java Giant类代码示例发布时间:2022-05-21
下一篇:
Java Factory类代码示例发布时间: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