From 79bf46fd79f70edc93b0336db788419912a399fe Mon Sep 17 00:00:00 2001 From: Akihiro Suda Date: Wed, 5 Apr 2017 05:37:58 +0000 Subject: [PATCH] improve error for getStore() Signed-off-by: Akihiro Suda --- libnetwork/error.go | 8 ++++++++ libnetwork/store.go | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/libnetwork/error.go b/libnetwork/error.go index c0054ce70c..f62ac0caa5 100644 --- a/libnetwork/error.go +++ b/libnetwork/error.go @@ -183,3 +183,11 @@ func (mr ManagerRedirectError) Error() string { // Maskable denotes the type of this error func (mr ManagerRedirectError) Maskable() {} + +// ErrDataStoreNotInitialized is returned if an invalid data scope is passed +// for getting data store +type ErrDataStoreNotInitialized string + +func (dsni ErrDataStoreNotInitialized) Error() string { + return fmt.Sprintf("datastore for scope %q is not initialized", string(dsni)) +} diff --git a/libnetwork/store.go b/libnetwork/store.go index 8df4f6918a..58e1d852f1 100644 --- a/libnetwork/store.go +++ b/libnetwork/store.go @@ -225,7 +225,7 @@ func (n *network) getEndpointsFromStore() ([]*endpoint, error) { func (c *controller) updateToStore(kvObject datastore.KVObject) error { cs := c.getStore(kvObject.DataScope()) if cs == nil { - return fmt.Errorf("datastore for scope %q is not initialized ", kvObject.DataScope()) + return ErrDataStoreNotInitialized(kvObject.DataScope()) } if err := cs.PutObjectAtomic(kvObject); err != nil { @@ -241,7 +241,7 @@ func (c *controller) updateToStore(kvObject datastore.KVObject) error { func (c *controller) deleteFromStore(kvObject datastore.KVObject) error { cs := c.getStore(kvObject.DataScope()) if cs == nil { - return fmt.Errorf("datastore for scope %q is not initialized ", kvObject.DataScope()) + return ErrDataStoreNotInitialized(kvObject.DataScope()) } retry: