summaryrefslogtreecommitdiff
path: root/shrine/utils/env/functions.go
diff options
context:
space:
mode:
authorBobby <[email protected]>2026-03-03 16:32:30 +0530
committerBobby <[email protected]>2026-03-03 16:32:30 +0530
commit8631dd7420c35ce8c8b7da5f19eb4b516abcddc3 (patch)
tree2f4527eda31d5275fb3e38255184de27eee38af4 /shrine/utils/env/functions.go
parent471758d1eb63c550c644b9233d04473adde962e8 (diff)
downloadpagoda-8631dd7420c35ce8c8b7da5f19eb4b516abcddc3.tar.xz
pagoda-8631dd7420c35ce8c8b7da5f19eb4b516abcddc3.zip
feat(config): add CORS origins configuration to server struct
refactor(database): remove unused database drivers fix(middleware): use constant for request context key refactor(router): clean up import statement for controllers fix(main): use CORS origins from config refactor(env): simplify environment variable handling for uint fields refactor(meta): update request context key to use constant
Diffstat (limited to 'shrine/utils/env/functions.go')
-rw-r--r--shrine/utils/env/functions.go32
1 files changed, 5 insertions, 27 deletions
diff --git a/shrine/utils/env/functions.go b/shrine/utils/env/functions.go
index de03793..12b57e2 100644
--- a/shrine/utils/env/functions.go
+++ b/shrine/utils/env/functions.go
@@ -2,7 +2,6 @@ package env
import (
"os"
- "reflect"
"strconv"
"strings"
"time"
@@ -66,32 +65,11 @@ func getEnvStringSlice(key string, defaultVal []string) []string {
return defaultVal
}
-func Defaults[T any](config *T) *T {
- v := reflect.ValueOf(config)
- if v.Kind() != reflect.Ptr || v.Elem().Kind() != reflect.Struct {
- return config
- }
-
- elem := v.Elem()
- t := elem.Type()
- newStruct := reflect.New(t)
- newElem := newStruct.Elem()
-
- for i := range elem.NumField() {
- field := newElem.Field(i)
- fieldType := t.Field(i)
-
- if !field.CanSet() {
- continue
- }
-
- defaultVal := fieldType.Tag.Get("default")
- if defaultVal == "" {
- continue
+func getEnvUint(key string, defaultVal uint64) uint64 {
+ if value := os.Getenv(key); value != "" {
+ if parsed, err := strconv.ParseUint(value, 10, 64); err == nil {
+ return parsed
}
-
- setFieldDefault(field, defaultVal)
}
-
- return newStruct.Interface().(*T)
+ return defaultVal
}