Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
ioc_sixiang_license
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zengtianlai3
ioc_sixiang_license
Commits
176c9dcb
Commit
176c9dcb
authored
Nov 08, 2022
by
AfirSraftGarrier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
格式
parent
aeb91d74
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
23 deletions
+5
-23
DeviceServerHandler.java
.../java/iot/sixiang/license/device/DeviceServerHandler.java
+5
-23
No files found.
license/src/main/java/iot/sixiang/license/device/DeviceServerHandler.java
View file @
176c9dcb
...
...
@@ -37,9 +37,6 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
@Override
protected
void
channelRead0
(
ChannelHandlerContext
ctx
,
Object
msg
)
{
// TODO Auto-generated method stub
SocketChannel
channel
=
(
SocketChannel
)
ctx
.
channel
();
InetSocketAddress
socketAddr
=
(
InetSocketAddress
)
ctx
.
channel
().
remoteAddress
();
String
remoteIp
=
socketAddr
.
getHostString
();
...
...
@@ -47,19 +44,13 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
DeviceProtocol
protocol
=
(
DeviceProtocol
)
msg
;
String
channelId
=
channel
.
id
().
asLongText
();
log
.
debug
(
"设备服务器,channelRead0:{},{}"
,
channelId
,
HexUtil
.
bytes2hex
(
protocol
.
getContent
()));
/*
TODO:
1.透传前先进行鉴权
2.鉴权通过后,创建桥接客户端,非鉴权消息全部放行
3.未鉴权的不能进行透传,强制下线
*/
/* TODO: 1.透传前先进行鉴权 2.鉴权通过后,创建桥接客户端,非鉴权消息全部放行 3.未鉴权的不能进行透传,强制下线 */
byte
cmd
=
protocol
.
getCmd
();
int
cmdInt
=
cmd
&
0xFF
;
boolean
auth
=
false
;
if
(
cmdInt
==
Consts
.
CMD_LICENSE
)
{
auth
=
handlerCheckAuth
(
channel
,
remoteIp
,
remotePort
,
protocol
);
}
else
{
auth
=
handlerCheckAuthStatus
(
channel
);
if
(
auth
)
{
...
...
@@ -67,7 +58,7 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
}
}
//TODO 以下为正式代码
//
TODO 以下为正式代码
if
(
auth
==
false
)
{
channel
.
close
();
}
...
...
@@ -75,21 +66,18 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
@Override
public
void
channelRegistered
(
ChannelHandlerContext
ctx
)
throws
Exception
{
// TODO Auto-generated method stub
super
.
channelRegistered
(
ctx
);
log
.
debug
(
"设备服务器,channelRegistered:{}"
,
ctx
.
channel
().
id
().
asLongText
());
}
@Override
public
synchronized
void
channelActive
(
ChannelHandlerContext
ctx
)
throws
Exception
{
// TODO Auto-generated method stub
super
.
channelActive
(
ctx
);
log
.
debug
(
"设备服务器,channelActive:{}"
,
ctx
.
channel
().
id
().
asLongText
());
}
@Override
public
void
channelInactive
(
ChannelHandlerContext
ctx
)
throws
Exception
{
// TODO Auto-generated method stub
super
.
channelInactive
(
ctx
);
SocketChannel
channel
=
(
SocketChannel
)
ctx
.
channel
();
String
channelId
=
channel
.
id
().
asLongText
();
...
...
@@ -103,23 +91,19 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
@Override
public
void
channelReadComplete
(
ChannelHandlerContext
ctx
)
throws
Exception
{
// TODO Auto-generated method stub
super
.
channelReadComplete
(
ctx
);
log
.
debug
(
"设备服务器,channelReadComplete:{}"
,
ctx
.
channel
().
id
().
asLongText
());
}
@Override
public
void
exceptionCaught
(
ChannelHandlerContext
ctx
,
Throwable
cause
)
throws
Exception
{
// TODO Auto-generated method stub
public
void
exceptionCaught
(
ChannelHandlerContext
ctx
,
Throwable
cause
)
throws
Exception
{
super
.
exceptionCaught
(
ctx
,
cause
);
log
.
debug
(
"设备服务器,exceptionCaught:{}"
,
ctx
.
channel
().
id
().
asLongText
());
ctx
.
close
();
}
private
boolean
handlerCheckAuth
(
SocketChannel
channel
,
String
remoteIp
,
int
remotePort
,
DeviceProtocol
protocol
)
{
//TODO 正式代码要放开
// TODO 正式代码要放开
LibHelper
libHelper
=
SpringUtil
.
getBean
(
LibHelper
.
class
);
byte
[]
bytes
=
libHelper
.
decodeExtendedPayload
(
protocol
.
getContent
(),
0
,
protocol
.
getContent
().
length
);
if
(
bytes
==
null
)
{
...
...
@@ -154,7 +138,7 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
DeviceManager
deviceManager
=
SpringUtil
.
getBean
(
DeviceManager
.
class
);
deviceManager
.
putSession
(
appId
,
session
);
//TODO 创建透传的客户端
//
TODO 创建透传的客户端
CreateForwarClientEvent
event
=
new
CreateForwarClientEvent
();
event
.
setAppId
(
appId
);
eventPublisher
.
publishEvent
(
event
);
...
...
@@ -175,6 +159,4 @@ public class DeviceServerHandler extends SimpleChannelInboundHandler<Object> {
forwardClientRequestEvent
.
setProtocol
(
protocol
);
eventPublisher
.
publishEvent
(
forwardClientRequestEvent
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment