From cae177e7f4aaf04c3b297fea71d4c210a405c8cb Mon Sep 17 00:00:00 2001 From: Phodal Huang Date: Tue, 31 Dec 2019 19:23:20 +0800 Subject: [PATCH] refactor: [ddd] extract vars --- cmd/api.go | 3 +-- cmd/arch.go | 3 +-- cmd/cmd_util/deps_loader.go | 19 +++++++++++++++++++ .../ast => cmd/cmd_util}/ident_helper.go | 11 +++++------ cmd/cmd_util/{file.go => osexec.go} | 14 -------------- cmd/tbs.go | 3 +-- core/context/tbs/tbs_app_test.go | 4 ++-- 7 files changed, 29 insertions(+), 28 deletions(-) create mode 100644 cmd/cmd_util/deps_loader.go rename {core/infrastructure/ast => cmd/cmd_util}/ident_helper.go (76%) rename cmd/cmd_util/{file.go => osexec.go} (55%) diff --git a/cmd/api.go b/cmd/api.go index 20396fe..d2f4dcc 100644 --- a/cmd/api.go +++ b/cmd/api.go @@ -8,7 +8,6 @@ import ( "github.com/phodal/coca/core/context/api" "github.com/phodal/coca/core/context/call" "github.com/phodal/coca/core/domain" - "github.com/phodal/coca/core/infrastructure/ast" "github.com/spf13/cobra" "log" "os" @@ -31,7 +30,7 @@ var ( apiCmdConfig ApiCmdConfig restApis []domain.RestApi - identifiers = ast.LoadIdentify(apiCmdConfig.DependencePath) + identifiers = cmd_util.LoadIdentify(apiCmdConfig.DependencePath) identifiersMap = domain.BuildIdentifierMap(identifiers) diMap = domain.BuildDIMap(identifiers, identifiersMap) ) diff --git a/cmd/arch.go b/cmd/arch.go index 113d7a5..1f52067 100644 --- a/cmd/arch.go +++ b/cmd/arch.go @@ -7,7 +7,6 @@ import ( "github.com/phodal/coca/core/context/arch" "github.com/phodal/coca/core/context/arch/tequila" "github.com/phodal/coca/core/domain" - "github.com/phodal/coca/core/infrastructure/ast" "github.com/spf13/cobra" "os" "strings" @@ -27,7 +26,7 @@ var archCmd = &cobra.Command{ Short: "project package visualization", Long: ``, Run: func(cmd *cobra.Command, args []string) { - identifiers = ast.LoadIdentify(apiCmdConfig.DependencePath) + identifiers = cmd_util.LoadIdentify(apiCmdConfig.DependencePath) identifiersMap = domain.BuildIdentifierMap(identifiers) parsedDeps := cmd_util.GetDepsFromJson(archCmdConfig.DependencePath) diff --git a/cmd/cmd_util/deps_loader.go b/cmd/cmd_util/deps_loader.go new file mode 100644 index 0000000..9ee1f93 --- /dev/null +++ b/cmd/cmd_util/deps_loader.go @@ -0,0 +1,19 @@ +package cmd_util + +import ( + "encoding/json" + "github.com/phodal/coca/core/domain" + "log" +) + +func GetDepsFromJson(depPath string) []domain.JClassNode { + var parsedDeps []domain.JClassNode + file := ReadFile(depPath) + if file == nil { + log.Fatal("lost file:" + depPath) + } + _ = json.Unmarshal(file, &parsedDeps) + + return parsedDeps +} + diff --git a/core/infrastructure/ast/ident_helper.go b/cmd/cmd_util/ident_helper.go similarity index 76% rename from core/infrastructure/ast/ident_helper.go rename to cmd/cmd_util/ident_helper.go index 47f59ea..a887993 100644 --- a/core/infrastructure/ast/ident_helper.go +++ b/cmd/cmd_util/ident_helper.go @@ -1,8 +1,7 @@ -package ast +package cmd_util import ( "encoding/json" - "github.com/phodal/coca/cmd/cmd_util" "github.com/phodal/coca/core/context/analysis" "github.com/phodal/coca/core/domain" ) @@ -10,13 +9,13 @@ import ( func LoadIdentify(importPath string) []domain.JIdentifier { var identifiers []domain.JIdentifier - apiContent := cmd_util.ReadCocaFile("identify.json") + apiContent := ReadCocaFile("identify.json") if apiContent == nil || string(apiContent) == "null" { identifierApp := new(analysis.JavaIdentifierApp) ident := identifierApp.AnalysisPath(importPath) identModel, _ := json.MarshalIndent(ident, "", "\t") - cmd_util.WriteToCocaFile("identify.json", string(identModel)) + WriteToCocaFile("identify.json", string(identModel)) return *&ident } @@ -28,14 +27,14 @@ func LoadIdentify(importPath string) []domain.JIdentifier { func LoadTestIdentify(files []string) []domain.JIdentifier { var identifiers []domain.JIdentifier - apiContent := cmd_util.ReadCocaFile("tidentify.json") + apiContent := ReadCocaFile("tidentify.json") if apiContent == nil || string(apiContent) == "null" { identifierApp := analysis.NewJavaIdentifierApp() ident := identifierApp.AnalysisFiles(files) identModel, _ := json.MarshalIndent(ident, "", "\t") - cmd_util.WriteToCocaFile("tidentify.json", string(identModel)) + WriteToCocaFile("tidentify.json", string(identModel)) return *&ident } diff --git a/cmd/cmd_util/file.go b/cmd/cmd_util/osexec.go similarity index 55% rename from cmd/cmd_util/file.go rename to cmd/cmd_util/osexec.go index e7fda9a..24a3d7c 100644 --- a/cmd/cmd_util/file.go +++ b/cmd/cmd_util/osexec.go @@ -1,25 +1,11 @@ package cmd_util import ( - "encoding/json" "fmt" "github.com/phodal/coca/cmd/config" - "github.com/phodal/coca/core/domain" - "log" "os/exec" ) -func GetDepsFromJson(depPath string) []domain.JClassNode { - var parsedDeps []domain.JClassNode - file := ReadFile(depPath) - if file == nil { - log.Fatal("lost file:" + depPath) - } - _ = json.Unmarshal(file, &parsedDeps) - - return parsedDeps -} - func ConvertToSvg(name string) { cmd := exec.Command("dot", []string{"-Tsvg", config.CocaConfig.ReporterPath + "/" + name + ".dot", "-o", config.CocaConfig.ReporterPath + "/" + name + ".svg"}...) _, err := cmd.CombinedOutput() diff --git a/cmd/tbs.go b/cmd/tbs.go index 744472e..da98a24 100644 --- a/cmd/tbs.go +++ b/cmd/tbs.go @@ -9,7 +9,6 @@ import ( "github.com/phodal/coca/core/context/analysis" "github.com/phodal/coca/core/context/tbs" "github.com/phodal/coca/core/domain" - "github.com/phodal/coca/core/infrastructure/ast" "github.com/spf13/cobra" "os" "strconv" @@ -32,7 +31,7 @@ var tbsCmd = &cobra.Command{ files := coca_file.GetJavaTestFiles(tbsCmdConfig.Path) var identifiers []domain.JIdentifier - identifiers = ast.LoadTestIdentify(files) + identifiers = cmd_util.LoadTestIdentify(files) identifiersMap := domain.BuildIdentifierMap(identifiers) var classes []string = nil diff --git a/core/context/tbs/tbs_app_test.go b/core/context/tbs/tbs_app_test.go index f5c6267..756f312 100644 --- a/core/context/tbs/tbs_app_test.go +++ b/core/context/tbs/tbs_app_test.go @@ -2,10 +2,10 @@ package tbs import ( . "github.com/onsi/gomega" + "github.com/phodal/coca/cmd/cmd_util" "github.com/phodal/coca/core/adapter/coca_file" "github.com/phodal/coca/core/context/analysis" "github.com/phodal/coca/core/domain" - "github.com/phodal/coca/core/infrastructure/ast" "path/filepath" "testing" ) @@ -115,7 +115,7 @@ func buildTbsResult(codePath string) []TestBadSmell { files := coca_file.GetJavaTestFiles(codePath) var identifiers []domain.JIdentifier - identifiers = ast.LoadTestIdentify(files) + identifiers = cmd_util.LoadTestIdentify(files) identifiersMap := domain.BuildIdentifierMap(identifiers) var classes []string = nil -- GitLab