Add key-value storage in persistence plugins

This commit is contained in:
Gorka Eguileor
2018-05-17 20:26:37 +02:00
parent d70ebd933d
commit 467ba49b32
8 changed files with 191 additions and 11 deletions

View File

@@ -43,6 +43,9 @@ class PersistenceDriverBase(object):
def get_connections(self, connection_id=None, volume_id=None):
raise NotImplemented()
def get_key_values(self, key):
raise NotImplemented()
def set_volume(self, volume):
self.reset_change_tracker(volume)
@@ -52,6 +55,9 @@ class PersistenceDriverBase(object):
def set_connection(self, connection):
self.reset_change_tracker(connection)
def set_key_value(self, key, value):
raise NotImplemented()
def delete_volume(self, volume):
self._set_deleted(volume)
self.reset_change_tracker(volume)
@@ -64,6 +70,9 @@ class PersistenceDriverBase(object):
self._set_deleted(connection)
self.reset_change_tracker(connection)
def delete_key_value(self, key):
raise NotImplemented()
def _set_deleted(self, resource):
resource._ovo.deleted = True
resource._ovo.deleted_at = timeutils.utcnow()