summaryrefslogtreecommitdiff
path: root/internal/user
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-06-19 17:00:58 +0300
committerPaul Buetow <paul@buetow.org>2025-06-19 17:00:58 +0300
commit655e348870712280eac03d9e32d027e74c119ced (patch)
treefe9546bf96e0d8d7a30d87d7d4936dc4bea31ca8 /internal/user
parent0234fbac3490ccf2b9dca36292ad6459e990e0f5 (diff)
Refactor: Extract magic numbers as constants and reduce client code duplication
- Created internal/constants package with organized constant files: - timeouts.go: All time duration constants (timeouts, intervals, delays) - channels.go: Channel buffer size constants - limits.go: Numeric limits and configuration values - buffers.go: Buffer size constants in bytes - Replaced all magic numbers throughout codebase with named constants: - Time durations (2s, 3s, 5s, 10s, 100ms, 24h) now use descriptive constants - Buffer sizes (8KB, 64KB, 1MB) extracted to constants - Channel buffer sizes and multipliers - Configuration limits (max connections, concurrency, etc.) - Health check status codes - Percentage calculations - Reduced code duplication in client implementations: - Created CommonClient to share functionality between CatClient, GrepClient, and TailClient - All three clients now inherit from CommonClient - Eliminated duplicate makeHandler() and makeCommands() methods - Simplified client constructors This refactoring improves code maintainability by centralizing configuration values and reducing redundant code across similar client implementations.
Diffstat (limited to 'internal/user')
-rw-r--r--internal/user/server/user.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/internal/user/server/user.go b/internal/user/server/user.go
index abf74f3..2b2d720 100644
--- a/internal/user/server/user.go
+++ b/internal/user/server/user.go
@@ -8,11 +8,12 @@ import (
"strings"
"github.com/mimecast/dtail/internal/config"
+ "github.com/mimecast/dtail/internal/constants"
"github.com/mimecast/dtail/internal/io/dlog"
"github.com/mimecast/dtail/internal/io/fs/permissions"
)
-const maxLinkDepth int = 100
+const maxLinkDepth int = constants.MaxSymlinkDepth
// User represents an end-user which connected to the server via the DTail client.
type User struct {