diff --git a/enforcer.go b/enforcer.go index d78acaf..58c8223 100644 --- a/enforcer.go +++ b/enforcer.go @@ -154,6 +154,14 @@ func (e *Enforcer) SetWatcher(watcher persist.Watcher) { e.watcher = watcher } +func (e *Enforcer) SetUpdatableWatcher(watcher persist.UpdatableWatcher) { + e.updatableWatcher = watcher +} + +func (e *Enforcer) GetUpdatableWatcher() persist.UpdatableWatcher { + return e.updatableWatcher +} + func (e *Enforcer) GetLogger() log.Logger { return e.logger } diff --git a/persist/watcher_update.go b/persist/watcher_update.go index 0d223b7..32bd494 100644 --- a/persist/watcher_update.go +++ b/persist/watcher_update.go @@ -2,8 +2,8 @@ package persist // UpdatableWatcher called when data updated type UpdatableWatcher interface { - UpdateForSetStr(key string, value interface{}, timeout int64) error - UpdateForUpdateStr(key string, value interface{}) error + UpdateForSetStr(key string, value string, timeout int64) error + UpdateForUpdateStr(key string, value string) error UpdateForSet(key string, value interface{}, timeout int64) error UpdateForUpdate(key string, value interface{}) error UpdateForDelete(key string) error