From 73eb687a46cab0d3d9d679e1af8a7a13353bcd11 Mon Sep 17 00:00:00 2001 From: Patrick Venture Date: Mon, 1 Oct 2018 18:37:34 -0700 Subject: manager: return abstract base type Unit-tests later required knowing the vtable for a BlobManager, and this should avoid that needless complication. Change-Id: I7a208d08c2065b7383fd5095e00d17c1ab3b0cf5 Signed-off-by: Patrick Venture --- blobs-ipmid/manager.hpp | 2 +- example/example.cpp | 2 +- main.cpp | 5 ++--- manager.cpp | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/blobs-ipmid/manager.hpp b/blobs-ipmid/manager.hpp index 14c8b98..884271c 100644 --- a/blobs-ipmid/manager.hpp +++ b/blobs-ipmid/manager.hpp @@ -256,6 +256,6 @@ class BlobManager : public ManagerInterface * * @return a pointer to the BlobManager instance. */ -BlobManager* getBlobManager(); +ManagerInterface* getBlobManager(); } // namespace blobs diff --git a/example/example.cpp b/example/example.cpp index 9209798..c17d71d 100644 --- a/example/example.cpp +++ b/example/example.cpp @@ -174,7 +174,7 @@ void setupExampleHandler() __attribute__((constructor)); void setupExampleHandler() { - BlobManager* manager = getBlobManager(); + auto* manager = getBlobManager(); if (!manager->registerHandler(std::make_unique())) { log("Failed to register Example Handler"); diff --git a/main.cpp b/main.cpp index f897fda..c6b5b04 100644 --- a/main.cpp +++ b/main.cpp @@ -55,9 +55,8 @@ static ipmi_ret_t handleBlobCommand(ipmi_cmd_t cmd, const uint8_t* reqBuf, return IPMI_CC_INVALID; } - BlobManager* manager = getBlobManager(); - return processBlobCommand(command, manager, &crc, reqBuf, replyCmdBuf, - dataLen); + return processBlobCommand(command, getBlobManager(), &crc, reqBuf, + replyCmdBuf, dataLen); } /* TODO: this should come from the makefile or recipe... */ diff --git a/manager.cpp b/manager.cpp index 5ab7eb3..6a94c1a 100644 --- a/manager.cpp +++ b/manager.cpp @@ -347,7 +347,7 @@ bool BlobManager::getSession(uint16_t* sess) static std::unique_ptr manager; -BlobManager* getBlobManager() +ManagerInterface* getBlobManager() { if (manager == nullptr) { -- cgit v1.2.3