From 33332a05af66d06c5c0189d1adf142fe780c935e Mon Sep 17 00:00:00 2001 From: Maxim Ivanov Date: Sun, 12 Dec 2021 13:03:46 +0000 Subject: [PATCH] fixup! Extract console storage into own struct to make it more testable --- server/console_storage.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/server/console_storage.go b/server/console_storage.go index df775d1ca..aef8adbb7 100644 --- a/server/console_storage.go +++ b/server/console_storage.go @@ -42,6 +42,8 @@ type consoleStorageCursor struct { Read int32 } +var collectionSetCache = &atomic.Value{} + func (s *ConsoleStorage) DeleteStorage(ctx context.Context, in *emptypb.Empty) (*emptypb.Empty, error) { _, err := s.db.ExecContext(ctx, "TRUNCATE TABLE storage") if err != nil { @@ -397,3 +399,29 @@ func countDatabase(ctx context.Context, logger *zap.Logger, db *sql.DB, tableNam } return int32(count.Int64) } + +// Because of embedding of console.UnimplementedConsoleServer method promotion +// doesn't work, so we have to forward methods to satisfy console.ConsoleServer interface +func (s *ConsoleServer) DeleteStorage(ctx context.Context, in *emptypb.Empty) (*emptypb.Empty, error) { + return s.ConsoleStorage.DeleteStorage(ctx, in) +} + +func (s *ConsoleServer) DeleteStorageObject(ctx context.Context, in *console.DeleteStorageObjectRequest) (*emptypb.Empty, error) { + return s.ConsoleStorage.DeleteStorageObject(ctx, in) +} + +func (s *ConsoleServer) GetStorage(ctx context.Context, in *api.ReadStorageObjectId) (*api.StorageObject, error) { + return s.ConsoleStorage.GetStorage(ctx, in) +} + +func (s *ConsoleServer) ListStorageCollections(ctx context.Context, in *emptypb.Empty) (*console.StorageCollectionsList, error) { + return s.ConsoleStorage.ListStorageCollections(ctx, in) +} + +func (s *ConsoleServer) ListStorage(ctx context.Context, in *console.ListStorageRequest) (*console.StorageList, error) { + return s.ConsoleStorage.ListStorage(ctx, in) +} + +func (s *ConsoleServer) WriteStorageObject(ctx context.Context, in *console.WriteStorageObjectRequest) (*api.StorageObjectAck, error) { + return s.ConsoleStorage.WriteStorageObject(ctx, in) +} -- GitLab