Index: go/src/infra/gae/libs/wrapper/datastore.go |
diff --git a/go/src/infra/gae/libs/wrapper/datastore.go b/go/src/infra/gae/libs/wrapper/datastore.go |
deleted file mode 100644 |
index 68c86fdd134e0eadcbd0b58a3ad55048d9c5fb58..0000000000000000000000000000000000000000 |
--- a/go/src/infra/gae/libs/wrapper/datastore.go |
+++ /dev/null |
@@ -1,139 +0,0 @@ |
-// Copyright 2015 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-package wrapper |
- |
-import ( |
- "fmt" |
- |
- "golang.org/x/net/context" |
- |
- "appengine/datastore" |
- |
- "github.com/mjibson/goon" |
-) |
- |
-/// Kinds + Keys |
- |
-// DSKinder simply allows you to resolve the datastore 'kind' of an object. |
-// See goon.Goon.Kind(). |
-type DSKinder interface { |
- Kind(src interface{}) string |
-} |
- |
-// DSKindSetter allows you to manipulate the current Kind resolution function. |
-// See goon.Goon.KindNameResolver. |
-type DSKindSetter interface { |
- KindNameResolver() goon.KindNameResolver |
- SetKindNameResolver(goon.KindNameResolver) |
-} |
- |
-// DSNewKeyer allows you to generate a new *datastore.Key in a couple ways. |
-// See goon.Goon.Key* for the NewKeyObj* methods, as well as datastore.NewKey. |
-type DSNewKeyer interface { |
- NewKey(kind, stringID string, intID int64, parent *datastore.Key) *datastore.Key |
- NewKeyObj(src interface{}) *datastore.Key |
- NewKeyObjError(src interface{}) (*datastore.Key, error) |
-} |
- |
-/// Read + Write |
- |
-// DSSingleReadWriter allows you to read and write a single datastore object. |
-// See goon.Goon for more detail on the same-named functions. |
-type DSSingleReadWriter interface { |
- Put(src interface{}) (*datastore.Key, error) |
- Get(dst interface{}) error |
- Delete(key *datastore.Key) error |
-} |
- |
-// DSMultiReadWriter allows you to read and write a multiple datastore objects |
-// in a non-atomic batch. See goon.Goon for more detail on the same-named. |
-// functions. Also implies DSSingleReadWriter. |
-type DSMultiReadWriter interface { |
- DSSingleReadWriter |
- DeleteMulti(keys []*datastore.Key) error |
- GetMulti(dst interface{}) error |
- PutMulti(src interface{}) ([]*datastore.Key, error) |
-} |
- |
-/// Queries |
- |
-// DSCursor wraps datastore.Cursor. |
-type DSCursor interface { |
- fmt.Stringer |
-} |
- |
-// DSIterator wraps datastore.Iterator. |
-type DSIterator interface { |
- Cursor() (DSCursor, error) |
- Next(dst interface{}) (*datastore.Key, error) |
-} |
- |
-// DSQuery wraps datastore.Query. |
-type DSQuery interface { |
- Ancestor(ancestor *datastore.Key) DSQuery |
- Distinct() DSQuery |
- End(c DSCursor) DSQuery |
- EventualConsistency() DSQuery |
- Filter(filterStr string, value interface{}) DSQuery |
- KeysOnly() DSQuery |
- Limit(limit int) DSQuery |
- Offset(offset int) DSQuery |
- Order(fieldName string) DSQuery |
- Project(fieldNames ...string) DSQuery |
- Start(c DSCursor) DSQuery |
-} |
- |
-// DSQueryer implements all query-related functionality of goon.Goon/datastore. |
-type DSQueryer interface { |
- NewQuery(kind string) DSQuery |
- Run(q DSQuery) DSIterator |
- GetAll(q DSQuery, dst interface{}) ([]*datastore.Key, error) |
- Count(q DSQuery) (int, error) |
-} |
- |
-/// Transactions |
- |
-// DSTransactioner implements the function for entering a transaction with |
-// datastore. The function receives a context without the ability to enter a |
-// transaction again (since recursive transactions are not implemented in |
-// datastore). |
-type DSTransactioner interface { |
- RunInTransaction(f func(c context.Context) error, opts *datastore.TransactionOptions) error |
-} |
- |
-// Datastore implements the full datastore functionality. |
-type Datastore interface { |
- DSKinder |
- DSNewKeyer |
- DSMultiReadWriter |
- DSQueryer |
- DSKindSetter |
- DSTransactioner |
-} |
- |
-// DSFactory is the function signature for factory methods compatible with |
-// SetDSFactory. |
-type DSFactory func(context.Context) Datastore |
- |
-// GetDS gets the Datastore implementation from context. |
-func GetDS(c context.Context) Datastore { |
- if f, ok := c.Value(datastoreKey).(DSFactory); ok && f != nil { |
- return f(c) |
- } |
- return nil |
-} |
- |
-// SetDSFactory sets the function to produce Datastore instances, as returned by |
-// the GetDS method. |
-func SetDSFactory(c context.Context, dsf DSFactory) context.Context { |
- return context.WithValue(c, datastoreKey, dsf) |
-} |
- |
-// SetDS sets the current Datastore object in the context. Useful for testing |
-// with a quick mock. This is just a shorthand SetDSFactory invocation to set |
-// a factory which always returns the same object. |
-func SetDS(c context.Context, ds Datastore) context.Context { |
- return SetDSFactory(c, func(context.Context) Datastore { return ds }) |
-} |