aboutsummaryrefslogtreecommitdiffstats
path: root/swarm/api/http/sctx.go
diff options
context:
space:
mode:
Diffstat (limited to 'swarm/api/http/sctx.go')
-rw-r--r--swarm/api/http/sctx.go38
1 files changed, 38 insertions, 0 deletions
diff --git a/swarm/api/http/sctx.go b/swarm/api/http/sctx.go
new file mode 100644
index 000000000..431e11735
--- /dev/null
+++ b/swarm/api/http/sctx.go
@@ -0,0 +1,38 @@
+package http
+
+import (
+ "context"
+
+ "github.com/ethereum/go-ethereum/swarm/api"
+ "github.com/ethereum/go-ethereum/swarm/sctx"
+)
+
+type contextKey int
+
+const (
+ uriKey contextKey = iota
+)
+
+func GetRUID(ctx context.Context) string {
+ v, ok := ctx.Value(sctx.HTTPRequestIDKey).(string)
+ if ok {
+ return v
+ }
+ return "xxxxxxxx"
+}
+
+func SetRUID(ctx context.Context, ruid string) context.Context {
+ return context.WithValue(ctx, sctx.HTTPRequestIDKey, ruid)
+}
+
+func GetURI(ctx context.Context) *api.URI {
+ v, ok := ctx.Value(uriKey).(*api.URI)
+ if ok {
+ return v
+ }
+ return nil
+}
+
+func SetURI(ctx context.Context, uri *api.URI) context.Context {
+ return context.WithValue(ctx, uriKey, uri)
+}