当前位置: 首页 > 工具软件 > jssmp > 使用案例 >

java smp_jssmp

高高雅
2023-12-01

软件简介

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();

 类似资料:

相关阅读

相关文章

相关问答