Index: filter/featureBreaker/mc.go |
diff --git a/filter/featureBreaker/mc.go b/filter/featureBreaker/mc.go |
index 42b673b28f5b4ed0d7aadfd3a97a2d02a777eaa8..9a798a983dc8a2d1f49c7b700cf2d2e25e69cb2e 100644 |
--- a/filter/featureBreaker/mc.go |
+++ b/filter/featureBreaker/mc.go |
@@ -13,80 +13,36 @@ import ( |
type mcState struct { |
*state |
- mc.Interface |
+ mc.RawInterface |
} |
-func (m *mcState) Get(key string) (ret mc.Item, err error) { |
- err = m.run(func() (err error) { |
- ret, err = m.Interface.Get(key) |
- return |
- }) |
- return |
-} |
- |
-func (m *mcState) GetMulti(keys []string) (ret map[string]mc.Item, err error) { |
- err = m.run(func() (err error) { |
- ret, err = m.Interface.GetMulti(keys) |
- return |
- }) |
- return |
-} |
- |
-func (m *mcState) Add(item mc.Item) error { |
- return m.run(func() error { return m.Interface.Add(item) }) |
-} |
- |
-func (m *mcState) Set(item mc.Item) error { |
- return m.run(func() error { return m.Interface.Set(item) }) |
-} |
- |
-func (m *mcState) Delete(key string) error { |
- return m.run(func() error { return m.Interface.Delete(key) }) |
+func (m *mcState) GetMulti(keys []string, cb mc.RawItemCB) error { |
+ return m.run(func() error { return m.RawInterface.GetMulti(keys, cb) }) |
} |
-func (m *mcState) CompareAndSwap(item mc.Item) error { |
- return m.run(func() error { return m.Interface.CompareAndSwap(item) }) |
+func (m *mcState) AddMulti(items []mc.Item, cb mc.RawCB) error { |
+ return m.run(func() error { return m.RawInterface.AddMulti(items, cb) }) |
} |
-func (m *mcState) AddMulti(items []mc.Item) error { |
- return m.run(func() error { return m.Interface.AddMulti(items) }) |
+func (m *mcState) SetMulti(items []mc.Item, cb mc.RawCB) error { |
+ return m.run(func() error { return m.RawInterface.SetMulti(items, cb) }) |
} |
-func (m *mcState) SetMulti(items []mc.Item) error { |
- return m.run(func() error { return m.Interface.SetMulti(items) }) |
+func (m *mcState) DeleteMulti(keys []string, cb mc.RawCB) error { |
+ return m.run(func() error { return m.RawInterface.DeleteMulti(keys, cb) }) |
} |
-func (m *mcState) DeleteMulti(keys []string) error { |
- return m.run(func() error { return m.Interface.DeleteMulti(keys) }) |
+func (m *mcState) CompareAndSwapMulti(items []mc.Item, cb mc.RawCB) error { |
+ return m.run(func() error { return m.RawInterface.CompareAndSwapMulti(items, cb) }) |
} |
func (m *mcState) Flush() error { |
- return m.run(func() error { return m.Interface.Flush() }) |
-} |
- |
-func (m *mcState) CompareAndSwapMulti(items []mc.Item) error { |
- return m.run(func() error { return m.Interface.CompareAndSwapMulti(items) }) |
-} |
- |
-func (m *mcState) Increment(key string, delta int64, initialValue uint64) (newValue uint64, err error) { |
- err = m.run(func() (err error) { |
- newValue, err = m.Interface.Increment(key, delta, initialValue) |
- return |
- }) |
- return |
-} |
- |
-func (m *mcState) IncrementExisting(key string, delta int64) (newValue uint64, err error) { |
- err = m.run(func() (err error) { |
- newValue, err = m.Interface.IncrementExisting(key, delta) |
- return |
- }) |
- return |
+ return m.run(m.RawInterface.Flush) |
} |
func (m *mcState) Stats() (ret *mc.Statistics, err error) { |
err = m.run(func() (err error) { |
- ret, err = m.Interface.Stats() |
+ ret, err = m.RawInterface.Stats() |
return |
}) |
return |
@@ -95,7 +51,7 @@ func (m *mcState) Stats() (ret *mc.Statistics, err error) { |
// FilterMC installs a counter mc filter in the context. |
func FilterMC(c context.Context, defaultError error) (context.Context, FeatureBreaker) { |
state := newState(defaultError) |
- return mc.AddFilters(c, func(ic context.Context, rds mc.Interface) mc.Interface { |
+ return mc.AddRawFilters(c, func(ic context.Context, rds mc.RawInterface) mc.RawInterface { |
return &mcState{state, rds} |
}), state |
} |