aboutsummaryrefslogtreecommitdiffstats
path: root/slobrok
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2021-09-17 08:28:59 +0000
committerArne H Juul <arnej@yahooinc.com>2021-09-17 08:28:59 +0000
commitd7a73a52260afc17662d4e4830a408d6f6c4d5cd (patch)
treed76941dd1f46f711d9dba395e64d4c40cd3a99ee /slobrok
parent13a82b4c1f733b4f2584f7de9530e8bf1a5e867d (diff)
remove unused RpcServerMap::lookupPattern, move match to RPCHooks
Diffstat (limited to 'slobrok')
-rw-r--r--slobrok/src/vespa/slobrok/server/rpc_server_map.cpp34
-rw-r--r--slobrok/src/vespa/slobrok/server/rpc_server_map.h3
-rw-r--r--slobrok/src/vespa/slobrok/server/rpchooks.cpp20
-rw-r--r--slobrok/src/vespa/slobrok/server/rpchooks.h2
4 files changed, 21 insertions, 38 deletions
diff --git a/slobrok/src/vespa/slobrok/server/rpc_server_map.cpp b/slobrok/src/vespa/slobrok/server/rpc_server_map.cpp
index 4e1759f3a0d..fcaaf57570c 100644
--- a/slobrok/src/vespa/slobrok/server/rpc_server_map.cpp
+++ b/slobrok/src/vespa/slobrok/server/rpc_server_map.cpp
@@ -35,19 +35,6 @@ RpcServerMap::remove(const std::string & name)
}
std::vector<const NamedService *>
-RpcServerMap::lookupPattern(const char *pattern) const
-{
- std::vector<const NamedService *> retval;
- for (const auto & entry : _myrpcsrv_map) {
- if (match(entry.first.c_str(), pattern)) {
- retval.push_back(entry.second.get());
- }
- }
- return retval;
-}
-
-
-std::vector<const NamedService *>
RpcServerMap::allManaged() const
{
std::vector<const NamedService *> retval;
@@ -137,27 +124,6 @@ RpcServerMap::RpcServerMap() = default;
RpcServerMap::~RpcServerMap() = default;
-bool
-RpcServerMap::match(const char *name, const char *pattern)
-{
- LOG_ASSERT(name != nullptr);
- LOG_ASSERT(pattern != nullptr);
- while (*pattern != '\0') {
- if (*name == *pattern) {
- ++name;
- ++pattern;
- } else if (*pattern == '*') {
- ++pattern;
- while (*name != '/' && *name != '\0') {
- ++name;
- }
- } else {
- return false;
- }
- }
- return (*name == *pattern);
-}
-
void
RpcServerMap::removeReservation(const std::string & name)
{
diff --git a/slobrok/src/vespa/slobrok/server/rpc_server_map.h b/slobrok/src/vespa/slobrok/server/rpc_server_map.h
index 6af8fb79783..3d2999069ea 100644
--- a/slobrok/src/vespa/slobrok/server/rpc_server_map.h
+++ b/slobrok/src/vespa/slobrok/server/rpc_server_map.h
@@ -36,8 +36,6 @@ private:
void add(NamedService *rpcsrv);
public:
- static bool match(const char *name, const char *pattern);
-
typedef std::vector<const NamedService *> RpcSrvlist;
MapSource &proxy() { return _proxy; }
@@ -45,7 +43,6 @@ public:
ManagedRpcServer *lookupManaged(const std::string & name) const;
const NamedService * lookup(const std::string & name) const;
- RpcSrvlist lookupPattern(const char *pattern) const;
RpcSrvlist allManaged() const;
void addNew(std::unique_ptr<ManagedRpcServer> rpcsrv);
diff --git a/slobrok/src/vespa/slobrok/server/rpchooks.cpp b/slobrok/src/vespa/slobrok/server/rpchooks.cpp
index 39ef9d9a4eb..540060210ed 100644
--- a/slobrok/src/vespa/slobrok/server/rpchooks.cpp
+++ b/slobrok/src/vespa/slobrok/server/rpchooks.cpp
@@ -65,6 +65,24 @@ void RPCHooks::reportMetrics() {
EV_COUNT("other_reqs", _cnts.otherReqs);
}
+bool RPCHooks::match(const char *name, const char *pattern) {
+ LOG_ASSERT(name != nullptr);
+ LOG_ASSERT(pattern != nullptr);
+ while (*pattern != '\0') {
+ if (*name == *pattern) {
+ ++name;
+ ++pattern;
+ } else if (*pattern == '*') {
+ ++pattern;
+ while (*name != '/' && *name != '\0') {
+ ++name;
+ }
+ } else {
+ return false;
+ }
+ }
+ return (*name == *pattern);
+}
void RPCHooks::initRPC(FRT_Supervisor *supervisor) {
_m_reporter = std::make_unique<MetricsReport>(supervisor, *this);
@@ -365,7 +383,7 @@ void RPCHooks::rpc_lookupRpcServer(FRT_RPCRequest *req) {
auto diff = visible.makeDiffFrom(0);
std::vector<ServiceMapping> matches;
for (const auto & entry : diff.updated) {
- if (RpcServerMap::match(entry.name.c_str(), rpcserverPattern)) {
+ if (match(entry.name.c_str(), rpcserverPattern)) {
matches.push_back(entry);
}
}
diff --git a/slobrok/src/vespa/slobrok/server/rpchooks.h b/slobrok/src/vespa/slobrok/server/rpchooks.h
index e8f6c65ea47..b68eb9007a8 100644
--- a/slobrok/src/vespa/slobrok/server/rpchooks.h
+++ b/slobrok/src/vespa/slobrok/server/rpchooks.h
@@ -52,6 +52,8 @@ public:
RPCHooks(SBEnv &env, RpcServerMap& rpcsrvmap, RpcServerManager& rpcsrvman);
~RPCHooks() override;
+ static bool match(const char *name, const char *pattern);
+
void initRPC(FRT_Supervisor *supervisor);
void reportMetrics();
const Metrics& getMetrics() const { return _cnts; }