refactor: move some io, http and string utils to separate repo

This commit is contained in:
yusing
2025-09-27 12:46:41 +08:00
parent acecd827d6
commit 22bcf1201b
115 changed files with 125 additions and 3815 deletions

View File

@@ -14,7 +14,6 @@ import (
"github.com/yusing/godoxy/internal/route"
"github.com/yusing/godoxy/internal/serialization"
"github.com/yusing/godoxy/internal/types"
"github.com/yusing/godoxy/internal/utils/strutils"
"github.com/yusing/godoxy/internal/watcher"
)
@@ -157,7 +156,7 @@ func (p *DockerProvider) routesFromContainerLabels(container *types.Container) (
// check if it is an alias reference
switch alias[0] {
case aliasRefPrefix, aliasRefPrefixAlt:
index, err := strutils.Atoi(alias[1:])
index, err := strconv.Atoi(alias[1:])
if err != nil {
errs.Add(err)
break

View File

@@ -13,13 +13,13 @@ import (
gphttp "github.com/yusing/godoxy/internal/net/gphttp"
"github.com/yusing/godoxy/internal/net/gphttp/loadbalancer"
"github.com/yusing/godoxy/internal/net/gphttp/middleware"
"github.com/yusing/godoxy/internal/net/gphttp/reverseproxy"
nettypes "github.com/yusing/godoxy/internal/net/types"
"github.com/yusing/godoxy/internal/route/routes"
"github.com/yusing/godoxy/internal/task"
"github.com/yusing/godoxy/internal/types"
"github.com/yusing/godoxy/internal/watcher/health/monitor"
"github.com/yusing/godoxy/pkg"
"github.com/yusing/goutils/http/reverseproxy"
)
type ReveseProxyRoute struct {
@@ -59,7 +59,7 @@ func NewReverseProxyRoute(base *Route) (*ReveseProxyRoute, gperr.Error) {
}
service := base.Name()
rp := reverseproxy.NewReverseProxy(service, proxyURL, trans)
rp := reverseproxy.NewReverseProxy(service, &proxyURL.URL, trans)
if len(base.Middlewares) > 0 {
err := middleware.PatchReverseProxy(rp, base.Middlewares)

View File

@@ -19,7 +19,7 @@ import (
"github.com/yusing/godoxy/internal/proxmox"
"github.com/yusing/godoxy/internal/task"
"github.com/yusing/godoxy/internal/types"
"github.com/yusing/godoxy/internal/utils/strutils"
strutils "github.com/yusing/goutils/strings"
"github.com/yusing/godoxy/internal/common"
config "github.com/yusing/godoxy/internal/config/types"

View File

@@ -8,9 +8,9 @@ import (
"github.com/yusing/godoxy/internal/gperr"
gphttp "github.com/yusing/godoxy/internal/net/gphttp"
"github.com/yusing/godoxy/internal/net/gphttp/reverseproxy"
nettypes "github.com/yusing/godoxy/internal/net/types"
"github.com/yusing/godoxy/internal/utils/strutils"
"github.com/yusing/goutils/http/reverseproxy"
strutils "github.com/yusing/goutils/strings"
)
type (
@@ -164,7 +164,7 @@ var commands = map[string]struct {
if target.Scheme == "" {
target.Scheme = "http"
}
rp := reverseproxy.NewReverseProxy("", target, gphttp.NewTransport())
rp := reverseproxy.NewReverseProxy("", &target.URL, gphttp.NewTransport())
return ReturningCommand(rp.ServeHTTP)
},
},

View File

@@ -10,7 +10,7 @@ import (
"github.com/yusing/godoxy/internal/gperr"
nettypes "github.com/yusing/godoxy/internal/net/types"
"github.com/yusing/godoxy/internal/route/routes"
"github.com/yusing/godoxy/internal/utils/strutils"
strutils "github.com/yusing/goutils/strings"
)
type RuleOn struct {

View File

@@ -8,7 +8,7 @@ import (
"github.com/rs/zerolog"
config "github.com/yusing/godoxy/internal/config/types"
nettypes "github.com/yusing/godoxy/internal/net/types"
"github.com/yusing/godoxy/internal/utils"
ioutils "github.com/yusing/goutils/io"
"go.uber.org/atomic"
)
@@ -153,7 +153,7 @@ func (s *TCPTCPStream) handle(ctx context.Context, conn net.Conn) {
}
}
pipe := utils.NewBidirectionalPipe(ctx, src, dst)
pipe := ioutils.NewBidirectionalPipe(ctx, src, dst)
if err := pipe.Start(); err != nil && !s.closed.Load() {
logErr(s, err, "error in bidirectional pipe")
}

View File

@@ -12,7 +12,7 @@ import (
"github.com/rs/zerolog"
config "github.com/yusing/godoxy/internal/config/types"
nettypes "github.com/yusing/godoxy/internal/net/types"
"github.com/yusing/godoxy/internal/utils/synk"
"github.com/yusing/goutils/synk"
"go.uber.org/atomic"
)

View File

@@ -4,7 +4,7 @@ import (
"strconv"
"github.com/yusing/godoxy/internal/gperr"
"github.com/yusing/godoxy/internal/utils/strutils"
strutils "github.com/yusing/goutils/strings"
)
type Port struct {