Index: go/src/infra/gae/epservice/example/service_list.go |
diff --git a/go/src/infra/gae/epservice/example/service_list.go b/go/src/infra/gae/epservice/example/service_list.go |
index 23c41195f450c4125c1e66eb35d15b7a26b0cc58..52ab18cb9f0650dd4f227619336215bd10ce5988 100644 |
--- a/go/src/infra/gae/epservice/example/service_list.go |
+++ b/go/src/infra/gae/epservice/example/service_list.go |
@@ -6,7 +6,9 @@ package example |
import ( |
"golang.org/x/net/context" |
+ |
"infra/gae/libs/gae" |
+ "infra/gae/libs/gae/helper" |
"infra/gae/libs/gae/prod" |
"github.com/GoogleCloudPlatform/go-endpoints/endpoints" |
@@ -23,10 +25,17 @@ type ListRsp struct { |
func (Example) List(c context.Context) (rsp *ListRsp, err error) { |
rds := gae.GetRDS(prod.Use(c)) |
rsp = &ListRsp{} |
- _, err = rds.GetAll(rds.NewQuery("Counter"), &rsp.Counters) |
+ dst := []gae.DSPropertyMap{} |
+ _, err = rds.GetAll(rds.NewQuery("Counter"), &dst) |
if err != nil { |
return |
} |
+ rsp.Counters = make([]Counter, len(dst)) |
+ for i, m := range dst { |
+ if err = helper.GetPLS(rsp.Counters[i]).Load(m); err != nil { |
+ return |
+ } |
+ } |
return |
} |