Skip to content

Commit

Permalink
gofmt
Browse files Browse the repository at this point in the history
  • Loading branch information
The-Gleb committed Mar 2, 2024
1 parent efe16e0 commit 8ee0869
Show file tree
Hide file tree
Showing 10 changed files with 691 additions and 691 deletions.
183 changes: 92 additions & 91 deletions cmd/agent/flags.go
Original file line number Diff line number Diff line change
@@ -1,91 +1,92 @@
package main

import (
"flag"
"github.com/caarlos0/env"
"os"
// "strconv"
)

type Config struct {
Addres string `env:"ADDRESS"`
PollInterval float64 `env:"POLL_INTERVAL"`
ReportInterval float64 `env:"REPORT_INTERVAL"`
SignKey string `env:"KEY"`
RateLimit int `env:"RATE_LIMIT"`
}

type ConfigBuilder struct {
config Config
}

func (b ConfigBuilder) SetAddres(address string) ConfigBuilder {
b.config.Addres = address
return b
}

func (b ConfigBuilder) SetPollInterval(interval float64) ConfigBuilder {
b.config.PollInterval = interval
return b
}

func (b ConfigBuilder) SetReportInterval(interval float64) ConfigBuilder {
b.config.ReportInterval = interval
return b
}

func (b ConfigBuilder) SetSignKey(key string) ConfigBuilder {
b.config.SignKey = key
return b
}

func (b ConfigBuilder) SetRateLimit(limit int) ConfigBuilder {
b.config.RateLimit = limit
return b
}

func NewConfigFromFlags() Config {
flag.NewFlagSet(os.Args[0], flag.ExitOnError)

var address string
flag.StringVar(&address, "a", ":8080", "address and port to run server")

var pollInterval float64
flag.Float64Var(&pollInterval, "p", 2, "interval between sending metric on server")

var reportInterval float64
flag.Float64Var(&reportInterval, "r", 10, "interval between collecting metric from runtime")

var key string
flag.StringVar(&key, "k", "", "key for signing")

var rateLimit int
flag.IntVar(&rateLimit, "l", 1, "number of requests that can be sent simultaniously")

flag.Parse()

var builder ConfigBuilder

builder = builder.SetAddres(address).
SetPollInterval(pollInterval).
SetReportInterval(reportInterval).
SetSignKey(key).
SetRateLimit(rateLimit)

env.Parse(&builder.config)

// if envAddress := os.Getenv("ADDRESS"); envAddress != "" {
// builder = builder.SetAddres(envAddress)
// }
// if envPollInterval := os.Getenv("POLL_INTERVAL"); envPollInterval != "" {
// builder = builder.SetPollInterval(pollInterval)
// }
// if envReportInterval := os.Getenv("REPORT_INTERVAL"); envReportInterval != "" {
// builder = builder.SetReportInterval(reportInterval)
// }
// if envSignKey := os.Getenv("KEY"); envSignKey != "" {
// builder = builder.SetSignKey(envSignKey)
// }

return builder.config
}
package main

import (
"flag"
"os"

"github.com/caarlos0/env"
// "strconv"
)

type Config struct {
Addres string `env:"ADDRESS"`
PollInterval float64 `env:"POLL_INTERVAL"`
ReportInterval float64 `env:"REPORT_INTERVAL"`
SignKey string `env:"KEY"`
RateLimit int `env:"RATE_LIMIT"`
}

type ConfigBuilder struct {
config Config
}

func (b ConfigBuilder) SetAddres(address string) ConfigBuilder {
b.config.Addres = address
return b
}

func (b ConfigBuilder) SetPollInterval(interval float64) ConfigBuilder {
b.config.PollInterval = interval
return b
}

func (b ConfigBuilder) SetReportInterval(interval float64) ConfigBuilder {
b.config.ReportInterval = interval
return b
}

func (b ConfigBuilder) SetSignKey(key string) ConfigBuilder {
b.config.SignKey = key
return b
}

func (b ConfigBuilder) SetRateLimit(limit int) ConfigBuilder {
b.config.RateLimit = limit
return b
}

func NewConfigFromFlags() Config {
flag.NewFlagSet(os.Args[0], flag.ExitOnError)

var address string
flag.StringVar(&address, "a", ":8080", "address and port to run server")

var pollInterval float64
flag.Float64Var(&pollInterval, "p", 2, "interval between sending metric on server")

var reportInterval float64
flag.Float64Var(&reportInterval, "r", 10, "interval between collecting metric from runtime")

var key string
flag.StringVar(&key, "k", "", "key for signing")

var rateLimit int
flag.IntVar(&rateLimit, "l", 1, "number of requests that can be sent simultaniously")

flag.Parse()

var builder ConfigBuilder

builder = builder.SetAddres(address).
SetPollInterval(pollInterval).
SetReportInterval(reportInterval).
SetSignKey(key).
SetRateLimit(rateLimit)

env.Parse(&builder.config)

// if envAddress := os.Getenv("ADDRESS"); envAddress != "" {
// builder = builder.SetAddres(envAddress)
// }
// if envPollInterval := os.Getenv("POLL_INTERVAL"); envPollInterval != "" {
// builder = builder.SetPollInterval(pollInterval)
// }
// if envReportInterval := os.Getenv("REPORT_INTERVAL"); envReportInterval != "" {
// builder = builder.SetReportInterval(reportInterval)
// }
// if envSignKey := os.Getenv("KEY"); envSignKey != "" {
// builder = builder.SetSignKey(envSignKey)
// }

return builder.config
}
Loading

0 comments on commit 8ee0869

Please sign in to comment.