Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(221)

Unified Diff: go/src/infra/gae/epservice/example/service_cas.go

Issue 1240573002: Reland: Refactor current GAE abstraction library to be free of the SDK* (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: expand coverage range to fit 32bit test expectations Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: go/src/infra/gae/epservice/example/service_cas.go
diff --git a/go/src/infra/gae/epservice/example/service_cas.go b/go/src/infra/gae/epservice/example/service_cas.go
index f01804ec488218dcbfcd47732a3885d8319f929f..4c2d8214f9cf0d303b2e3ac198d835edffc1ab3b 100644
--- a/go/src/infra/gae/epservice/example/service_cas.go
+++ b/go/src/infra/gae/epservice/example/service_cas.go
@@ -6,8 +6,8 @@ package example
import (
"golang.org/x/net/context"
- "infra/gae/libs/wrapper"
- "infra/gae/libs/wrapper/gae"
+ "infra/gae/libs/gae"
+ "infra/gae/libs/gae/prod"
"github.com/GoogleCloudPlatform/go-endpoints/endpoints"
)
@@ -21,18 +21,20 @@ type CASReq struct {
}
// CAS does an atomic compare-and-swap on a counter.
-func (Example) CAS(c endpoints.Context, r *CASReq) (err error) {
+func (Example) CAS(c context.Context, r *CASReq) (err error) {
success := false
- ds := wrapper.GetDS(gae.Use(context.Background(), c))
- err = ds.RunInTransaction(func(context.Context) error {
- ctr := &Counter{ID: r.Name}
- if err := ds.Get(ctr); err != nil {
+ c = prod.Use(c)
+ err = gae.GetRDS(c).RunInTransaction(func(c context.Context) error {
+ rds := gae.GetRDS(c)
+ key := rds.NewKey("Counter", r.Name, 0, nil)
+ ctr := &Counter{}
+ if err := rds.Get(key, ctr); err != nil {
return err
}
if ctr.Val == r.OldVal {
success = true
ctr.Val = r.NewVal
- _, err := ds.Put(ctr)
+ _, err := rds.Put(key, ctr)
return err
}
success = false
« no previous file with comments | « go/src/infra/gae/epservice/example/service_add.go ('k') | go/src/infra/gae/epservice/example/service_currentvalue.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698