Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Phodal
Coca
提交
a5e6621c
C
Coca
项目概览
Phodal
/
Coca
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
Coca
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
a5e6621c
编写于
1月 07, 2020
作者:
P
Phodal Huang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor: extract api method
上级
5b76973a
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
28 addition
and
23 deletion
+28
-23
core/infrastructure/ast/api/java_api_listener.go
core/infrastructure/ast/api/java_api_listener.go
+28
-23
未找到文件。
core/infrastructure/ast/api/java_api_listener.go
浏览文件 @
a5e6621c
...
...
@@ -13,7 +13,7 @@ var jClassNodes []models.JClassNode
var
hasEnterClass
=
false
var
isSpringRestController
=
false
var
hasEnterRestController
=
false
var
baseApiUrl
Name
string
var
baseApiUrl
string
var
localVars
=
make
(
map
[
string
]
string
)
var
currentRestApi
models
.
RestApi
...
...
@@ -88,36 +88,20 @@ func (s *JavaApiListener) EnterAnnotation(ctx *parser.AnnotationContext) {
}
if
!
hasEnterClass
{
// 类声明处的注解
if
annotationName
==
"RequestMapping"
{
if
ctx
.
ElementValuePairs
()
!=
nil
{
allValuePair
:=
ctx
.
ElementValuePairs
()
.
(
*
parser
.
ElementValuePairsContext
)
.
AllElementValuePair
()
for
_
,
valuePair
:=
range
allValuePair
{
pair
:=
valuePair
.
(
*
parser
.
ElementValuePairContext
)
if
pair
.
IDENTIFIER
()
.
GetText
()
==
"value"
{
text
:=
pair
.
ElementValue
()
.
GetText
()
baseApiUrlName
=
text
[
1
:
len
(
text
)
-
1
]
}
}
}
else
if
ctx
.
ElementValue
()
!=
nil
{
text
:=
ctx
.
ElementValue
()
.
GetText
()
baseApiUrlName
=
text
[
1
:
len
(
text
)
-
1
]
}
else
{
baseApiUrlName
=
"/"
}
}
buildBaseApiUrlString
(
annotationName
,
ctx
)
}
if
!
(
annotationName
==
"RequestMapping"
||
annotationName
==
"GetMapping"
||
annotationName
==
"PutMapping"
||
annotationName
==
"PostMapping"
||
annotationName
==
"DeleteMapping"
)
{
notApi
:=
annotationName
==
"RequestMapping"
||
annotationName
==
"GetMapping"
||
annotationName
==
"PutMapping"
||
annotationName
==
"PostMapping"
||
annotationName
==
"DeleteMapping"
if
!
notApi
{
return
}
hasEnterRestController
=
true
uri
:=
""
if
ctx
.
ElementValue
()
!=
nil
{
uri
=
baseApiUrl
Name
+
ctx
.
ElementValue
()
.
GetText
()
uri
=
baseApiUrl
+
ctx
.
ElementValue
()
.
GetText
()
}
else
{
uri
=
baseApiUrl
Name
uri
=
baseApiUrl
}
uriRemoveQuote
:=
strings
.
ReplaceAll
(
uri
,
"
\"
"
,
""
)
...
...
@@ -140,12 +124,33 @@ func (s *JavaApiListener) EnterAnnotation(ctx *parser.AnnotationContext) {
}
if
pair
.
IDENTIFIER
()
.
GetText
()
==
"value"
{
text
:=
pair
.
ElementValue
()
.
GetText
()
currentRestApi
.
Uri
=
baseApiUrl
Name
+
text
[
1
:
len
(
text
)
-
1
]
currentRestApi
.
Uri
=
baseApiUrl
+
text
[
1
:
len
(
text
)
-
1
]
}
}
}
}
func
buildBaseApiUrlString
(
annotationName
string
,
ctx
*
parser
.
AnnotationContext
)
{
// 类声明处的注解
if
annotationName
==
"RequestMapping"
{
if
ctx
.
ElementValuePairs
()
!=
nil
{
allValuePair
:=
ctx
.
ElementValuePairs
()
.
(
*
parser
.
ElementValuePairsContext
)
.
AllElementValuePair
()
for
_
,
valuePair
:=
range
allValuePair
{
pair
:=
valuePair
.
(
*
parser
.
ElementValuePairContext
)
if
pair
.
IDENTIFIER
()
.
GetText
()
==
"value"
{
text
:=
pair
.
ElementValue
()
.
GetText
()
baseApiUrl
=
text
[
1
:
len
(
text
)
-
1
]
}
}
}
else
if
ctx
.
ElementValue
()
!=
nil
{
text
:=
ctx
.
ElementValue
()
.
GetText
()
baseApiUrl
=
text
[
1
:
len
(
text
)
-
1
]
}
else
{
baseApiUrl
=
"/"
}
}
}
func
addApiMethod
(
annotationName
string
)
{
switch
annotationName
{
case
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录