Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
Shardingsphere
提交
28b18d9d
Shardingsphere
项目概览
apache
/
Shardingsphere
通知
56
Star
3
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Shardingsphere
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
28b18d9d
编写于
8月 06, 2018
作者:
T
terrymanu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor MySQLResponseHandler.channelRead
上级
7875d463
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
38 addition
and
23 deletion
+38
-23
sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/netty/client/response/mysql/MySQLResponseHandler.java
...end/netty/client/response/mysql/MySQLResponseHandler.java
+38
-23
未找到文件。
sharding-proxy/src/main/java/io/shardingsphere/proxy/backend/netty/client/response/mysql/MySQLResponseHandler.java
浏览文件 @
28b18d9d
...
@@ -66,29 +66,21 @@ public final class MySQLResponseHandler extends ResponseHandler {
...
@@ -66,29 +66,21 @@ public final class MySQLResponseHandler extends ResponseHandler {
public
void
channelRead
(
final
ChannelHandlerContext
context
,
final
Object
message
)
{
public
void
channelRead
(
final
ChannelHandlerContext
context
,
final
Object
message
)
{
MySQLPacketPayload
payload
=
new
MySQLPacketPayload
((
ByteBuf
)
message
);
MySQLPacketPayload
payload
=
new
MySQLPacketPayload
((
ByteBuf
)
message
);
int
header
=
getHeader
(
payload
);
int
header
=
getHeader
(
payload
);
if
(
AuthType
.
UN_AUTH
==
authType
)
{
switch
(
authType
)
{
auth
(
context
,
payload
);
case
UN_AUTH:
authType
=
AuthType
.
AUTHING
;
auth
(
context
,
payload
);
}
else
if
(
AuthType
.
AUTHING
==
authType
)
{
return
;
if
(
OKPacket
.
HEADER
==
header
)
{
case
AUTHING:
okPacket
(
context
,
payload
);
authing
(
context
,
payload
,
header
);
authType
=
AuthType
.
AUTH_SUCCESS
;
return
;
}
else
{
case
AUTH_SUCCESS:
errPacket
(
context
,
payload
);
authSuccess
(
context
,
payload
,
header
);
authType
=
AuthType
.
AUTH_FAILED
;
return
;
}
case
AUTH_FAILED:
}
else
if
(
AuthType
.
AUTH_FAILED
==
authType
)
{
log
.
error
(
"mysql auth failed, cannot handle channel read message"
);
log
.
error
(
"mysql auth failed, cannot handle channel read message"
);
return
;
}
else
{
default
:
if
(
EofPacket
.
HEADER
==
header
)
{
throw
new
UnsupportedOperationException
(
authType
.
name
());
eofPacket
(
context
,
payload
);
}
else
if
(
OKPacket
.
HEADER
==
header
)
{
okPacket
(
context
,
payload
);
}
else
if
(
ErrPacket
.
HEADER
==
header
)
{
errPacket
(
context
,
payload
);
}
else
{
commonPacket
(
context
,
payload
);
}
}
}
}
}
...
@@ -115,6 +107,29 @@ public final class MySQLResponseHandler extends ResponseHandler {
...
@@ -115,6 +107,29 @@ public final class MySQLResponseHandler extends ResponseHandler {
}
finally
{
}
finally
{
payload
.
close
();
payload
.
close
();
}
}
authType
=
AuthType
.
AUTHING
;
}
private
void
authing
(
final
ChannelHandlerContext
context
,
final
MySQLPacketPayload
payload
,
final
int
header
)
{
if
(
OKPacket
.
HEADER
==
header
)
{
okPacket
(
context
,
payload
);
authType
=
AuthType
.
AUTH_SUCCESS
;
}
else
{
errPacket
(
context
,
payload
);
authType
=
AuthType
.
AUTH_FAILED
;
}
}
private
void
authSuccess
(
final
ChannelHandlerContext
context
,
final
MySQLPacketPayload
payload
,
final
int
header
)
{
if
(
EofPacket
.
HEADER
==
header
)
{
eofPacket
(
context
,
payload
);
}
else
if
(
OKPacket
.
HEADER
==
header
)
{
okPacket
(
context
,
payload
);
}
else
if
(
ErrPacket
.
HEADER
==
header
)
{
errPacket
(
context
,
payload
);
}
else
{
commonPacket
(
context
,
payload
);
}
}
}
@Override
@Override
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录