diff options
author | Arne Juul <arnej@yahoo-inc.com> | 2018-10-03 18:22:20 +0000 |
---|---|---|
committer | Arne Juul <arnej@yahoo-inc.com> | 2018-10-03 18:22:20 +0000 |
commit | b66a71773cb32162a0d8b25c73c7b902620093bc (patch) | |
tree | 2320913516c49287cb6de4f2fa6fbbb84c53de3b /slobrok | |
parent | 84f9f71fac7a1c5ee86bd932d4682592627e9d41 (diff) |
rename class to something readable
Diffstat (limited to 'slobrok')
-rw-r--r-- | slobrok/src/vespa/slobrok/server/cmd.cpp | 92 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/cmd.h | 36 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/exchange_manager.cpp | 8 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/exchange_manager.h | 8 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp | 2 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/rpc_server_manager.h | 6 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/rpchooks.cpp | 4 |
7 files changed, 75 insertions, 81 deletions
diff --git a/slobrok/src/vespa/slobrok/server/cmd.cpp b/slobrok/src/vespa/slobrok/server/cmd.cpp index e728c8f80ad..dd3797e8d70 100644 --- a/slobrok/src/vespa/slobrok/server/cmd.cpp +++ b/slobrok/src/vespa/slobrok/server/cmd.cpp @@ -14,61 +14,63 @@ namespace slobrok { //----------------------------------------------------------------------------- -struct RegRpcSrvData -{ -private: - RegRpcSrvData(const RegRpcSrvData &); - RegRpcSrvData &operator=(const RegRpcSrvData &); +struct ScriptData { + SBEnv &env; + const std::string name; + const std::string spec; + FRT_RPCRequest * const registerRequest; -public: enum { RDC_INIT, XCH_WANTADD, CHK_RPCSRV, XCH_DOADD, XCH_IGNORE, RDC_INVAL } _state; - SBEnv &env; - const std::string name; - const std::string spec; - FRT_RPCRequest * const registerRequest; - - RegRpcSrvData(SBEnv &e, const std::string &n, const std::string &s, FRT_RPCRequest *r) - : _state(RDC_INIT), env(e), name(n), spec(s), registerRequest(r) + ScriptData(SBEnv &e, const std::string &n, const std::string &s, FRT_RPCRequest *r) + : env(e), name(n), spec(s), registerRequest(r), _state(RDC_INIT) {} }; -RegRpcSrvCommand::RegRpcSrvCommand(std::unique_ptr<RegRpcSrvData> data) - : _data(std::move(data)) +//----------------------------------------------------------------------------- + +const std::string & +ScriptCommand::name() { return _data->name; } + +const std::string & +ScriptCommand::spec() { return _data->spec; } + +ScriptCommand::ScriptCommand(std::unique_ptr<ScriptData> data) + : _data(std::move(data)) {} -RegRpcSrvCommand::RegRpcSrvCommand(RegRpcSrvCommand &&) = default; -RegRpcSrvCommand & RegRpcSrvCommand::operator =(RegRpcSrvCommand &&) = default; -RegRpcSrvCommand::~RegRpcSrvCommand() = default; +ScriptCommand::ScriptCommand(ScriptCommand &&) = default; +ScriptCommand& +ScriptCommand::operator= (ScriptCommand &&) = default; +ScriptCommand::~ScriptCommand() = default; -RegRpcSrvCommand -RegRpcSrvCommand::makeRegRpcSrvCmd(SBEnv &env, - const std::string &name, const std::string &spec, - FRT_RPCRequest *req) +ScriptCommand +ScriptCommand::makeRegRpcSrvCmd(SBEnv &env, + const std::string &name, const std::string &spec, + FRT_RPCRequest *req) { - return RegRpcSrvCommand(std::make_unique<RegRpcSrvData>(env, name, spec, req)); + return ScriptCommand(std::make_unique<ScriptData>(env, name, spec, req)); } -RegRpcSrvCommand -RegRpcSrvCommand::makeRemRemCmd(SBEnv &env, const std::string & name, const std::string &spec) +ScriptCommand +ScriptCommand::makeRemRemCmd(SBEnv &env, const std::string & name, const std::string &spec) { - auto data = std::make_unique<RegRpcSrvData>(env, name, spec, nullptr); - data->_state = RegRpcSrvData::XCH_IGNORE; - return RegRpcSrvCommand(std::move(data)); + auto data = std::make_unique<ScriptData>(env, name, spec, nullptr); + data->_state = ScriptData::XCH_IGNORE; + return ScriptCommand(std::move(data)); } void -RegRpcSrvCommand::doRequest() +ScriptCommand::doRequest() { - LOG_ASSERT(_data->_state == RegRpcSrvData::RDC_INIT); + LOG_ASSERT(_data->_state == ScriptData::RDC_INIT); doneHandler(OkState()); } -void -RegRpcSrvCommand::cleanupReservation(RegRpcSrvData & data) +void cleanupReservation(ScriptData & data) { RpcServerMap &map = data.env._rpcsrvmap; const ReservedName *rsvp = map.getReservation(data.name.c_str()); @@ -78,11 +80,11 @@ RegRpcSrvCommand::cleanupReservation(RegRpcSrvData & data) } void -RegRpcSrvCommand::doneHandler(OkState result) +ScriptCommand::doneHandler(OkState result) { LOG_ASSERT(_data != nullptr); - std::unique_ptr<RegRpcSrvData> dataUP = std::move(_data); - RegRpcSrvData & data = *dataUP; + std::unique_ptr<ScriptData> dataUP = std::move(_data); + ScriptData & data = *dataUP; if (result.failed()) { LOG(warning, "failed in state %d: %s", data._state, result.errorMsg.c_str()); cleanupReservation(data); @@ -93,30 +95,30 @@ RegRpcSrvCommand::doneHandler(OkState result) } else { LOG(warning, "ignored: %s", result.errorMsg.c_str()); } - goto alldone; + return; } - if (data._state == RegRpcSrvData::RDC_INIT) { + if (data._state == ScriptData::RDC_INIT) { LOG(spam, "phase wantAdd(%s,%s)", data.name.c_str(), data.spec.c_str()); - data._state = RegRpcSrvData::XCH_WANTADD; + data._state = ScriptData::XCH_WANTADD; data.env._exchanger.wantAdd(data.name.c_str(), data.spec.c_str(), std::move(dataUP)); return; - } else if (data._state == RegRpcSrvData::XCH_WANTADD) { + } else if (data._state == ScriptData::XCH_WANTADD) { LOG(spam, "phase addManaged(%s,%s)", data.name.c_str(), data.spec.c_str()); - data._state = RegRpcSrvData::CHK_RPCSRV; + data._state = ScriptData::CHK_RPCSRV; data.env._rpcsrvmanager.addManaged(data.name, data.spec.c_str(), std::move(dataUP)); return; - } else if (data._state == RegRpcSrvData::CHK_RPCSRV) { + } else if (data._state == ScriptData::CHK_RPCSRV) { LOG(spam, "phase doAdd(%s,%s)", data.name.c_str(), data.spec.c_str()); - data._state = RegRpcSrvData::XCH_DOADD; + data._state = ScriptData::XCH_DOADD; data.env._exchanger.doAdd(data.name.c_str(), data.spec.c_str(), std::move(dataUP)); return; - } else if (data._state == RegRpcSrvData::XCH_DOADD) { + } else if (data._state == ScriptData::XCH_DOADD) { LOG(debug, "done doAdd(%s,%s)", data.name.c_str(), data.spec.c_str()); - data._state = RegRpcSrvData::RDC_INVAL; + data._state = ScriptData::RDC_INVAL; // all OK data.registerRequest->Return(); goto alldone; - } else if (data._state == RegRpcSrvData::XCH_IGNORE) { + } else if (data._state == ScriptData::XCH_IGNORE) { goto alldone; } // no other state should be possible diff --git a/slobrok/src/vespa/slobrok/server/cmd.h b/slobrok/src/vespa/slobrok/server/cmd.h index 07b3d3ee0ba..02ae16e457b 100644 --- a/slobrok/src/vespa/slobrok/server/cmd.h +++ b/slobrok/src/vespa/slobrok/server/cmd.h @@ -9,34 +9,26 @@ class FRT_RPCRequest; namespace slobrok { class SBEnv; +struct ScriptData; -struct RegRpcSrvData; - -/** - * @class RegRpcSrvCommand - * @brief Small "script" to handle the various stages of a registration - * - * XXX should change name, also used for other tasks - **/ -class RegRpcSrvCommand +class ScriptCommand { private: - std::unique_ptr<RegRpcSrvData> _data; - static void cleanupReservation(RegRpcSrvData &); - RegRpcSrvCommand(std::unique_ptr<RegRpcSrvData> data); + std::unique_ptr<ScriptData> _data; + ScriptCommand(std::unique_ptr<ScriptData> data); public: - virtual void doneHandler(OkState result); - void doRequest(); + const std::string &name(); + const std::string &spec(); - RegRpcSrvCommand(RegRpcSrvCommand &&); - RegRpcSrvCommand & operator=(RegRpcSrvCommand &&); - virtual ~RegRpcSrvCommand(); + ScriptCommand(ScriptCommand &&); + ScriptCommand& operator= (ScriptCommand &&); + ~ScriptCommand(); - static RegRpcSrvCommand makeRegRpcSrvCmd(SBEnv &env, const std::string &name, const std::string &spec, FRT_RPCRequest *req); - static RegRpcSrvCommand makeRemRemCmd(SBEnv &env, const std::string &name, const std::string &spec); -}; + static ScriptCommand makeRegRpcSrvCmd(SBEnv &env, const std::string &name, const std::string &spec, FRT_RPCRequest *req); + static ScriptCommand makeRemRemCmd(SBEnv &env, const std::string &name, const std::string &spec); -//----------------------------------------------------------------------------- + void doneHandler(OkState result); + void doRequest(); +}; } // namespace slobrok - diff --git a/slobrok/src/vespa/slobrok/server/exchange_manager.cpp b/slobrok/src/vespa/slobrok/server/exchange_manager.cpp index 9c02b7bda45..b303dfcea87 100644 --- a/slobrok/src/vespa/slobrok/server/exchange_manager.cpp +++ b/slobrok/src/vespa/slobrok/server/exchange_manager.cpp @@ -70,7 +70,7 @@ void ExchangeManager::forwardRemove(const std::string & name, const std::string & spec) { WorkPackage *package = new WorkPackage(WorkPackage::OP_REMOVE, name, spec, *this, - RegRpcSrvCommand::makeRemRemCmd(_env, name, spec)); + ScriptCommand::makeRemRemCmd(_env, name, spec)); for (const auto & entry : _partners) { package->addItem(entry.second.get()); } @@ -78,7 +78,7 @@ ExchangeManager::forwardRemove(const std::string & name, const std::string & spe } void -ExchangeManager::doAdd(const std::string &name, const std::string &spec, RegRpcSrvCommand rdc) +ExchangeManager::doAdd(const std::string &name, const std::string &spec, ScriptCommand rdc) { WorkPackage *package = new WorkPackage(WorkPackage::OP_DOADD, name, spec, *this, std::move(rdc)); @@ -90,7 +90,7 @@ ExchangeManager::doAdd(const std::string &name, const std::string &spec, RegRpcS void -ExchangeManager::wantAdd(const std::string &name, const std::string &spec, RegRpcSrvCommand rdc) +ExchangeManager::wantAdd(const std::string &name, const std::string &spec, ScriptCommand rdc) { WorkPackage *package = new WorkPackage(WorkPackage::OP_WANTADD, name, spec, *this, std::move(rdc)); for (const auto & entry : _partners) { @@ -170,7 +170,7 @@ ExchangeManager::WorkPackage::WorkItem::~WorkItem() ExchangeManager::WorkPackage::WorkPackage(op_type op, const std::string & name, const std::string & spec, - ExchangeManager &exchanger, RegRpcSrvCommand donehandler) + ExchangeManager &exchanger, ScriptCommand donehandler) : _work(), _doneCnt(0), _numDenied(0), diff --git a/slobrok/src/vespa/slobrok/server/exchange_manager.h b/slobrok/src/vespa/slobrok/server/exchange_manager.h index fc691daa089..c0084c5e054 100644 --- a/slobrok/src/vespa/slobrok/server/exchange_manager.h +++ b/slobrok/src/vespa/slobrok/server/exchange_manager.h @@ -62,7 +62,7 @@ private: std::vector<std::unique_ptr<WorkItem>> _work; size_t _doneCnt; size_t _numDenied; - RegRpcSrvCommand _donehandler; + ScriptCommand _donehandler; public: ExchangeManager &_exchanger; enum op_type { OP_NOP, OP_WANTADD, OP_DOADD, OP_REMOVE }; @@ -75,7 +75,7 @@ private: WorkPackage(const WorkPackage&) = delete; WorkPackage& operator= (const WorkPackage&) = delete; WorkPackage(op_type op, const std::string & name, const std::string & spec, - ExchangeManager &exchanger, RegRpcSrvCommand donehandler); + ExchangeManager &exchanger, ScriptCommand donehandler); ~WorkPackage(); }; @@ -95,8 +95,8 @@ public: void forwardRemove(const std::string & name, const std::string & spec); - void wantAdd(const std::string & name, const std::string & spec, RegRpcSrvCommand rdc); - void doAdd(const std::string & name, const std::string & spec, RegRpcSrvCommand rdc); + void wantAdd(const std::string & name, const std::string & spec, ScriptCommand rdc); + void doAdd(const std::string & name, const std::string & spec, ScriptCommand rdc); RemoteSlobrok *lookupPartner(const std::string & name) const; void healthCheck(); diff --git a/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp b/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp index e63efd8089a..6d6b30be516 100644 --- a/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp +++ b/slobrok/src/vespa/slobrok/server/rpc_server_manager.cpp @@ -239,7 +239,7 @@ RpcServerManager::removeLocal(const std::string & name, const std::string &spec) void -RpcServerManager::addManaged(const std::string &name, const std::string &spec, RegRpcSrvCommand rdc) +RpcServerManager::addManaged(const std::string &name, const std::string &spec, ScriptCommand rdc) { auto newRpcServer = std::make_unique<ManagedRpcServer>(name, spec, *this); ManagedRpcServer & rpcsrv = *newRpcServer; diff --git a/slobrok/src/vespa/slobrok/server/rpc_server_manager.h b/slobrok/src/vespa/slobrok/server/rpc_server_manager.h index 70ca10e480d..1385648783a 100644 --- a/slobrok/src/vespa/slobrok/server/rpc_server_manager.h +++ b/slobrok/src/vespa/slobrok/server/rpc_server_manager.h @@ -38,8 +38,8 @@ private: struct MRSandRRSC { ManagedRpcServer *rpcsrv; - RegRpcSrvCommand handler; - MRSandRRSC(ManagedRpcServer *d, RegRpcSrvCommand h) + ScriptCommand handler; + MRSandRRSC(ManagedRpcServer *d, ScriptCommand h) : rpcsrv(d), handler(std::move(h)) {} }; std::vector<MRSandRRSC> _addManageds; @@ -55,7 +55,7 @@ public: OkState addMyReservation(const std::string & name, const std::string & spec); bool alreadyManaged(const std::string & name, const std::string & spec); - void addManaged(const std::string & name, const std::string & spec, RegRpcSrvCommand rdc); + void addManaged(const std::string & name, const std::string & spec, ScriptCommand rdc); OkState remove(ManagedRpcServer *rpcsrv); diff --git a/slobrok/src/vespa/slobrok/server/rpchooks.cpp b/slobrok/src/vespa/slobrok/server/rpchooks.cpp index 460b060cb82..ff1ce514084 100644 --- a/slobrok/src/vespa/slobrok/server/rpchooks.cpp +++ b/slobrok/src/vespa/slobrok/server/rpchooks.cpp @@ -269,8 +269,8 @@ RPCHooks::rpc_registerRpcServer(FRT_RPCRequest *req) } // need to actually setup management and decide result later req->Detach(); - RegRpcSrvCommand completer - = RegRpcSrvCommand::makeRegRpcSrvCmd(_env, dName, dSpec, req); + ScriptCommand completer + = ScriptCommand::makeRegRpcSrvCmd(_env, dName, dSpec, req); completer.doRequest(); } |