Skip to content

Commit

Permalink
refactor: open hz code for being called
Browse files Browse the repository at this point in the history
  • Loading branch information
FGYFFFF committed Nov 18, 2022
1 parent d6b85fe commit beb9b72
Show file tree
Hide file tree
Showing 62 changed files with 121 additions and 103 deletions.
2 changes: 1 addition & 1 deletion .licenserc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,6 @@ header:

paths-ignore:
- pkg/common/testdata/**
- cmd/hz/internal/protobuf/api
- cmd/hz/internal_pkg/protobuf/api

comment: on-failure
41 changes: 30 additions & 11 deletions cmd/hz/internal/app/app.go → cmd/hz/app/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,17 @@ package app
import (
"errors"
"fmt"
"os"
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/config"
"github.com/cloudwego/hertz/cmd/hz/internal/generator"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/config"
"github.com/cloudwego/hertz/cmd/hz/generator"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/protobuf"
"github.com/cloudwego/hertz/cmd/hz/thrift"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
"github.com/urfave/cli/v2"
)

Expand All @@ -40,12 +44,12 @@ func New(c *cli.Context) error {
setLogVerbose(args.Verbose)
logs.Debugf("args: %#v\n", args)

err = generateLayout(args)
err = GenerateLayout(args)
if err != nil {
return cli.Exit(err, meta.GenerateLayoutError)
}

err = triggerPlugin(args)
err = TriggerPlugin(args)
if err != nil {
return cli.Exit(err, meta.PluginError)
}
Expand All @@ -67,7 +71,7 @@ func Update(c *cli.Context) error {
setLogVerbose(args.Verbose)
logs.Debugf("Args: %#v\n", args)

err = triggerPlugin(args)
err = TriggerPlugin(args)
if err != nil {
return cli.Exit(err, meta.PluginError)
}
Expand All @@ -88,14 +92,29 @@ func Model(c *cli.Context) error {
setLogVerbose(args.Verbose)
logs.Debugf("Args: %#v\n", args)

err = triggerPlugin(args)
err = TriggerPlugin(args)
if err != nil {
return cli.Exit(err, meta.PluginError)
}

return nil
}

func PluginMode() {
pluginName := filepath.Base(os.Args[0])
if util.IsWindows() {
pluginName = strings.TrimSuffix(pluginName, ".exe")
}
switch pluginName {
case meta.ThriftPluginName:
plugin := new(thrift.Plugin)
os.Exit(plugin.Run())
case meta.ProtocPluginName:
plugin := new(protobuf.Plugin)
os.Exit(plugin.Run())
}
}

func Init() *cli.App {
// flags
verboseFlag := cli.BoolFlag{Name: "verbose,vv", Usage: "turn on verbose mode", Destination: &globalArgs.Verbose}
Expand Down Expand Up @@ -233,7 +252,7 @@ func setLogVerbose(verbose bool) {
}
}

func generateLayout(args *config.Argument) error {
func GenerateLayout(args *config.Argument) error {
lg := &generator.LayoutGenerator{
TemplateGenerator: generator.TemplateGenerator{
OutputDir: args.OutDir,
Expand Down Expand Up @@ -292,7 +311,7 @@ func generateLayout(args *config.Argument) error {
return nil
}

func triggerPlugin(args *config.Argument) error {
func TriggerPlugin(args *config.Argument) error {
if len(args.IdlPaths) == 0 {
return nil
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ import (
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/urfave/cli/v2"
)

Expand Down
6 changes: 3 additions & 3 deletions cmd/hz/internal/config/cmd.go → cmd/hz/config/cmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ import (
"strings"
"syscall"

"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
)

func lookupTool(idlType string) (string, error) {
Expand Down
20 changes: 20 additions & 0 deletions cmd/hz/doc.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// Copyright 2022 CloudWeGo Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// Package "github.com/cloudwego/hertz/cmd/hz" contains packages for building the hz command line tool.
// APIs exported by packages under this directory do not promise any backward
// compatibility, so please do not rely on them.

package main
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import (
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/util"
)

type File struct {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@ import (
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
)

type HttpMethod struct {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import (
"io/ioutil"
"reflect"

"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/util"
"gopkg.in/yaml.v2"
)

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ import (
"strings"
"text/template"

"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/generator/model/golang"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/generator/model/golang"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
)

//---------------------------------Backend----------------------------------
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ import (
"testing"
"text/template"

"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/meta"
)

type StringValue struct {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ import (
"reflect"
"text/template"

"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
"gopkg.in/yaml.v2"
)

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import (
"sort"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/util"
)

type Router struct {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ import (
"strings"
"text/template"

"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
)

var DefaultDelimiters = [2]string{"{{", "}}"}
Expand Down
27 changes: 3 additions & 24 deletions cmd/hz/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,20 +18,14 @@ package main

import (
"os"
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/app"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/protobuf"
"github.com/cloudwego/hertz/cmd/hz/internal/thrift"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/app"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
)

func main() {
// run in plugin mode
pluginMode()
app.PluginMode()

// run in normal mode
Run()
Expand All @@ -48,18 +42,3 @@ func Run() {
logs.Errorf("%v\n", err)
}
}

func pluginMode() {
pluginName := filepath.Base(os.Args[0])
if util.IsWindows() {
pluginName = strings.TrimSuffix(pluginName, ".exe")
}
switch pluginName {
case meta.ThriftPluginName:
plugin := new(thrift.Plugin)
os.Exit(plugin.Run())
case meta.ProtocPluginName:
plugin := new(protobuf.Plugin)
os.Exit(plugin.Run())
}
}
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import (
"path/filepath"
"regexp"

"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
gv "github.com/hashicorp/go-version"
)

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
10 changes: 5 additions & 5 deletions cmd/hz/internal/protobuf/ast.go → cmd/hz/protobuf/ast.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ import (
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/generator"
"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/protobuf/api"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/generator"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/protobuf/api"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
"github.com/jhump/protoreflect/desc"
"google.golang.org/protobuf/types/descriptorpb"
)
Expand Down
12 changes: 6 additions & 6 deletions cmd/hz/internal/protobuf/plugin.go → cmd/hz/protobuf/plugin.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,12 +54,12 @@ import (
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/config"
"github.com/cloudwego/hertz/cmd/hz/internal/generator"
"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/config"
"github.com/cloudwego/hertz/cmd/hz/generator"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
gengo "google.golang.org/protobuf/cmd/protoc-gen-go/internal_gengo"
"google.golang.org/protobuf/compiler/protogen"
"google.golang.org/protobuf/proto"
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import (
"strings"
"testing"

"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/meta"
"google.golang.org/protobuf/proto"
"google.golang.org/protobuf/types/pluginpb"
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ import (
"fmt"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/jhump/protoreflect/desc"
"google.golang.org/protobuf/types/descriptorpb"
)
Expand Down
File renamed without changes.
10 changes: 5 additions & 5 deletions cmd/hz/internal/protobuf/tags.go → cmd/hz/protobuf/tags.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ import (
"strconv"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/config"
"github.com/cloudwego/hertz/cmd/hz/internal/generator"
"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/protobuf/api"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/config"
"github.com/cloudwego/hertz/cmd/hz/generator"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/protobuf/api"
"github.com/cloudwego/hertz/cmd/hz/util"
"google.golang.org/protobuf/proto"
"google.golang.org/protobuf/reflect/protoreflect"
"google.golang.org/protobuf/runtime/protoimpl"
Expand Down
File renamed without changes.
8 changes: 4 additions & 4 deletions cmd/hz/internal/thrift/ast.go → cmd/hz/thrift/ast.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ package thrift
import (
"fmt"

"github.com/cloudwego/hertz/cmd/hz/internal/generator"
"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/generator"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
"github.com/cloudwego/thriftgo/generator/golang/styles"
"github.com/cloudwego/thriftgo/parser"
)
Expand Down
File renamed without changes.
12 changes: 6 additions & 6 deletions cmd/hz/internal/thrift/plugin.go → cmd/hz/thrift/plugin.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,12 @@ import (
"path/filepath"
"strings"

"github.com/cloudwego/hertz/cmd/hz/internal/config"
"github.com/cloudwego/hertz/cmd/hz/internal/generator"
"github.com/cloudwego/hertz/cmd/hz/internal/generator/model"
"github.com/cloudwego/hertz/cmd/hz/internal/meta"
"github.com/cloudwego/hertz/cmd/hz/internal/util"
"github.com/cloudwego/hertz/cmd/hz/internal/util/logs"
"github.com/cloudwego/hertz/cmd/hz/config"
"github.com/cloudwego/hertz/cmd/hz/generator"
"github.com/cloudwego/hertz/cmd/hz/generator/model"
"github.com/cloudwego/hertz/cmd/hz/meta"
"github.com/cloudwego/hertz/cmd/hz/util"
"github.com/cloudwego/hertz/cmd/hz/util/logs"
"github.com/cloudwego/thriftgo/generator/golang/styles"
thriftgo_plugin "github.com/cloudwego/thriftgo/plugin"
)
Expand Down
Loading

0 comments on commit beb9b72

Please sign in to comment.