Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

style & build & docs 格式化代码并且在许可证功能内新增自动格式化代码功能 #26

Merged
merged 2 commits into from
Sep 20, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ go generate ./...

#### license

用于自动新增go代码文件中许可证
用于自动新增go代码文件中许可证并使用gofmt -s -w格式化代码

```bash
go run tools/license/main.go
Expand Down
6 changes: 3 additions & 3 deletions cmd/datax/tools/wizard.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ import (
coreconst "github.com/Breeze0806/go-etl/datax/common/config/core"
)

//Wizard 配置向导工具
// Wizard 配置向导工具
type Wizard struct {
dataSourceFile string
csvFile string
}

//NewWizard 根据数据源文件dataSourceFile,源目的文件csvFile生成配置向导工具
// NewWizard 根据数据源文件dataSourceFile,源目的文件csvFile生成配置向导工具
func NewWizard(dataSourceFile, csvFile string) (w *Wizard) {
w = &Wizard{
dataSourceFile: dataSourceFile,
Expand All @@ -43,7 +43,7 @@ func NewWizard(dataSourceFile, csvFile string) (w *Wizard) {
return
}

//GenerateConfigsAndScripts 生成配置文件集和执行脚本
// GenerateConfigsAndScripts 生成配置文件集和执行脚本
func (w *Wizard) GenerateConfigsAndScripts() (err error) {
var dataSource *config.JSON
if dataSource, err = config.NewJSONFromFile(w.dataSourceFile); err != nil {
Expand Down
156 changes: 85 additions & 71 deletions config/json.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,26 +12,26 @@
// See the License for the specific language governing permissions and
// limitations under the License.

//Package config 提供JSON配置
// Package config 提供JSON配置
package config

import (
"github.com/Breeze0806/go/encoding"
)

//JSON JSON格式配置文件
// JSON JSON格式配置文件
type JSON struct {
*encoding.JSON
}

//NewJSONFromEncodingJSON 从编码JSON j中获取JSON
// NewJSONFromEncodingJSON 从编码JSON j中获取JSON
func NewJSONFromEncodingJSON(j *encoding.JSON) *JSON {
return &JSON{
JSON: j,
}
}

//NewJSONFromString 从字符串s 获取json配置 ,并在json格式错误时返回错误
// NewJSONFromString 从字符串s 获取json配置 ,并在json格式错误时返回错误
func NewJSONFromString(s string) (*JSON, error) {
JSON, err := encoding.NewJSONFromString(s)
if err != nil {
Expand All @@ -40,7 +40,7 @@ func NewJSONFromString(s string) (*JSON, error) {
return NewJSONFromEncodingJSON(JSON), nil
}

//NewJSONFromBytes 从字节流b 获取json配置 ,并在json格式错误时返回错误
// NewJSONFromBytes 从字节流b 获取json配置 ,并在json格式错误时返回错误
func NewJSONFromBytes(b []byte) (*JSON, error) {
JSON, err := encoding.NewJSONFromBytes(b)
if err != nil {
Expand All @@ -49,8 +49,8 @@ func NewJSONFromBytes(b []byte) (*JSON, error) {
return NewJSONFromEncodingJSON(JSON), nil
}

//NewJSONFromFile 从文件名为filename的文件中获取json配置
//并在json格式错误或者读取文件错误时返回错误
// NewJSONFromFile 从文件名为filename的文件中获取json配置
// 并在json格式错误或者读取文件错误时返回错误
func NewJSONFromFile(filename string) (*JSON, error) {
JSON, err := encoding.NewJSONFromFile(filename)
if err != nil {
Expand All @@ -59,16 +59,18 @@ func NewJSONFromFile(filename string) (*JSON, error) {
return NewJSONFromEncodingJSON(JSON), nil
}

//GetConfig 获取path路径对应的值配置文件,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetConfig 获取path路径对应的值配置文件,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是json结构或者不存在,就会返回错误
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是json结构或者不存在,就会返回错误
func (j *JSON) GetConfig(path string) (*JSON, error) {
JSON, err := j.GetJSON(path)
if err != nil {
Expand All @@ -77,84 +79,94 @@ func (j *JSON) GetConfig(path string) (*JSON, error) {
return NewJSONFromEncodingJSON(JSON), nil
}

//GetBoolOrDefaullt 获取path路径对应的BOOL值,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetBoolOrDefaullt 获取path路径对应的BOOL值,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是int64或者不存在,就会返回defaultValue
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是int64或者不存在,就会返回defaultValue
func (j *JSON) GetBoolOrDefaullt(path string, defaultValue bool) bool {
if v, err := j.GetBool(path); err == nil {
return v
}
return defaultValue
}

//GetInt64OrDefaullt 获取path路径对应的int64值,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetInt64OrDefaullt 获取path路径对应的int64值,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是int64或者不存在,就会返回defaultValue
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是int64或者不存在,就会返回defaultValue
func (j *JSON) GetInt64OrDefaullt(path string, defaultValue int64) int64 {
if v, err := j.GetInt64(path); err == nil {
return v
}
return defaultValue
}

//GetFloat64OrDefaullt 获取path路径对应的float64值,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetFloat64OrDefaullt 获取path路径对应的float64值,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是float64或者不存在,就会返回defaultValue
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是float64或者不存在,就会返回defaultValue
func (j *JSON) GetFloat64OrDefaullt(path string, defaultValue float64) float64 {
if v, err := j.GetFloat64(path); err == nil {
return v
}
return defaultValue
}

//GetStringOrDefaullt 获取path路径对应的字符串值,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetStringOrDefaullt 获取path路径对应的字符串值,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是字符串或者不存在,就会返回defaultValue
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是字符串或者不存在,就会返回defaultValue
func (j *JSON) GetStringOrDefaullt(path string, defaultValue string) string {
if v, err := j.JSON.GetString(path); err == nil {
return v
}
return defaultValue
}

//GetConfigArray 获取path路径对应的配置数组,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetConfigArray 获取path路径对应的配置数组,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是配置数组或者不存在,就会返回错误
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是配置数组或者不存在,就会返回错误
func (j *JSON) GetConfigArray(path string) ([]*JSON, error) {
a, err := j.JSON.GetArray(path)
if err != nil {
Expand All @@ -170,16 +182,18 @@ func (j *JSON) GetConfigArray(path string) ([]*JSON, error) {
return JSONs, nil
}

//GetConfigMap 获取path路径对应的配置映射,对于下列json
//{
// "a":{
// "b":[{
// c:"x"
// }]
// GetConfigMap 获取path路径对应的配置映射,对于下列json
//
// {
// "a":{
// "b":[{
// c:"x"
// }]
// }
// }
//}
//要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
//如果path对应的不是配置映射或者不存在,就会返回错误
//
// 要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b.0.c
// 如果path对应的不是配置映射或者不存在,就会返回错误
func (j *JSON) GetConfigMap(path string) (map[string]*JSON, error) {
m, err := j.JSON.GetMap(path)
if err != nil {
Expand All @@ -194,7 +208,7 @@ func (j *JSON) GetConfigMap(path string) (map[string]*JSON, error) {
return JSONs, nil
}

//CloneConfig 克隆json配置文件
// CloneConfig 克隆json配置文件
func (j *JSON) CloneConfig() *JSON {
return &JSON{
JSON: j.JSON.Clone(),
Expand Down
2 changes: 1 addition & 1 deletion datax/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ GetConfig中要访问到x字符串 path每层的访问路径为a,a.b,a.b.0,a.b

### 5.1 新增许可证(license)

当你开发完一个功能后在提交前,请运行如下命令用于自动加入许可证
当你开发完一个功能后在提交前,请运行如下命令用于自动加入许可证并使用gofmt -s -w格式化代码

```bash
go run tools/license/main.go
Expand Down
2 changes: 1 addition & 1 deletion datax/common/config/core/const.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

package core

//datax 配置文件路径
// datax 配置文件路径
var (
//datax全局配置路劲
DataxCoreContainerTaskgroupChannel = "core.container.taskGroup.channel"
Expand Down
14 changes: 7 additions & 7 deletions datax/common/plugin/job.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

package plugin

//Job 工作
// Job 工作
type Job interface {
Plugin
//工作ID
Expand All @@ -25,37 +25,37 @@ type Job interface {
SetCollector(JobCollector) //todo 设置工作采集器目前未使用
}

//BaseJob 基础工作,用于辅助和简化工作接口的实现
// BaseJob 基础工作,用于辅助和简化工作接口的实现
type BaseJob struct {
*BasePlugin

id int64
collector JobCollector
}

//NewBaseJob 获取NewBaseJob
// NewBaseJob 获取NewBaseJob
func NewBaseJob() *BaseJob {
return &BaseJob{
BasePlugin: NewBasePlugin(),
}
}

//JobID 工作ID
// JobID 工作ID
func (b *BaseJob) JobID() int64 {
return b.id
}

//SetJobID 设置工作ID
// SetJobID 设置工作ID
func (b *BaseJob) SetJobID(jobID int64) {
b.id = jobID
}

//Collector 采集器
// Collector 采集器
func (b *BaseJob) Collector() JobCollector {
return b.collector
}

//SetCollector 设置采集器
// SetCollector 设置采集器
func (b *BaseJob) SetCollector(collector JobCollector) {
b.collector = collector
}
4 changes: 2 additions & 2 deletions datax/common/plugin/job_collector.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ package plugin

import "github.com/Breeze0806/go/encoding"

//JobCollector 工作信息采集器,用于统计整个工作的进度,错误信息等
//toto 当前未实现监控模块,为此需要在后面来实现这个接口的结构体
// JobCollector 工作信息采集器,用于统计整个工作的进度,错误信息等
// toto 当前未实现监控模块,为此需要在后面来实现这个接口的结构体
type JobCollector interface {
JSON() *encoding.JSON
JSONByKey(key string) *encoding.JSON
Expand Down
Loading