summaryrefslogtreecommitdiffstats
path: root/slobrok
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2019-11-19 12:21:05 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2019-11-20 10:16:58 +0000
commit496e5cf57060fb068a9dc73ac7ff44333a60774e (patch)
treed8482043790e6c2fc673d66d8f1c1bd340d1d421 /slobrok
parent9225d36f8a4f5a6e12b8163c47d3cad272bd833c (diff)
Remove FastOS_Time usage
Diffstat (limited to 'slobrok')
-rw-r--r--slobrok/src/vespa/slobrok/server/reserved_name.cpp21
-rw-r--r--slobrok/src/vespa/slobrok/server/reserved_name.h17
2 files changed, 27 insertions, 11 deletions
diff --git a/slobrok/src/vespa/slobrok/server/reserved_name.cpp b/slobrok/src/vespa/slobrok/server/reserved_name.cpp
index 389154f16b8..76e8738a79b 100644
--- a/slobrok/src/vespa/slobrok/server/reserved_name.cpp
+++ b/slobrok/src/vespa/slobrok/server/reserved_name.cpp
@@ -1,2 +1,23 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "reserved_name.h"
+
+using std::chrono::duration_cast;
+
+namespace slobrok {
+
+ReservedName::ReservedName(const std::string &name, const std::string &spec, bool local)
+ : NamedService(name, spec),
+ _reservedTime(steady_clock::now()),
+ isLocal(local)
+{ }
+
+bool
+ReservedName::stillReserved() const {
+ return (milliseconds() < 15000);
+}
+
+int64_t ReservedName::milliseconds() const {
+ return duration_cast<std::chrono::seconds>(steady_clock::now() - _reservedTime).count();
+}
+
+} \ No newline at end of file
diff --git a/slobrok/src/vespa/slobrok/server/reserved_name.h b/slobrok/src/vespa/slobrok/server/reserved_name.h
index 1ebed4b94dc..0b2a4c392ee 100644
--- a/slobrok/src/vespa/slobrok/server/reserved_name.h
+++ b/slobrok/src/vespa/slobrok/server/reserved_name.h
@@ -2,7 +2,7 @@
#pragma once
#include "named_service.h"
-#include <vespa/fastos/time.h>
+#include <chrono>
namespace slobrok {
@@ -18,19 +18,14 @@ namespace slobrok {
class ReservedName: public NamedService
{
private:
- FastOS_Time _reservedTime;
+ using steady_clock = std::chrono::steady_clock;
+ steady_clock::time_point _reservedTime;
+ int64_t milliseconds() const;
public:
const bool isLocal;
- ReservedName(const std::string &name, const std::string &spec, bool local)
- : NamedService(name, spec), _reservedTime(), isLocal(local)
- {
- _reservedTime.SetNow();
- }
- bool stillReserved() const {
- return (_reservedTime.MilliSecsToNow() < 15000);
- }
- int seconds() const { return _reservedTime.MilliSecsToNow() / 1000; }
+ ReservedName(const std::string &name, const std::string &spec, bool local);
+ bool stillReserved() const;
};
//-----------------------------------------------------------------------------