Java 版 SSMP 协议实现 jssmp

码农软件 · 软件分类 · 协议和规范 · 2019-10-12 20:29:31

软件介绍

jssmp 是 Java 版 SSMP 开源实现。

依赖:

  • JDK 1.8 or higher

  • netty 3.10+

  • slf4j 1.7+

  • guava 17+

客户端

// given: SSLEngine sslEngine;
SSMPClient c = new SSMPClient("localhost", 1234, new HashedWheelTimer(),
        new NioClientSocketChannelFactory(), () -> new SslHandler(sslEngine),
        e -> System.out.println("event: " + e));
c.connect(SSMPIdentifier.fromInternal("foo"),
        SSMPIdentifier.fromInternal("secret"), "NotARealSecret",
        new ConnectionListener() {
            @Override public void connected() { System.out.println("connected"); }
            @Override public void disconnected() { System.out.println("disconnected"); }
        });
SSMPResponse r = c.request(SSMPRequest.ucast(SSMPIdentifier.fromInternal("bar"),
        "Hello World!")).get();
System.out.println("response: " + r);

服务器端

// given: SSLEngine sslEngine;
SSMPServer s = new SSMPServer(new InetSocketAddress("localhost", 1234),
        new HashedWheelTimer(), new NioServerSocketChannelFactory(),
        () -> new SslHandler(sslEngine),
        new Authenticator() {
            @Override public boolean authenticate(SSMPIdentifier id, SSMPIdentifier scheme, String cred) {
                return scheme.toString().equals("secret") && cred.equals("NotARealSecret");
            }
            @Override public ChannelBuffer unauthorized() {
                return ChannelBuffers.wrappedBuffer("401 secret\n".getBytes(StandardCharsets.US_ASCII));
            }
        });
s.start();

本文地址:https://codercto.com/soft/d/16622.html

C陷阱与缺陷

C陷阱与缺陷

凯尼格 / 高巍 / 人民邮电出版社 / 2008-2-1 / 30.00元

作者以自己1985年在Bell实验室时发表的一篇论文为基础,结合自己的工作经验扩展成为这本对C程序员具有珍贵价值的经典著作。写作本书的出发点不是要批判C语言,而是要帮助C程序员绕过编程过程中的陷阱和障碍。.. 全书分为8章,分别从词法分析、语法语义、连接、库函数、预处理器、可移植性缺陷等几个方面分析了C编程中可能遇到的问题。最后,作者用一章的篇幅给出了若干具有实用价值的建议。.. 本书......一起来看看 《C陷阱与缺陷》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具