syncbase: Change db.createTable/deleteTable to table.create/destroy
As part of usability fixes documented on https://v.io/i/672
MultiPart: 2/8
Change-Id: I6176da7de9554f82884ed82c3929998c846e156d
diff --git a/cmd/sb51/internal/demodb/db.go b/cmd/sb51/internal/demodb/db.go
index 9c073c1..ba1ce45 100644
--- a/cmd/sb51/internal/demodb/db.go
+++ b/cmd/sb51/internal/demodb/db.go
@@ -111,15 +111,15 @@
},
}
-// Creates demo tables in the provided database. Tables are deleted and
+// Creates demo tables in the provided database. Tables are destroyed and
// recreated if they already exist.
func PopulateDemoDB(ctx *context.T, db nosql.Database) error {
for i, t := range demoTables {
tn := demoPrefix + t.name
- if err := db.DeleteTable(ctx, tn); err != nil {
- return fmt.Errorf("failed deleting table %s (%d/%d): %v", tn, i+1, len(demoTables), err)
+ if err := db.Table(tn).Destroy(ctx); err != nil {
+ return fmt.Errorf("failed destroying table %s (%d/%d): %v", tn, i+1, len(demoTables), err)
}
- if err := db.CreateTable(ctx, tn, nil); err != nil {
+ if err := db.Table(tn).Create(ctx, nil); err != nil {
return fmt.Errorf("failed creating table %s (%d/%d): %v", tn, i+1, len(demoTables), err)
}
if err := nosql.RunInBatch(ctx, db, wire.BatchOptions{}, func(db nosql.BatchDatabase) error {
diff --git a/services/syncbase/server/mojo_impl.go b/services/syncbase/server/mojo_impl.go
index 6846468..5cd963b 100644
--- a/services/syncbase/server/mojo_impl.go
+++ b/services/syncbase/server/mojo_impl.go
@@ -401,13 +401,13 @@
return toMojoError(err), nil
}
-func (m *mojoImpl) TableDelete(name string) (mojom.Error, error) {
- ctx, call := m.newCtxCall(name, methodDesc(nosqlwire.TableDesc, "Delete"))
+func (m *mojoImpl) TableDestroy(name string) (mojom.Error, error) {
+ ctx, call := m.newCtxCall(name, methodDesc(nosqlwire.TableDesc, "Destroy"))
stub, err := m.getTable(ctx, call, name)
if err != nil {
return toMojoError(err), nil
}
- err = stub.Delete(ctx, call, NoSchema)
+ err = stub.Destroy(ctx, call, NoSchema)
return toMojoError(err), nil
}
diff --git a/services/syncbase/server/nosql/table.go b/services/syncbase/server/nosql/table.go
index d4d07d4..cb01b2e 100644
--- a/services/syncbase/server/nosql/table.go
+++ b/services/syncbase/server/nosql/table.go
@@ -64,7 +64,7 @@
})
}
-func (t *tableReq) Delete(ctx *context.T, call rpc.ServerCall, schemaVersion int32) error {
+func (t *tableReq) Destroy(ctx *context.T, call rpc.ServerCall, schemaVersion int32) error {
if t.d.batchId != nil {
return wire.NewErrBoundToBatch(ctx)
}
diff --git a/services/syncbase/testutil/layer.go b/services/syncbase/testutil/layer.go
index 55e49f1..acf9dbd 100644
--- a/services/syncbase/testutil/layer.go
+++ b/services/syncbase/testutil/layer.go
@@ -110,10 +110,10 @@
assertExists(t, ctx, self, "self", true)
- // By default, self perms are copied from parent, so self.Delete should
+ // By default, self perms are copied from parent, so self.Destroy should
// succeed.
- if err := self.Delete(ctx); err != nil {
- t.Fatalf("self.Delete() failed: %v", err)
+ if err := self.Destroy(ctx); err != nil {
+ t.Fatalf("self.Destroy() failed: %v", err)
}
assertExists(t, ctx, self, "self", false)
@@ -146,8 +146,8 @@
if err := self2.SetPermissions(ctx, perms, ""); err != nil {
t.Fatalf("self2.SetPermissions() failed: %v", err)
}
- if err := self2.Delete(ctx); verror.ErrorID(err) != verror.ErrNoAccess.ID {
- t.Fatalf("self2.Delete() should have failed: %v", err)
+ if err := self2.Destroy(ctx); verror.ErrorID(err) != verror.ErrNoAccess.ID {
+ t.Fatalf("self2.Destroy() should have failed: %v", err)
}
assertExists(t, ctx, self2, "self2", true)
@@ -158,15 +158,15 @@
if err := parent.SetPermissions(ctx, perms, ""); err != nil {
t.Fatalf("parent.SetPermissions() failed: %v", err)
}
- if err := self.Delete(ctx); err != nil {
- t.Fatalf("self.Delete() failed: %v", err)
+ if err := self.Destroy(ctx); err != nil {
+ t.Fatalf("self.Destroy() failed: %v", err)
}
assertExists(t, ctx, self, "self", false)
// Test that delete is idempotent.
- if err := self.Delete(ctx); err != nil {
- t.Fatalf("self.Delete() failed: %v", err)
+ if err := self.Destroy(ctx); err != nil {
+ t.Fatalf("self.Destroy() failed: %v", err)
}
assertExists(t, ctx, self, "self", false)
@@ -314,9 +314,7 @@
type layer interface {
util.AccessController
Create(ctx *context.T, perms access.Permissions) error
- // TODO(aghassemi): Rename to Destroy and drop Destroy impls below once
- // Table.Delete is renamed to Destroy.
- Delete(ctx *context.T) error
+ Destroy(ctx *context.T) error
Exists(ctx *context.T) (bool, error)
ListChildren(ctx *context.T) ([]string, error)
Child(childName string) layer
@@ -329,7 +327,7 @@
func (s *service) Create(ctx *context.T, perms access.Permissions) error {
panic(notAvailable)
}
-func (s *service) Delete(ctx *context.T) error {
+func (s *service) Destroy(ctx *context.T) error {
panic(notAvailable)
}
func (s *service) Exists(ctx *context.T) (bool, error) {
@@ -352,9 +350,6 @@
func (a *app) Child(childName string) layer {
return makeLayer(a.NoSQLDatabase(childName, nil))
}
-func (a *app) Delete(ctx *context.T) error {
- return a.Destroy(ctx)
-}
type database struct {
nosql.Database
@@ -366,9 +361,6 @@
func (d *database) Child(childName string) layer {
return &table{Table: d.Table(childName), d: d}
}
-func (d *database) Delete(ctx *context.T) error {
- return d.Destroy(ctx)
-}
type table struct {
nosql.Table
@@ -376,10 +368,7 @@
}
func (t *table) Create(ctx *context.T, perms access.Permissions) error {
- return t.d.CreateTable(ctx, t.Name(), perms)
-}
-func (t *table) Delete(ctx *context.T) error {
- return t.d.DeleteTable(ctx, t.Name())
+ return t.Table.Create(ctx, perms)
}
func (t *table) SetPermissions(ctx *context.T, perms access.Permissions, version string) error {
return t.Table.SetPermissions(ctx, nosql.Prefix(""), perms)
@@ -408,7 +397,7 @@
}
return r.Put(ctx, true)
}
-func (r *row) Delete(ctx *context.T) error {
+func (r *row) Destroy(ctx *context.T) error {
return r.Delete(ctx)
}
func (r *row) SetPermissions(ctx *context.T, perms access.Permissions, version string) error {
diff --git a/services/syncbase/testutil/util.go b/services/syncbase/testutil/util.go
index 658794e..a603d60 100644
--- a/services/syncbase/testutil/util.go
+++ b/services/syncbase/testutil/util.go
@@ -56,8 +56,8 @@
}
func CreateTable(t *testing.T, ctx *context.T, d nosql.Database, name string) nosql.Table {
- if err := d.CreateTable(ctx, name, nil); err != nil {
- Fatalf(t, "d.CreateTable() failed: %v", err)
+ if err := d.Table(name).Create(ctx, nil); err != nil {
+ Fatalf(t, "d.Table(name).Create() failed: %v", err)
}
return d.Table(name)
}