values.go
Rama master · réplica de lectura del repositorio original.
package aastro
import "context"
type contextKey uint8
const (
contextKeyClientIP contextKey = iota
contextKeyRequestID
contextKeyRoute
contextKeyFingerprint
)
func withClientIP(ctx context.Context, ip string) context.Context {
return context.WithValue(ctx, contextKeyClientIP, ip)
}
func clientIPFromContext(ctx context.Context) string {
ip, _ := ctx.Value(contextKeyClientIP).(string)
return ip
}
func withRequestID(ctx context.Context, id string) context.Context {
return context.WithValue(ctx, contextKeyRequestID, id)
}
func requestIDFromContext(ctx context.Context) string {
id, _ := ctx.Value(contextKeyRequestID).(string)
return id
}
func withRoute(ctx context.Context, route string) context.Context {
return context.WithValue(ctx, contextKeyRoute, route)
}
func routeFromContext(ctx context.Context) string {
route, _ := ctx.Value(contextKeyRoute).(string)
return route
}
func withFingerprint(ctx context.Context, fingerprint string) context.Context {
return context.WithValue(ctx, contextKeyFingerprint, fingerprint)
}
func fingerprintFromContext(ctx context.Context) string {
fingerprint, _ := ctx.Value(contextKeyFingerprint).(string)
return fingerprint
}