Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Phodal
Coca
提交
15622935
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,体验更适合开发者的 AI 搜索 >>
未验证
提交
15622935
编写于
11月 11, 2019
作者:
P
Phodal Huang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor: enable api output
上级
2ed5dbf4
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
17 addition
and
10 deletion
+17
-10
.gitignore
.gitignore
+1
-0
adapter/api/JavaApiApp.go
adapter/api/JavaApiApp.go
+7
-4
adapter/api/JavaApiListener.go
adapter/api/JavaApiListener.go
+3
-5
cmd/api.go
cmd/api.go
+6
-1
未找到文件。
.gitignore
浏览文件 @
15622935
...
...
@@ -55,3 +55,4 @@ vendor/
web/
bs.json
nodeInfos.json
apis.json
adapter/api/JavaApiApp.go
浏览文件 @
15622935
...
...
@@ -14,12 +14,13 @@ import (
)
var
parsedDeps
[]
JClassNode
var
allApis
[]
RestApi
type
JavaApiApp
struct
{
}
func
(
j
*
JavaApiApp
)
AnalysisPath
(
codeDir
string
,
depPath
string
)
[]
JClassNode
{
func
(
j
*
JavaApiApp
)
AnalysisPath
(
codeDir
string
,
depPath
string
)
[]
RestApi
{
parsedDeps
=
nil
file
:=
ReadFile
(
depPath
)
if
file
==
nil
{
...
...
@@ -43,11 +44,13 @@ func (j *JavaApiApp) AnalysisPath(codeDir string, depPath string) []JClassNode {
antlr
.
NewParseTreeWalker
()
.
Walk
(
listener
,
context
)
apis
:=
listener
.
getApis
()
fmt
.
Println
(
apis
)
apis
:=
listener
.
get
Class
Apis
()
allApis
=
append
(
allApis
,
apis
...
)
}
return
parsedDeps
fmt
.
Println
(
allApis
)
return
allApis
}
func
(
j
*
JavaApiApp
)
JavaFiles
(
codeDir
string
)
[]
string
{
...
...
adapter/api/JavaApiListener.go
浏览文件 @
15622935
package
api
import
(
"fmt"
"github.com/antlr/antlr4/runtime/Go/antlr"
"github.com/phodal/coca/adapter/models"
.
"github.com/phodal/coca/language/java"
...
...
@@ -119,7 +118,7 @@ func filterMethodCall(blockContext antlr.Tree) {
statement
:=
rangeStatement
.
GetChild
(
0
)
.
(
*
StatementContext
)
if
reflect
.
TypeOf
(
statement
.
GetChild
(
0
))
.
String
()
==
"*parser.ExpressionContext"
{
express
:=
statement
.
GetChild
(
0
)
.
(
*
ExpressionContext
)
fmt
.
Println
(
reflect
.
TypeOf
(
express
.
GetChild
(
0
))
.
String
(
))
reflect
.
TypeOf
(
express
.
GetChild
(
0
))
}
}
}
...
...
@@ -153,7 +152,7 @@ func buildRestApi(ctx *MethodDeclarationContext) {
localVars
[
paramValue
]
=
paramType
}
currentRestApi
.
Body
=
requestBodyClass
//currentRestApi.Body
hasEnterRestController
=
false
requestBodyClass
=
""
RestApis
=
append
(
RestApis
,
currentRestApi
)
...
...
@@ -161,9 +160,8 @@ func buildRestApi(ctx *MethodDeclarationContext) {
func
(
s
*
JavaApiListener
)
appendClasses
(
classes
[]
models
.
JClassNode
)
{
clz
=
classes
//fmt.Println(clz)
}
func
(
s
*
JavaApiListener
)
getApis
()
[]
RestApi
{
func
(
s
*
JavaApiListener
)
get
Class
Apis
()
[]
RestApi
{
return
RestApis
}
cmd/api.go
浏览文件 @
15622935
package
cmd
import
(
"encoding/json"
.
"github.com/phodal/coca/adapter/api"
.
"github.com/phodal/coca/utils"
"github.com/spf13/cobra"
)
...
...
@@ -15,7 +17,10 @@ var apiCmd *cobra.Command = &cobra.Command{
if
path
!=
""
{
app
:=
new
(
JavaApiApp
)
app
.
AnalysisPath
(
path
,
dependence
)
restApis
:=
app
.
AnalysisPath
(
path
,
dependence
)
cModel
,
_
:=
json
.
MarshalIndent
(
restApis
,
""
,
"
\t
"
)
WriteToFile
(
"apis.json"
,
string
(
cModel
))
}
},
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录