request_id.go (744B)
1 package middleware 2 3 import ( 4 "github.com/aws/smithy-go/middleware" 5 ) 6 7 // requestIDKey is used to retrieve request id from response metadata 8 type requestIDKey struct{} 9 10 // SetRequestIDMetadata sets the provided request id over middleware metadata 11 func SetRequestIDMetadata(metadata *middleware.Metadata, id string) { 12 metadata.Set(requestIDKey{}, id) 13 } 14 15 // GetRequestIDMetadata retrieves the request id from middleware metadata 16 // returns string and bool indicating value of request id, whether request id was set. 17 func GetRequestIDMetadata(metadata middleware.Metadata) (string, bool) { 18 if !metadata.Has(requestIDKey{}) { 19 return "", false 20 } 21 22 v, ok := metadata.Get(requestIDKey{}).(string) 23 if !ok { 24 return "", true 25 } 26 return v, true 27 }