// baseUrl gets the base url active for the datastore service // defaults to "https://www.googleapis.com/datastore/v1beta2/datasets/" if none was specified func baseUrl(ctx context.Context) string { v := ctx.Value(ContextKey("base_url")) if v == nil { return "https://www.googleapis.com/datastore/v1beta2/datasets/" } else { return v.(string) } }
func contextClient(ctx context.Context) (*http.Client, error) { for _, fn := range contextClientFuncs { c, err := fn(ctx) if err != nil { return nil, err } if c != nil { return c, nil } } if hc, ok := ctx.Value(HTTPClient).(*http.Client); ok { return hc, nil } return http.DefaultClient, nil }
// FromContext returns the MD in ctx if it exists. func FromContext(ctx context.Context) (md MD, ok bool) { md, ok = ctx.Value(mdKey{}).(MD) return }
// FromContext returns the Trace bound to the context, if any. func FromContext(ctx context.Context) (tr Trace, ok bool) { tr, ok = ctx.Value(contextKey).(Trace) return }
// ctxNamespace returns the active namespace for a context. // It defaults to "" if no namespace was specified. func ctxNamespace(ctx context.Context) string { v, _ := ctx.Value(nsKey{}).(string) return v }
// StreamFromContext returns the stream saved in ctx. func StreamFromContext(ctx context.Context) (s *Stream, ok bool) { s, ok = ctx.Value(streamKey).(*Stream) return }
// FromContext returns the authInfo in ctx if it exists. func FromContext(ctx context.Context) (authInfo AuthInfo, ok bool) { authInfo, ok = ctx.Value(authInfoKey{}).(AuthInfo) return }
// cc returns the internal *cloudContext (cc) state for a context.Context. // It panics if the user did it wrong. func cc(ctx context.Context) *cloudContext { if c, ok := ctx.Value(contextKey{}).(*cloudContext); ok { return c } panic("invalid context.Context type; it should be created with cloud.NewContext") }