]> granicus.if.org Git - icinga2/commitdiff
Apply clang-tidy fix 'modernize-pass-by-value'
authorGunnar Beutner <gunnar.beutner@icinga.com>
Thu, 4 Jan 2018 07:54:18 +0000 (08:54 +0100)
committerGunnar Beutner <gunnar.beutner@icinga.com>
Thu, 4 Jan 2018 11:24:57 +0000 (12:24 +0100)
101 files changed:
lib/base/array.cpp
lib/base/array.hpp
lib/base/configtype.hpp
lib/base/configwriter.cpp
lib/base/configwriter.hpp
lib/base/dictionary.cpp
lib/base/dictionary.hpp
lib/base/exception.cpp
lib/base/exception.hpp
lib/base/function.cpp
lib/base/function.hpp
lib/base/loader.hpp
lib/base/logger.cpp
lib/base/logger.hpp
lib/base/networkstream.cpp
lib/base/networkstream.hpp
lib/base/perfdatavalue.cpp
lib/base/perfdatavalue.hpp
lib/base/primitivetype.cpp
lib/base/primitivetype.hpp
lib/base/process.cpp
lib/base/process.hpp
lib/base/scriptframe.cpp
lib/base/scriptframe.hpp
lib/base/string.cpp
lib/base/string.hpp
lib/cli/consolecommand.cpp
lib/cli/consolecommand.hpp
lib/cli/troubleshootcommand.cpp
lib/config/activationcontext.cpp
lib/config/activationcontext.hpp
lib/config/applyrule.cpp
lib/config/applyrule.hpp
lib/config/configcompiler.cpp
lib/config/configcompiler.hpp
lib/config/configitem.cpp
lib/config/configitem.hpp
lib/config/expression.cpp
lib/config/expression.hpp
lib/db_ido/dbevents.cpp
lib/db_ido/dbevents.hpp
lib/db_ido/dbobject.cpp
lib/db_ido/dbobject.hpp
lib/db_ido/dbtype.cpp
lib/db_ido/dbtype.hpp
lib/db_ido/dbvalue.cpp
lib/db_ido/dbvalue.hpp
lib/db_ido_mysql/idomysqlconnection.cpp
lib/db_ido_pgsql/idopgsqlconnection.cpp
lib/icinga/compatutility.cpp
lib/icinga/compatutility.hpp
lib/icinga/scheduleddowntime.hpp
lib/icinga/service.hpp
lib/livestatus/attributefilter.cpp
lib/livestatus/attributefilter.hpp
lib/livestatus/avgaggregator.cpp
lib/livestatus/avgaggregator.hpp
lib/livestatus/column.cpp
lib/livestatus/column.hpp
lib/livestatus/filter.hpp
lib/livestatus/invavgaggregator.cpp
lib/livestatus/invavgaggregator.hpp
lib/livestatus/invsumaggregator.cpp
lib/livestatus/invsumaggregator.hpp
lib/livestatus/livestatusquery.cpp
lib/livestatus/maxaggregator.cpp
lib/livestatus/maxaggregator.hpp
lib/livestatus/minaggregator.cpp
lib/livestatus/minaggregator.hpp
lib/livestatus/negatefilter.cpp
lib/livestatus/negatefilter.hpp
lib/livestatus/stdaggregator.cpp
lib/livestatus/stdaggregator.hpp
lib/livestatus/sumaggregator.cpp
lib/livestatus/sumaggregator.hpp
lib/livestatus/zonestable.cpp
lib/methods/icingachecktask.cpp
lib/perfdata/elasticsearchwriter.cpp
lib/perfdata/elasticsearchwriter.hpp
lib/perfdata/gelfwriter.cpp
lib/perfdata/graphitewriter.cpp
lib/perfdata/influxdbwriter.cpp
lib/remote/apiaction.cpp
lib/remote/apiaction.hpp
lib/remote/apiclient.cpp
lib/remote/apiclient.hpp
lib/remote/apifunction.cpp
lib/remote/apifunction.hpp
lib/remote/eventqueue.cpp
lib/remote/eventqueue.hpp
lib/remote/httpclientconnection.cpp
lib/remote/httpclientconnection.hpp
lib/remote/httprequest.cpp
lib/remote/httprequest.hpp
lib/remote/httpresponse.cpp
lib/remote/httpresponse.hpp
lib/remote/jsonrpcconnection.cpp
lib/remote/jsonrpcconnection.hpp
lib/remote/url.cpp
tools/mkclass/classcompiler.cpp
tools/mkclass/classcompiler.hpp

index 202c9aee8a79cc8dfea3a846ab06bfb5e608d32e..dad3d39bca0037366da0b7670e280afa3c94d578 100644 (file)
@@ -86,23 +86,11 @@ void Array::Set(SizeType index, Value&& value)
  *
  * @param value The value.
  */
-void Array::Add(const Value& value)
+void Array::Add(Value value)
 {
        ObjectLock olock(this);
 
-       m_Data.push_back(value);
-}
-
-/**
- * Adds a value to the array.
- *
- * @param value The value.
- */
-void Array::Add(Value&& value)
-{
-       ObjectLock olock(this);
-
-       m_Data.emplace_back(std::move(value));
+       m_Data.push_back(std::move(value));
 }
 
 /**
@@ -164,13 +152,13 @@ bool Array::Contains(const Value& value) const
  * @param index The index
  * @param value The value to add
  */
-void Array::Insert(SizeType index, const Value& value)
+void Array::Insert(SizeType index, Value value)
 {
        ObjectLock olock(this);
 
        ASSERT(index <= m_Data.size());
 
-       m_Data.insert(m_Data.begin() + index, value);
+       m_Data.insert(m_Data.begin() + index, std::move(value));
 }
 
 /**
@@ -314,12 +302,12 @@ void Array::SetFieldByName(const String& field, const Value& value, const DebugI
        Set(index, value);
 }
 
-Array::Iterator icinga::begin(Array::Ptr x)
+Array::Iterator icinga::begin(const Array::Ptr& x)
 {
        return x->Begin();
 }
 
-Array::Iterator icinga::end(Array::Ptr x)
+Array::Iterator icinga::end(const Array::Ptr& x)
 {
        return x->End();
 }
index 716d096838d90b810b8b71d7974bf1592c548a6f..c14d95c5e686044b34e481ea00f50bc22515fc85 100644 (file)
@@ -55,8 +55,7 @@ public:
        Value Get(SizeType index) const;
        void Set(SizeType index, const Value& value);
        void Set(SizeType index, Value&& value);
-       void Add(const Value& value);
-       void Add(Value&& value);
+       void Add(Value value);
 
        Iterator Begin();
        Iterator End();
@@ -64,7 +63,7 @@ public:
        size_t GetLength() const;
        bool Contains(const Value& value) const;
 
-       void Insert(SizeType index, const Value& value);
+       void Insert(SizeType index, Value value);
        void Remove(SizeType index);
        void Remove(Iterator it);
 
@@ -118,8 +117,8 @@ private:
        std::vector<Value> m_Data; /**< The data for the array. */
 };
 
-Array::Iterator begin(Array::Ptr x);
-Array::Iterator end(Array::Ptr x);
+Array::Iterator begin(const Array::Ptr& x);
+Array::Iterator end(const Array::Ptr& x);
 
 }
 
index cf7f2b9634a10a6f70a0b16e59d08827f90be92f..b81ed5e1ca77a6efc8e8e49b11d5c4199b2e4ef1 100644 (file)
@@ -54,7 +54,8 @@ public:
        {
                std::vector<intrusive_ptr<ConfigObject> > objects = GetObjectsHelper(T::TypeInstance.get());
                std::vector<intrusive_ptr<T> > result;
-               for (const auto& object : objects) {
+               result.reserve(objects.size());
+for (const auto& object : objects) {
                        result.push_back(static_pointer_cast<T>(object));
                }
                return result;
index 364e2518e35d4994de252e8ea3bfcdf0a805ec7b..22fafde32e80e0cf528b8509c504338ddafe2abf 100644 (file)
@@ -269,8 +269,8 @@ const std::vector<String>& ConfigWriter::GetKeywords()
        return keywords;
 }
 
-ConfigIdentifier::ConfigIdentifier(const String& identifier)
-       : m_Name(identifier)
+ConfigIdentifier::ConfigIdentifier(String identifier)
+       : m_Name(std::move(identifier))
 { }
 
 String ConfigIdentifier::GetName() const
index 2649b8536ee1a9229c714e63f5ffd483734c619d..0ae4d92a52b90f35a214379e7e7ed47709a7bab4 100644 (file)
@@ -38,7 +38,7 @@ class ConfigIdentifier final : public Object
 public:
        DECLARE_PTR_TYPEDEFS(ConfigIdentifier);
 
-       ConfigIdentifier(const String& name);
+       ConfigIdentifier(String name);
 
        String GetName() const;
 
index 76c9b2b4a86ebb47192282efe3aa70c8b9eddc94..6726150c0df5dce5c663201d9f6f721fa1c87bd1 100644 (file)
@@ -79,20 +79,7 @@ bool Dictionary::Get(const String& key, Value *result) const
  * @param key The key.
  * @param value The value.
  */
-void Dictionary::Set(const String& key, const Value& value)
-{
-       ObjectLock olock(this);
-
-       m_Data[key] = value;
-}
-
-/**
- * Sets a value in the dictionary.
- *
- * @param key The key.
- * @param value The value.
- */
-void Dictionary::Set(const String& key, Value&& value)
+void Dictionary::Set(const String& key, Value value)
 {
        ObjectLock olock(this);
 
@@ -282,12 +269,12 @@ bool Dictionary::GetOwnField(const String& field, Value *result) const
        return Get(field, result);
 }
 
-Dictionary::Iterator icinga::begin(Dictionary::Ptr x)
+Dictionary::Iterator icinga::begin(const Dictionary::Ptr& x)
 {
        return x->Begin();
 }
 
-Dictionary::Iterator icinga::end(Dictionary::Ptr x)
+Dictionary::Iterator icinga::end(const Dictionary::Ptr& x)
 {
        return x->End();
 }
index b2627b4860e2640344c82d2b19037597a17cd0f7..26c7c6a237dca1fd6780fe0496dd96c18b4dc71d 100644 (file)
@@ -55,8 +55,7 @@ public:
 
        Value Get(const String& key) const;
        bool Get(const String& key, Value *result) const;
-       void Set(const String& key, const Value& value);
-       void Set(const String& key, Value&& value);
+       void Set(const String& key, Value value);
        bool Contains(const String& key) const;
 
        Iterator Begin();
@@ -90,8 +89,8 @@ private:
        std::map<String, Value> m_Data; /**< The data for the dictionary. */
 };
 
-Dictionary::Iterator begin(Dictionary::Ptr x);
-Dictionary::Iterator end(Dictionary::Ptr x);
+Dictionary::Iterator begin(const Dictionary::Ptr& x);
+Dictionary::Iterator end(const Dictionary::Ptr& x);
 
 }
 
index 98bcd4241f2a525404cc60b51618667e3955478c..ceddeecbe18941b1d31d2e554ef41e5d55848326 100644 (file)
@@ -260,7 +260,7 @@ String icinga::DiagnosticInformation(const std::exception& ex, bool verbose, Sta
        return result.str();
 }
 
-String icinga::DiagnosticInformation(boost::exception_ptr eptr, bool verbose)
+String icinga::DiagnosticInformation(const boost::exception_ptr& eptr, bool verbose)
 {
        StackTrace *pt = GetLastExceptionStack();
        StackTrace stack;
@@ -283,12 +283,12 @@ String icinga::DiagnosticInformation(boost::exception_ptr eptr, bool verbose)
        return boost::diagnostic_information(eptr);
 }
 
-ScriptError::ScriptError(const String& message)
-       : m_Message(message), m_IncompleteExpr(false)
+ScriptError::ScriptError(String message)
+       : m_Message(std::move(message)), m_IncompleteExpr(false)
 { }
 
-ScriptError::ScriptError(const String& message, const DebugInfo& di, bool incompleteExpr)
-       : m_Message(message), m_DebugInfo(di), m_IncompleteExpr(incompleteExpr), m_HandledByDebugger(false)
+ScriptError::ScriptError(String message, DebugInfo di, bool incompleteExpr)
+       : m_Message(std::move(message)), m_DebugInfo(std::move(di)), m_IncompleteExpr(incompleteExpr), m_HandledByDebugger(false)
 { }
 
 ScriptError::~ScriptError() throw()
index 9c26c746855b1bc59c6ac759bb09765589199943..208ac1d539e1ba964032c1e427f57247e5549a10 100644 (file)
@@ -51,8 +51,8 @@ class user_error : virtual public std::exception, virtual public boost::exceptio
 class ScriptError : virtual public user_error
 {
 public:
-       ScriptError(const String& message);
-       ScriptError(const String& message, const DebugInfo& di, bool incompleteExpr = false);
+       ScriptError(String message);
+       ScriptError(String message, DebugInfo di, bool incompleteExpr = false);
        ~ScriptError() throw() override;
 
        const char *what(void) const throw() final;
@@ -121,7 +121,7 @@ inline std::string to_string(const ContextTraceErrorInfo& e)
 }
 
 String DiagnosticInformation(const std::exception& ex, bool verbose = true, StackTrace *stack = nullptr, ContextTrace *context = nullptr);
-String DiagnosticInformation(boost::exception_ptr eptr, bool verbose = true);
+String DiagnosticInformation(const boost::exception_ptr& eptr, bool verbose = true);
 
 class posix_error : virtual public std::exception, virtual public boost::exception {
 public:
index 8fa90a3ca204032f0af1e583311448f387bcbccb..13bf1d0758130d28e94a153c569bd5d648811072 100644 (file)
@@ -26,9 +26,9 @@ using namespace icinga;
 
 REGISTER_TYPE_WITH_PROTOTYPE(Function, Function::GetPrototype());
 
-Function::Function(const String& name, const Callback& function, const std::vector<String>& args,
+Function::Function(const String& name, Callback function, const std::vector<String>& args,
        bool side_effect_free, bool deprecated)
-       : m_Callback(function)
+       : m_Callback(std::move(function))
 {
        SetName(name, true);
        SetSideEffectFree(side_effect_free, true);
index c9fa4d5d2b41aecf130e2237a73b4f8951dd4415..b607fea140b0bd17937f95c8ec35be41164513ef 100644 (file)
@@ -68,7 +68,7 @@ public:
 private:
        Callback m_Callback;
 
-       Function(const String& name, const Callback& function, const std::vector<String>& args,
+       Function(const String& name, Callback function, const std::vector<String>& args,
                bool side_effect_free, bool deprecated);
 };
 
index 5b07b187b510dd7e6d04b63c371229ff51056f8a..d54cada1036bb58a2b0106bb3ff19ed414b5e4bb 100644 (file)
@@ -31,8 +31,8 @@ namespace icinga
 struct DeferredInitializer
 {
 public:
-       DeferredInitializer(const std::function<void ()>& callback, int priority)
-               : m_Callback(callback), m_Priority(priority)
+       DeferredInitializer(std::function<void ()> callback, int priority)
+               : m_Callback(std::move(callback)), m_Priority(priority)
        { }
 
        bool operator<(const DeferredInitializer& other) const
index 1a915b966dca75b535502677f016c9cda6bc0250..227ed36942ab557138ef485bf967c33d6addcf50 100644 (file)
@@ -194,14 +194,14 @@ void Logger::ValidateSeverity(const String& value, const ValidationUtils& utils)
        }
 }
 
-Log::Log(LogSeverity severity, const String& facility, const String& message)
-       : m_Severity(severity), m_Facility(facility)
+Log::Log(LogSeverity severity, String facility, const String& message)
+       : m_Severity(severity), m_Facility(std::move(facility))
 {
        m_Buffer << message;
 }
 
-Log::Log(LogSeverity severity, const String& facility)
-       : m_Severity(severity), m_Facility(facility)
+Log::Log(LogSeverity severity, String facility)
+       : m_Severity(severity), m_Facility(std::move(facility))
 { }
 
 /**
index 96dfd8efa022248863d137ccf4169fcdd9b56f1e..1ed79b19776198e0b1f3f9bdd183e81960aa899b 100644 (file)
@@ -111,8 +111,8 @@ public:
        Log(const Log& other) = delete;
        Log& operator=(const Log& rhs) = delete;
 
-       Log(LogSeverity severity, const String& facility, const String& message);
-       Log(LogSeverity severity, const String& facility);
+       Log(LogSeverity severity, String facility, const String& message);
+       Log(LogSeverity severity, String facility);
 
        ~Log();
 
index d9e66e8cd0b6187bb18a297cd8169f8beed4ef2c..4752b3fbf0ec2e29e2ee27125ca832d39cf6585e 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-NetworkStream::NetworkStream(const Socket::Ptr& socket)
-       : m_Socket(socket), m_Eof(false)
+NetworkStream::NetworkStream(Socket::Ptr socket)
+       : m_Socket(std::move(socket)), m_Eof(false)
 { }
 
 void NetworkStream::Close()
index 6b4f25bd646ab9c83be57af848131e06d0e233ac..edbd32f1c2663621423c2ebab95b30fd5442c74a 100644 (file)
@@ -37,7 +37,7 @@ class NetworkStream final : public Stream
 public:
        DECLARE_PTR_TYPEDEFS(NetworkStream);
 
-       NetworkStream(const Socket::Ptr& socket);
+       NetworkStream(Socket::Ptr socket);
 
        size_t Read(void *buffer, size_t count, bool allow_partial = false) override;
        void Write(const void *buffer, size_t count) override;
index 17cb183bdd42c111b3692ffefecab23aec9875a4..2c2829112c026f76d83383ebe3a03922b01013af 100644 (file)
@@ -35,7 +35,7 @@ REGISTER_SCRIPTFUNCTION_NS(System, parse_performance_data, PerfdataValue::Parse,
 PerfdataValue::PerfdataValue()
 { }
 
-PerfdataValue::PerfdataValue(String label, double value, bool counter,
+PerfdataValue::PerfdataValue(const String& label, double value, bool counter,
        const String& unit, const Value& warn, const Value& crit, const Value& min,
        const Value& max)
 {
index 35c88d1060eff81392c547fae63ded5496f0b211..c5128f8a7316952978a26cb8bc34b5186ec36ccc 100644 (file)
@@ -38,7 +38,7 @@ public:
 
        PerfdataValue();
 
-       PerfdataValue(String label, double value, bool counter = false, const String& unit = "",
+       PerfdataValue(const String& label, double value, bool counter = false, const String& unit = "",
                const Value& warn = Empty, const Value& crit = Empty,
                const Value& min = Empty, const Value& max = Empty);
 
index 6be423d5e72500f14318e84eaa6d1deaeb1ea700..9f1a6a3e85047164ec349180057f9c0487b57abf 100644 (file)
@@ -22,8 +22,8 @@
 
 using namespace icinga;
 
-PrimitiveType::PrimitiveType(const String& name, const String& base, const ObjectFactory& factory)
-       : m_Name(name), m_Base(base), m_Factory(factory)
+PrimitiveType::PrimitiveType(String name, String base, const ObjectFactory& factory)
+       : m_Name(std::move(name)), m_Base(std::move(base)), m_Factory(factory)
 { }
 
 String PrimitiveType::GetName() const
index 562399dc7286a311f76a7951b8aacb462706d029..45ae8411aa85ead897222baf7bf635954c79d49c 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 class PrimitiveType final : public Type
 {
 public:
-       PrimitiveType(const String& name, const String& base, const ObjectFactory& factory = ObjectFactory());
+       PrimitiveType(String name, String base, const ObjectFactory& factory = ObjectFactory());
 
        String GetName() const override;
        Type::Ptr GetBaseType() const override;
index fef953ddef27774be4cc45687c3c2b0230d05f36..c9cced61020ec19645542f0a5fd291cc5790c827 100644 (file)
@@ -65,8 +65,8 @@ static pid_t l_ProcessControlPID;
 static boost::once_flag l_ProcessOnceFlag = BOOST_ONCE_INIT;
 static boost::once_flag l_SpawnHelperOnceFlag = BOOST_ONCE_INIT;
 
-Process::Process(const Process::Arguments& arguments, const Dictionary::Ptr& extraEnvironment)
-       : m_Arguments(arguments), m_ExtraEnvironment(extraEnvironment), m_Timeout(600), m_AdjustPriority(false)
+Process::Process(Process::Arguments arguments, Dictionary::Ptr extraEnvironment)
+       : m_Arguments(std::move(arguments)), m_ExtraEnvironment(std::move(extraEnvironment)), m_Timeout(600), m_AdjustPriority(false)
 #ifdef _WIN32
        , m_ReadPending(false), m_ReadFailed(false), m_Overlapped()
 #endif /* _WIN32 */
index 6e62f1df705a2fd51287a2640e5bc10928252606..b5d9db4e0732a80845a90478ace44d5025a2a277 100644 (file)
@@ -66,7 +66,7 @@ public:
 
        static const std::deque<Process::Ptr>::size_type MaxTasksPerThread = 512;
 
-       Process(const Arguments& arguments, const Dictionary::Ptr& extraEnvironment = nullptr);
+       Process(Arguments arguments, Dictionary::Ptr extraEnvironment = nullptr);
        ~Process() override;
 
        void SetTimeout(double timeout);
index 9ff9f046293ff3e9d7c5dcc7700b30afcc8a445f..65597a7835658cd39546669f411b153edc0c0cc5 100644 (file)
@@ -46,8 +46,8 @@ ScriptFrame::ScriptFrame(bool allocLocals)
        InitializeFrame();
 }
 
-ScriptFrame::ScriptFrame(bool allocLocals, const Value& self)
-       : Locals(allocLocals ? new Dictionary() : nullptr), Self(self), Sandboxed(false), Depth(0)
+ScriptFrame::ScriptFrame(bool allocLocals, Value self)
+       : Locals(allocLocals ? new Dictionary() : nullptr), Self(std::move(self)), Sandboxed(false), Depth(0)
 {
        InitializeFrame();
 }
index 54cb188c3a86199240d4554f9e148f139d6c842b..16a6592f503212a5f214c857d03ec07d6a83cec7 100644 (file)
@@ -37,7 +37,7 @@ struct ScriptFrame
        int Depth;
 
        ScriptFrame(bool allocLocals);
-       ScriptFrame(bool allocLocals, const Value& self);
+       ScriptFrame(bool allocLocals, Value self);
        ~ScriptFrame();
 
        void IncreaseStackDepth();
index 675f97a60166e64fb0fed499f3104d00eede821b..998a73cebe4d2cab571b406eedcce5a3369db854 100644 (file)
@@ -39,11 +39,7 @@ String::String(const char *data)
        : m_Data(data)
 { }
 
-String::String(const std::string& data)
-       : m_Data(data)
-{ }
-
-String::String(std::string&& data)
+String::String(std::string data)
        : m_Data(std::move(data))
 { }
 
index b60eb2c987bac5de16a09b23d6c9a6d7f9d724da..d8a8d7626a3de0595d4ae149d9d1e9548b2b0096 100644 (file)
@@ -60,8 +60,7 @@ public:
 
        String();
        String(const char *data);
-       String(const std::string& data);
-       String(std::string&& data);
+       String(std::string data);
        String(String::SizeType n, char c);
        String(const String& other);
        String(String&& other);
index c46944847b88f54b728c1ef7db43df8b0854d387..9225fd6d2b1235447e1b8caddc6688d587bb3b45 100644 (file)
@@ -502,7 +502,7 @@ incomplete:
 }
 
 void ConsoleCommand::ExecuteScriptCompletionHandler(boost::mutex& mutex, boost::condition_variable& cv,
-       bool& ready, boost::exception_ptr eptr, const Value& result, Value& resultOut, boost::exception_ptr& eptrOut)
+       bool& ready, const boost::exception_ptr& eptr, const Value& result, Value& resultOut, boost::exception_ptr& eptrOut)
 {
        if (eptr) {
                try {
@@ -526,7 +526,7 @@ void ConsoleCommand::ExecuteScriptCompletionHandler(boost::mutex& mutex, boost::
 }
 
 void ConsoleCommand::AutocompleteScriptCompletionHandler(boost::mutex& mutex, boost::condition_variable& cv,
-       bool& ready, boost::exception_ptr eptr, const Array::Ptr& result, Array::Ptr& resultOut)
+       bool& ready, const boost::exception_ptr& eptr, const Array::Ptr& result, Array::Ptr& resultOut)
 {
        if (eptr) {
                try {
index 6180c58a92b2bdce2b68be96d828a5590c54ce95..9369080c4b61aaeb4f21398d412ae6f74414972e 100644 (file)
@@ -55,10 +55,10 @@ private:
        mutable boost::condition_variable m_CV;
 
        static void ExecuteScriptCompletionHandler(boost::mutex& mutex, boost::condition_variable& cv,
-               bool& ready, boost::exception_ptr eptr, const Value& result, Value& resultOut,
+               bool& ready, const boost::exception_ptr& eptr, const Value& result, Value& resultOut,
                boost::exception_ptr& eptrOut);
        static void AutocompleteScriptCompletionHandler(boost::mutex& mutex, boost::condition_variable& cv,
-               bool& ready, boost::exception_ptr eptr, const Array::Ptr& result, Array::Ptr& resultOut);
+               bool& ready, const boost::exception_ptr& eptr, const Array::Ptr& result, Array::Ptr& resultOut);
 
 #ifdef HAVE_EDITLINE
        static char *ConsoleCompleteHelper(const char *word, int state);
index 2649058c8b641779e1d48f1318869ff0c86c9955..e86454225316fb9c9c47b1d59d072edd0fe67cdd 100644 (file)
@@ -324,9 +324,9 @@ bool TroubleshootCommand::CheckFeatures(InfoLog& log)
                return false;
        }
 
-       for (const String feature : disabled_features)
+       for (const String& feature : disabled_features)
                features->Set(feature, false);
-       for (const String feature : enabled_features)
+       for (const String& feature : enabled_features)
                features->Set(feature, true);
 
        InfoLogLine(log)
index 843dec092190de2acdebde0e3123e9eeadcb6883..c22f41caf140444798c2301db200880366e41f82 100644 (file)
@@ -57,8 +57,8 @@ ActivationContext::Ptr ActivationContext::GetCurrentContext()
        return astack.top();
 }
 
-ActivationScope::ActivationScope(const ActivationContext::Ptr& context)
-       : m_Context(context)
+ActivationScope::ActivationScope(ActivationContext::Ptr context)
+       : m_Context(std::move(context))
 {
        if (!m_Context)
                m_Context = new ActivationContext();
index 4040a8d3d25a8e6b1d03799e3671351f27ac75bb..c5a275631249415e4bc7124410a55f4265574b8b 100644 (file)
@@ -49,7 +49,7 @@ private:
 class ActivationScope
 {
 public:
-       ActivationScope(const ActivationContext::Ptr& context = nullptr);
+       ActivationScope(ActivationContext::Ptr context = nullptr);
        ~ActivationScope();
 
        ActivationContext::Ptr GetContext() const;
index 4ad2913309602095fcef2e150fc44c8b98501c80..c8f012e232934c43a8bb079c670f437abd50df1c 100644 (file)
@@ -26,11 +26,11 @@ using namespace icinga;
 ApplyRule::RuleMap ApplyRule::m_Rules;
 ApplyRule::TypeMap ApplyRule::m_Types;
 
-ApplyRule::ApplyRule(const String& targetType, const String& name, const std::shared_ptr<Expression>& expression,
-       const std::shared_ptr<Expression>& filter, const String& package, const String& fkvar, const String& fvvar, const std::shared_ptr<Expression>& fterm,
-       bool ignoreOnError, const DebugInfo& di, const Dictionary::Ptr& scope)
-       : m_TargetType(targetType), m_Name(name), m_Expression(expression), m_Filter(filter), m_Package(package), m_FKVar(fkvar),
-       m_FVVar(fvvar), m_FTerm(fterm), m_IgnoreOnError(ignoreOnError), m_DebugInfo(di), m_Scope(scope), m_HasMatches(false)
+ApplyRule::ApplyRule(String targetType, String name, std::shared_ptr<Expression> expression,
+       std::shared_ptr<Expression> filter, String package, String fkvar, String fvvar, std::shared_ptr<Expression> fterm,
+       bool ignoreOnError, DebugInfo di, Dictionary::Ptr scope)
+       : m_TargetType(std::move(targetType)), m_Name(std::move(name)), m_Expression(std::move(expression)), m_Filter(std::move(filter)), m_Package(std::move(package)), m_FKVar(std::move(fkvar)),
+       m_FVVar(std::move(fvvar)), m_FTerm(std::move(fterm)), m_IgnoreOnError(ignoreOnError), m_DebugInfo(std::move(di)), m_Scope(std::move(scope)), m_HasMatches(false)
 { }
 
 String ApplyRule::GetTargetType() const
index 1d06598c73925ee4c7850e15cf78bcfcac7ae0f6..91623df7575eabb580219ce4c628f0da6757fa55 100644 (file)
@@ -81,9 +81,9 @@ private:
        static TypeMap m_Types;
        static RuleMap m_Rules;
 
-       ApplyRule(const String& targetType, const String& name, const std::shared_ptr<Expression>& expression,
-               const std::shared_ptr<Expression>& filter, const String& package, const String& fkvar, const String& fvvar, const std::shared_ptr<Expression>& fterm,
-               bool ignoreOnError, const DebugInfo& di, const Dictionary::Ptr& scope);
+       ApplyRule(String targetType, String name, std::shared_ptr<Expression> expression,
+               std::shared_ptr<Expression> filter, String package, String fkvar, String fvvar, std::shared_ptr<Expression> fterm,
+               bool ignoreOnError, DebugInfo di, Dictionary::Ptr scope);
 };
 
 }
index 02730bc32af5a211b5c79bb1599a6e25280f4b97..f8b754bb9f250017d37ef7515fd748f395620ab1 100644 (file)
@@ -40,10 +40,10 @@ std::map<String, std::vector<ZoneFragment> > ConfigCompiler::m_ZoneDirs;
  * @param input Input stream for the configuration file.
  * @param zone The zone.
  */
-ConfigCompiler::ConfigCompiler(const String& path, std::istream *input,
-       const String& zone, const String& package)
-       : m_Path(path), m_Input(input), m_Zone(zone), m_Package(package),
-       m_Eof(false), m_OpenBraces(0)
+ConfigCompiler::ConfigCompiler(String path, std::istream *input,
+       String zone, String package)
+       : m_Path(std::move(path)), m_Input(input), m_Zone(std::move(zone)),
+       m_Package(std::move(package)), m_Eof(false), m_OpenBraces(0)
 {
        InitializeScanner();
 }
@@ -339,7 +339,8 @@ bool ConfigCompiler::HasZoneConfigAuthority(const String& zoneName)
 
        if (!empty) {
                std::vector<String> paths;
-               for (const ZoneFragment& zf : zoneDirs) {
+               paths.reserve(zoneDirs.size());
+for (const ZoneFragment& zf : zoneDirs) {
                        paths.push_back(zf.Path);
                }
 
index 3b7b1ae9776a97b8f13a6ccfebac80fe08a872b3..d4a03681efa413679d83e06f22036b850faa8073 100644 (file)
@@ -86,8 +86,8 @@ struct ZoneFragment
 class ConfigCompiler
 {
 public:
-       explicit ConfigCompiler(const String& path, std::istream *input,
-               const String& zone = String(), const String& package = String());
+       explicit ConfigCompiler(String path, std::istream *input,
+               String zone = String(), String package = String());
        virtual ~ConfigCompiler();
 
        std::unique_ptr<Expression> Compile();
index 20508c94ca33fa5c264334c3480d7ab83dfe1479..6b30bc094154fbfef53897e7f8be679fda56df42 100644 (file)
@@ -59,16 +59,16 @@ REGISTER_SCRIPTFUNCTION_NS(Internal, run_with_activation_context, &ConfigItem::R
  * @param exprl Expression list for the item.
  * @param debuginfo Debug information.
  */
-ConfigItem::ConfigItem(const Type::Ptr& type, const String& name,
-       bool abstract, const std::shared_ptr<Expression>& exprl,
-       const std::shared_ptr<Expression>& filter, bool defaultTmpl, bool ignoreOnError,
-       const DebugInfo& debuginfo, const Dictionary::Ptr& scope,
-       const String& zone, const String& package)
-       : m_Type(type), m_Name(name), m_Abstract(abstract),
-       m_Expression(exprl), m_Filter(filter),
+ConfigItem::ConfigItem(Type::Ptr type, String name,
+       bool abstract, std::shared_ptr<Expression> exprl,
+       std::shared_ptr<Expression> filter, bool defaultTmpl, bool ignoreOnError,
+       DebugInfo debuginfo, Dictionary::Ptr scope,
+       String zone, String package)
+       : m_Type(std::move(type)), m_Name(std::move(name)), m_Abstract(abstract),
+       m_Expression(std::move(exprl)), m_Filter(std::move(filter)),
        m_DefaultTmpl(defaultTmpl), m_IgnoreOnError(ignoreOnError),
-       m_DebugInfo(debuginfo), m_Scope(scope), m_Zone(zone),
-       m_Package(package)
+       m_DebugInfo(std::move(debuginfo)), m_Scope(std::move(scope)), m_Zone(std::move(zone)),
+       m_Package(std::move(package))
 {
 }
 
index 30d28c5720a477b535618d0011758741fce573e6..f560fa64d280e5aa4c2e27f5a5495286310b2f63 100644 (file)
@@ -40,12 +40,12 @@ class ConfigItem final : public Object {
 public:
        DECLARE_PTR_TYPEDEFS(ConfigItem);
 
-       ConfigItem(const Type::Ptr& type, const String& name, bool abstract,
-               const std::shared_ptr<Expression>& exprl,
-               const std::shared_ptr<Expression>& filter,
-               bool defaultTmpl, bool ignoreOnError, const DebugInfo& debuginfo,
-               const Dictionary::Ptr& scope, const String& zone,
-               const String& package);
+       ConfigItem(Type::Ptr type, String name, bool abstract,
+               std::shared_ptr<Expression> exprl,
+               std::shared_ptr<Expression> filter,
+               bool defaultTmpl, bool ignoreOnError, DebugInfo debuginfo,
+               Dictionary::Ptr scope, String zone,
+               String package);
 
        Type::Ptr GetType() const;
        String GetName() const;
index 9692655a2d3525a0891d65e32efbf2d8c90497ac..bb7fe22486904e806ef1b9c7b7da155a93d729b3 100644 (file)
@@ -101,8 +101,8 @@ void DictExpression::MakeInline()
        m_Inline = true;
 }
 
-LiteralExpression::LiteralExpression(const Value& value)
-       : m_Value(value)
+LiteralExpression::LiteralExpression(Value value)
+       : m_Value(std::move(value))
 { }
 
 ExpressionResult LiteralExpression::DoEvaluate(ScriptFrame& frame, DebugHint *dhint) const
index 7dc0876a33f969798f23f172bc59ad66c307e0ff..8c2882cdd2226f6c060006c5dd8e4c428deb874b 100644 (file)
@@ -36,8 +36,8 @@ namespace icinga
 struct DebugHint
 {
 public:
-       DebugHint(const Dictionary::Ptr& hints = nullptr)
-               : m_Hints(hints)
+       DebugHint(Dictionary::Ptr hints = nullptr)
+               : m_Hints(std::move(hints))
        { }
 
        DebugHint(Dictionary::Ptr&& hints)
@@ -154,8 +154,8 @@ struct ExpressionResult
 {
 public:
        template<typename T>
-       ExpressionResult(const T& value, ExpressionResultCode code = ResultOK)
-               : m_Value(value), m_Code(code)
+       ExpressionResult(T value, ExpressionResultCode code = ResultOK)
+               : m_Value(std::move(value)), m_Code(code)
        { }
 
        operator const Value&() const
@@ -220,8 +220,8 @@ std::unique_ptr<Expression> MakeIndexer(ScopeSpecifier scopeSpec, const String&
 class OwnedExpression final : public Expression
 {
 public:
-       OwnedExpression(const std::shared_ptr<Expression>& expression)
-               : m_Expression(expression)
+       OwnedExpression(std::shared_ptr<Expression> expression)
+               : m_Expression(std::move(expression))
        { }
 
 protected:
@@ -242,7 +242,7 @@ private:
 class LiteralExpression final : public Expression
 {
 public:
-       LiteralExpression(const Value& value = Value());
+       LiteralExpression(Value value = Value());
 
        const Value& GetValue() const
        {
@@ -269,8 +269,8 @@ inline std::unique_ptr<LiteralExpression> MakeLiteral(const Value& literal = Val
 class DebuggableExpression : public Expression
 {
 public:
-       DebuggableExpression(const DebugInfo& debugInfo = DebugInfo())
-               : m_DebugInfo(debugInfo)
+       DebuggableExpression(DebugInfo debugInfo = DebugInfo())
+               : m_DebugInfo(std::move(debugInfo))
        { }
 
 protected:
@@ -305,8 +305,8 @@ protected:
 class VariableExpression final : public DebuggableExpression
 {
 public:
-       VariableExpression(const String& variable, const DebugInfo& debugInfo = DebugInfo())
-               : DebuggableExpression(debugInfo), m_Variable(variable)
+       VariableExpression(String variable, const DebugInfo& debugInfo = DebugInfo())
+               : DebuggableExpression(debugInfo), m_Variable(std::move(variable))
        { }
 
        String GetVariable() const
@@ -768,9 +768,9 @@ protected:
 class FunctionExpression final : public DebuggableExpression
 {
 public:
-       FunctionExpression(const String& name, const std::vector<String>& args,
+       FunctionExpression(String name, std::vector<String> args,
                std::map<String, std::unique_ptr<Expression> >&& closedVars, std::unique_ptr<Expression> expression, const DebugInfo& debugInfo = DebugInfo())
-               : DebuggableExpression(debugInfo), m_Name(name), m_Args(args), m_ClosedVars(std::move(closedVars)), m_Expression(std::move(expression))
+               : DebuggableExpression(debugInfo), m_Name(std::move(name)), m_Args(std::move(args)), m_ClosedVars(std::move(closedVars)), m_Expression(std::move(expression))
        { }
 
 protected:
@@ -786,12 +786,12 @@ private:
 class ApplyExpression final : public DebuggableExpression
 {
 public:
-       ApplyExpression(const String& type, const String& target, std::unique_ptr<Expression> name,
-               std::unique_ptr<Expression> filter, const String& package, const String& fkvar, const String& fvvar,
+       ApplyExpression(String type, String target, std::unique_ptr<Expression> name,
+               std::unique_ptr<Expression> filter, String package, String fkvar, String fvvar,
                std::unique_ptr<Expression> fterm, std::map<String, std::unique_ptr<Expression> >&& closedVars, bool ignoreOnError,
                std::unique_ptr<Expression> expression, const DebugInfo& debugInfo = DebugInfo())
-               : DebuggableExpression(debugInfo), m_Type(type), m_Target(target),
-                       m_Name(std::move(name)), m_Filter(std::move(filter)), m_Package(package), m_FKVar(fkvar), m_FVVar(fvvar),
+               : DebuggableExpression(debugInfo), m_Type(std::move(type)), m_Target(std::move(target)),
+                       m_Name(std::move(name)), m_Filter(std::move(filter)), m_Package(std::move(package)), m_FKVar(std::move(fkvar)), m_FVVar(std::move(fvvar)),
                        m_FTerm(std::move(fterm)), m_IgnoreOnError(ignoreOnError), m_ClosedVars(std::move(closedVars)),
                        m_Expression(std::move(expression))
        { }
@@ -817,10 +817,10 @@ class ObjectExpression final : public DebuggableExpression
 {
 public:
        ObjectExpression(bool abstract, std::unique_ptr<Expression> type, std::unique_ptr<Expression> name, std::unique_ptr<Expression> filter,
-               const String& zone, const String& package, std::map<String, std::unique_ptr<Expression> >&& closedVars,
+               String zone, String package, std::map<String, std::unique_ptr<Expression> >&& closedVars,
                bool defaultTmpl, bool ignoreOnError, std::unique_ptr<Expression> expression, const DebugInfo& debugInfo = DebugInfo())
                : DebuggableExpression(debugInfo), m_Abstract(abstract), m_Type(std::move(type)),
-               m_Name(std::move(name)), m_Filter(std::move(filter)), m_Zone(zone), m_Package(package), m_DefaultTmpl(defaultTmpl),
+               m_Name(std::move(name)), m_Filter(std::move(filter)), m_Zone(std::move(zone)), m_Package(std::move(package)), m_DefaultTmpl(defaultTmpl),
                m_IgnoreOnError(ignoreOnError), m_ClosedVars(std::move(closedVars)), m_Expression(std::move(expression))
        { }
 
@@ -843,8 +843,8 @@ private:
 class ForExpression final : public DebuggableExpression
 {
 public:
-       ForExpression(const String& fkvar, const String& fvvar, std::unique_ptr<Expression> value, std::unique_ptr<Expression> expression, const DebugInfo& debugInfo = DebugInfo())
-               : DebuggableExpression(debugInfo), m_FKVar(fkvar), m_FVVar(fvvar), m_Value(std::move(value)), m_Expression(std::move(expression))
+       ForExpression(String fkvar, String fvvar, std::unique_ptr<Expression> value, std::unique_ptr<Expression> expression, const DebugInfo& debugInfo = DebugInfo())
+               : DebuggableExpression(debugInfo), m_FKVar(std::move(fkvar)), m_FVVar(std::move(fvvar)), m_Value(std::move(value)), m_Expression(std::move(expression))
        { }
 
 protected:
@@ -878,10 +878,10 @@ enum IncludeType
 class IncludeExpression final : public DebuggableExpression
 {
 public:
-       IncludeExpression(const String& relativeBase, std::unique_ptr<Expression> path, std::unique_ptr<Expression> pattern, std::unique_ptr<Expression> name,
-               IncludeType type, bool searchIncludes, const String& zone, const String& package, const DebugInfo& debugInfo = DebugInfo())
-               : DebuggableExpression(debugInfo), m_RelativeBase(relativeBase), m_Path(std::move(path)), m_Pattern(std::move(pattern)),
-               m_Name(std::move(name)), m_Type(type), m_SearchIncludes(searchIncludes), m_Zone(zone), m_Package(package)
+       IncludeExpression(String relativeBase, std::unique_ptr<Expression> path, std::unique_ptr<Expression> pattern, std::unique_ptr<Expression> name,
+               IncludeType type, bool searchIncludes, String zone, String package, const DebugInfo& debugInfo = DebugInfo())
+               : DebuggableExpression(debugInfo), m_RelativeBase(std::move(relativeBase)), m_Path(std::move(path)), m_Pattern(std::move(pattern)),
+               m_Name(std::move(name)), m_Type(type), m_SearchIncludes(searchIncludes), m_Zone(std::move(zone)), m_Package(std::move(package))
        { }
 
 protected:
index abe1ddfed1f50e90eebff8d22a4a480611ca9164..ab2ba3e2b06173be20b2526df88d8f683af95a8b 100644 (file)
@@ -1247,7 +1247,7 @@ void DbEvents::AddEnableFlappingChangedLogHistory(const Checkable::Ptr& checkabl
        AddLogHistory(checkable, msgbuf.str(), LogEntryTypeInfoMessage);
 }
 
-void DbEvents::AddLogHistory(const Checkable::Ptr& checkable, String buffer, LogEntryType type)
+void DbEvents::AddLogHistory(const Checkable::Ptr& checkable, const String& buffer, LogEntryType type)
 {
        Log(LogDebug, "DbEvents")
                << "add log entry history for '" << checkable->GetName() << "'";
index b651dd6006745508f2f8a515d2c2eb7eab47ea0f..db52ccf1b2253e574a9dea3c2ab2d4a67713e8d6 100644 (file)
@@ -66,7 +66,7 @@ public:
        static void AddDowntimes(const Checkable::Ptr& checkable);
        static void RemoveDowntimes(const Checkable::Ptr& checkable);
 
-       static void AddLogHistory(const Checkable::Ptr& checkable, String buffer, LogEntryType type);
+       static void AddLogHistory(const Checkable::Ptr& checkable, const String& buffer, LogEntryType type);
 
        /* Status */
        static void NextCheckUpdatedHandler(const Checkable::Ptr& checkable);
index d781756c467b37f1066a1d1ee8e5f37cf9702a6f..7a7fa92ae1d75c56f95fe32a15069242f157969d 100644 (file)
@@ -45,8 +45,8 @@ boost::signals2::signal<void (const std::vector<DbQuery>&)> DbObject::OnMultiple
 
 INITIALIZE_ONCE(&DbObject::StaticInitialize);
 
-DbObject::DbObject(const intrusive_ptr<DbType>& type, const String& name1, const String& name2)
-       : m_Name1(name1), m_Name2(name2), m_Type(type), m_LastConfigUpdate(0), m_LastStatusUpdate(0)
+DbObject::DbObject(intrusive_ptr<DbType> type, String name1, String name2)
+       : m_Name1(std::move(name1)), m_Name2(std::move(name2)), m_Type(std::move(type)), m_LastConfigUpdate(0), m_LastStatusUpdate(0)
 { }
 
 void DbObject::StaticInitialize()
index 16f23d49c9b7bccab96e069a328de3712eb5a829..a90170d74fc2689cb88fec89f52209d237f6381b 100644 (file)
@@ -93,7 +93,7 @@ public:
        virtual String CalculateConfigHash(const Dictionary::Ptr& configFields) const;
 
 protected:
-       DbObject(const intrusive_ptr<DbType>& type, const String& name1, const String& name2);
+       DbObject(intrusive_ptr<DbType> type, String name1, String name2);
 
        virtual void OnConfigUpdateHeavy();
        virtual void OnConfigUpdateLight();
index 1dc1e330115288cf0b183a85d3635ec1ce29d5b0..65b56896b48c5ed5439a473efb6ff30647d8d657 100644 (file)
@@ -25,8 +25,8 @@
 
 using namespace icinga;
 
-DbType::DbType(const String& name, const String& table, long tid, const String& idcolumn, const DbType::ObjectFactory& factory)
-       : m_Name(name), m_Table(table), m_TypeID(tid), m_IDColumn(idcolumn), m_ObjectFactory(factory)
+DbType::DbType(String name, String table, long tid, String idcolumn, DbType::ObjectFactory factory)
+       : m_Name(std::move(name)), m_Table(std::move(table)), m_TypeID(tid), m_IDColumn(std::move(idcolumn)), m_ObjectFactory(std::move(factory))
 { }
 
 String DbType::GetName() const
index cc1e9b3d24fed5d3f37d72c4c46acf2ccdcb365f..ad6f3f9575441a75de548dca70c2c4d03d88262c 100644 (file)
@@ -45,7 +45,7 @@ public:
        typedef std::map<String, DbType::Ptr> TypeMap;
        typedef std::map<std::pair<String, String>, intrusive_ptr<DbObject> > ObjectMap;
 
-       DbType(const String& name, const String& table, long tid, const String& idcolumn, const ObjectFactory& factory);
+       DbType(String name, String table, long tid, String idcolumn, ObjectFactory factory);
 
        String GetName() const;
        String GetTable() const;
index 2c4a2750f86f47a2999cff4a89ba44d97ac9784f..a626e59fedf53cc388e200d884c1a0b366752f7a 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-DbValue::DbValue(DbValueType type, const Value& value)
-       : m_Type(type), m_Value(value)
+DbValue::DbValue(DbValueType type, Value value)
+       : m_Type(type), m_Value(std::move(value))
 { }
 
 Value DbValue::FromTimestamp(const Value& ts)
index aad636ac63118a8722927d57d7317a75f44c7b2b..fcb9854097755493d3c96e3479d91fa79c0d1bd4 100644 (file)
@@ -44,7 +44,7 @@ struct DbValue final : public Object
 public:
        DECLARE_PTR_TYPEDEFS(DbValue);
 
-       DbValue(DbValueType type, const Value& value);
+       DbValue(DbValueType type, Value value);
 
        static Value FromTimestamp(const Value& ts);
        static Value FromTimestampNow();
index 481c08d04d93ade4288c6747c96cc72b4fd1dd91..af337e660ce5934a920c1c5e1fe6cb0003cae10a 100644 (file)
@@ -31,6 +31,7 @@
 #include "base/exception.hpp"
 #include "base/statsfunction.hpp"
 #include <boost/tuple/tuple.hpp>
+#include <utility>
 
 using namespace icinga;
 
@@ -132,7 +133,7 @@ void IdoMysqlConnection::ExceptionHandler(boost::exception_ptr exp)
        Log(LogCritical, "IdoMysqlConnection", "Exception during database operation: Verify that your database is operational!");
 
        Log(LogDebug, "IdoMysqlConnection")
-               << "Exception during database operation: " << DiagnosticInformation(exp);
+               << "Exception during database operation: " << DiagnosticInformation(std::move(exp));
 
        if (GetConnected()) {
                m_Mysql->close(&m_Connection);
index b89bf4d2078632f77f4fe06576bdc7d1b86d3afa..2a896285362674ccf8cc17518eaa7ea49e579c97 100644 (file)
@@ -32,6 +32,7 @@
 #include "base/context.hpp"
 #include "base/statsfunction.hpp"
 #include <boost/tuple/tuple.hpp>
+#include <utility>
 
 using namespace icinga;
 
@@ -131,7 +132,7 @@ void IdoPgsqlConnection::ExceptionHandler(boost::exception_ptr exp)
        Log(LogWarning, "IdoPgsqlConnection", "Exception during database operation: Verify that your database is operational!");
 
        Log(LogDebug, "IdoPgsqlConnection")
-               << "Exception during database operation: " << DiagnosticInformation(exp);
+               << "Exception during database operation: " << DiagnosticInformation(std::move(exp));
 
        if (GetConnected()) {
                m_Pgsql->finish(m_Connection);
index 8e5388ac13327fed34bd3a928cb9c648783fa3ed..3139e0d52a2e6aec7002df7d5e3a534a2426cb59 100644 (file)
@@ -55,7 +55,7 @@ String CompatUtility::GetCommandLine(const Command::Ptr& command)
        return result;
 }
 
-String CompatUtility::GetCommandNamePrefix(const Command::Ptr command)
+String CompatUtility::GetCommandNamePrefix(const Command::Ptr& command)
 {
        if (!command)
                return Empty;
@@ -71,7 +71,7 @@ String CompatUtility::GetCommandNamePrefix(const Command::Ptr command)
        return prefix;
 }
 
-String CompatUtility::GetCommandName(const Command::Ptr command)
+String CompatUtility::GetCommandName(const Command::Ptr& command)
 {
        if (!command)
                return Empty;
index a0a96a0ce3238b6c409452949a1a3c0494cc799d..5cfcbe7e3ebb299901a7c78ed859c9c32ada81ea 100644 (file)
@@ -41,7 +41,7 @@ class CompatUtility
 public:
        /* command */
        static String GetCommandLine(const Command::Ptr& command);
-       static String GetCommandName(const Command::Ptr command);
+       static String GetCommandName(const Command::Ptr& command);
 
        /* host */
        static int GetHostCurrentState(const Host::Ptr& host);
@@ -122,7 +122,7 @@ public:
 private:
        CompatUtility();
 
-       static String GetCommandNamePrefix(const Command::Ptr command);
+       static String GetCommandNamePrefix(const Command::Ptr& command);
 };
 
 }
index 5b8b322f559630fedf0e6556c3be75a37863e734..2b27eaaa8f3b2aff9980fda46488673954ee9c0a 100644 (file)
@@ -23,7 +23,6 @@
 #include "icinga/i2-icinga.hpp"
 #include "icinga/scheduleddowntime.thpp"
 #include "icinga/checkable.hpp"
-#include <utility>
 
 namespace icinga
 {
index dd7c54e1fc753d441a5d752e26ed77a0a44fd03f..39952a2b1347b812d40290f9aef0ce41fc8fda6e 100644 (file)
@@ -24,7 +24,6 @@
 #include "icinga/service.thpp"
 #include "icinga/macroresolver.hpp"
 #include "icinga/host.hpp"
-#include <utility>
 #include <tuple>
 
 using std::tie;
index 58050d014fc36d52310b749c0c59f30b20f5315d..35ed40cf7acb7f7a93f5b0527c315d6974e35c01 100644 (file)
@@ -27,8 +27,8 @@
 
 using namespace icinga;
 
-AttributeFilter::AttributeFilter(const String& column, const String& op, const String& operand)
-       : m_Column(column), m_Operator(op), m_Operand(operand)
+AttributeFilter::AttributeFilter(String column, String op, String operand)
+       : m_Column(std::move(column)), m_Operator(std::move(op)), m_Operand(std::move(operand))
 { }
 
 bool AttributeFilter::Apply(const Table::Ptr& table, const Value& row)
index c3a607192f098749259f6df14e34ccb01589bed5..f8220eaad85720191e4dadf9b4ae9d12662ea6aa 100644 (file)
@@ -35,7 +35,7 @@ class AttributeFilter final : public Filter
 public:
        DECLARE_PTR_TYPEDEFS(AttributeFilter);
 
-       AttributeFilter(const String& column, const String& op, const String& operand);
+       AttributeFilter(String column, String op, String operand);
 
        bool Apply(const Table::Ptr& table, const Value& row) override;
 
index 0c9af05b678c023115cc21bd9232e0618fe377a5..592aadb1c5bb6d9c281a43ab045c9f11a36d9143 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-AvgAggregator::AvgAggregator(const String& attr)
-       : m_AvgAttr(attr)
+AvgAggregator::AvgAggregator(String attr)
+       : m_AvgAttr(std::move(attr))
 { }
 
 AvgAggregatorState *AvgAggregator::EnsureState(AggregatorState **state)
index 592ac50d44860632f22e53b52ad56105f73b7a16..183ddb0594be74cfe2e4cc765ca6190c33b8dd3d 100644 (file)
@@ -47,7 +47,7 @@ class AvgAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(AvgAggregator);
 
-       AvgAggregator(const String& attr);
+       AvgAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index c4670f39809649641997416fb5789fee7f5c0dc4..8cdd4eacf8fb1fd8e44d3d6c65e21c895349f7db 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-Column::Column(const ValueAccessor& valueAccessor, const ObjectAccessor& objectAccessor)
-       : m_ValueAccessor(valueAccessor), m_ObjectAccessor(objectAccessor)
+Column::Column(ValueAccessor valueAccessor, ObjectAccessor objectAccessor)
+       : m_ValueAccessor(std::move(valueAccessor)), m_ObjectAccessor(std::move(objectAccessor))
 { }
 
 Value Column::ExtractValue(const Value& urow, LivestatusGroupByType groupByType, const Object::Ptr& groupByObject) const
index 7a0ad1c690ab5c09f8dd8888e771e97ce7aed773..4cc132ab7bc940dfe1f68d0d8190edff18f69056 100644 (file)
@@ -40,7 +40,7 @@ public:
        typedef std::function<Value (const Value&)> ValueAccessor;
        typedef std::function<Value (const Value&, LivestatusGroupByType, const Object::Ptr&)> ObjectAccessor;
 
-       Column(const ValueAccessor& valueAccessor, const ObjectAccessor& objectAccessor);
+       Column(ValueAccessor valueAccessor, ObjectAccessor objectAccessor);
 
        Value ExtractValue(const Value& urow, LivestatusGroupByType groupByType = LivestatusGroupByNone, const Object::Ptr& groupByObject = Empty) const;
 
index 71270e741f00c466c9e10e1cea87ba5778fccd0a..2febc8db348e2a5a303e1330c49adb7ed57ab735 100644 (file)
@@ -37,7 +37,7 @@ public:
        virtual bool Apply(const Table::Ptr& table, const Value& row) = 0;
 
 protected:
-       Filter();
+       Filter() = default;
 };
 
 }
index 5e739a667644643ca31c7d7b018b965a45adb326..82ed69f705f0aeb7e9f665e6c860c2c63cd204a9 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-InvAvgAggregator::InvAvgAggregator(const String& attr)
-       : m_InvAvgAttr(attr)
+InvAvgAggregator::InvAvgAggregator(String attr)
+       : m_InvAvgAttr(std::move(attr))
 { }
 
 InvAvgAggregatorState *InvAvgAggregator::EnsureState(AggregatorState **state)
index 3bfb389d1e3de4afc8af6663d23d8f142c377ee7..05a255da84b8e9e31401d090763449b332dcaf22 100644 (file)
@@ -47,7 +47,7 @@ class InvAvgAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(InvAvgAggregator);
 
-       InvAvgAggregator(const String& attr);
+       InvAvgAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index a1b3f25d381081496ea38cb44a7bcda04923f2bf..dc6eac69ce4aa185ac7491e5496feae6aeaf51fb 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-InvSumAggregator::InvSumAggregator(const String& attr)
-       : m_InvSumAttr(attr)
+InvSumAggregator::InvSumAggregator(String attr)
+       : m_InvSumAttr(std::move(attr))
 { }
 
 InvSumAggregatorState *InvSumAggregator::EnsureState(AggregatorState **state)
index 43804ac28be4c6fc1003ccd803be69d703f2f0f5..65b8d026d94d4567dba8c48f00c530954e6ba4cf 100644 (file)
@@ -46,7 +46,7 @@ class InvSumAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(InvSumAggregator);
 
-       InvSumAggregator(const String& attr);
+       InvSumAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index 62b6016c498118bf6fad7687be021e01e1ace4a3..ab33f86384d2687a193b9814c5de8fcb0ddc41da 100644 (file)
@@ -534,7 +534,7 @@ void LivestatusQuery::ExecuteGetHelper(const Stream::Ptr& stream)
 
                        int index = 0;
 
-                       for (const Aggregator::Ptr aggregator : m_Aggregators) {
+                       for (const Aggregator::Ptr& aggregator : m_Aggregators) {
                                aggregator->Apply(table, object.Row, &stats[index]);
                                index++;
                        }
index 69c83103ba4df2d41c2c7bc27d83bafdbe0e38ed..a2265430bf0c22ebaf3bf6260d187f788dc6ce54 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-MaxAggregator::MaxAggregator(const String& attr)
-       : m_MaxAttr(attr)
+MaxAggregator::MaxAggregator(String attr)
+       : m_MaxAttr(std::move(attr))
 { }
 
 MaxAggregatorState *MaxAggregator::EnsureState(AggregatorState **state)
index 9515c3d7147671a845047c2602734627e65d3f58..fd102d1f2d4ae385fab11e18d50bb8e1570035b0 100644 (file)
@@ -46,7 +46,7 @@ class MaxAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(MaxAggregator);
 
-       MaxAggregator(const String& attr);
+       MaxAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index 5060ab07187146f9ef74ebcbee5b2098d9a160a0..bf43902306d9c2557563d11ef8994b2160195ee2 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-MinAggregator::MinAggregator(const String& attr)
-       : m_MinAttr(attr)
+MinAggregator::MinAggregator(String attr)
+       : m_MinAttr(std::move(attr))
 { }
 
 MinAggregatorState *MinAggregator::EnsureState(AggregatorState **state)
index a703474f16e8360b6fad2153b7e2f10f0408258a..b9560937d6a5f854aa7a5ce0d83061b103650596 100644 (file)
@@ -47,7 +47,7 @@ class MinAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(MinAggregator);
 
-       MinAggregator(const String& attr);
+       MinAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index 82d971ba07929cc2a7c6f78545bd31bec11e3319..8a8f341c61ddeb3e9ace98245b06da650b1b547b 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-NegateFilter::NegateFilter(const Filter::Ptr& inner)
-       : m_Inner(inner)
+NegateFilter::NegateFilter(Filter::Ptr inner)
+       : m_Inner(std::move(inner))
 { }
 
 bool NegateFilter::Apply(const Table::Ptr& table, const Value& row)
index f0744a11dc66fcfddd8164f007da84093e8b086a..4a88f35e489bc49203cbd40e076af9049705014a 100644 (file)
@@ -35,7 +35,7 @@ class NegateFilter final : public Filter
 public:
        DECLARE_PTR_TYPEDEFS(NegateFilter);
 
-       NegateFilter(const Filter::Ptr& inner);
+       NegateFilter(Filter::Ptr inner);
 
        bool Apply(const Table::Ptr& table, const Value& row) override;
 
index d725006612fcdab2c6f9bc547c5e33be3499d148..8d3876e02e9a0d742362b5bb34557155e67735de 100644 (file)
@@ -22,8 +22,8 @@
 
 using namespace icinga;
 
-StdAggregator::StdAggregator(const String& attr)
-       : m_StdAttr(attr)
+StdAggregator::StdAggregator(String attr)
+       : m_StdAttr(std::move(attr))
 { }
 
 StdAggregatorState *StdAggregator::EnsureState(AggregatorState **state)
index baadf3165b90e1d07e689d40846374b1d8c5b689..75c4e3e86e54921fe48f14e0d5a0a499f930c538 100644 (file)
@@ -48,7 +48,7 @@ class StdAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(StdAggregator);
 
-       StdAggregator(const String& attr);
+       StdAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index 4aee38f77838ec6268429f42845ea31f7272dbd9..50d124f050342eb4be23d8d9230dbd94ba760c43 100644 (file)
@@ -21,8 +21,8 @@
 
 using namespace icinga;
 
-SumAggregator::SumAggregator(const String& attr)
-       : m_SumAttr(attr)
+SumAggregator::SumAggregator(String attr)
+       : m_SumAttr(std::move(attr))
 { }
 
 SumAggregatorState *SumAggregator::EnsureState(AggregatorState **state)
index 9215899eaf762ed621de484296f634f287afcb19..b2359e642e792b7a2ce8718095c3c4fd1ad3d757 100644 (file)
@@ -46,7 +46,7 @@ class SumAggregator final : public Aggregator
 public:
        DECLARE_PTR_TYPEDEFS(SumAggregator);
 
-       SumAggregator(const String& attr);
+       SumAggregator(String attr);
 
        void Apply(const Table::Ptr& table, const Value& row, AggregatorState **state) override;
        double GetResultAndFreeState(AggregatorState *state) const override;
index 87d086ae0cc777bad1e6c0bcec88a5935060f336..f94c825ea38204e0788ed3948838b9381f55c5f7 100644 (file)
@@ -91,7 +91,7 @@ Value ZonesTable::EndpointsAccessor(const Value& row)
 
        Array::Ptr endpoint_names = new Array();
 
-       for (const Endpoint::Ptr endpoint : endpoints) {
+       for (const Endpoint::Ptr& endpoint : endpoints) {
                endpoint_names->Add(endpoint->GetName());
        }
 
index 032e4feea0d16906331532bb9de51b37a99d6065..70a757a4f5627f43e5a07ccbee3734001b965d5b 100644 (file)
@@ -109,7 +109,7 @@ void IcingaCheckTask::ScriptFunc(const Checkable::Ptr& service, const CheckResul
        double bytesSentPerSecond = 0;
        double bytesReceivedPerSecond = 0;
 
-       for (Endpoint::Ptr endpoint : endpoints)
+       for (const Endpoint::Ptr& endpoint : endpoints)
        {
                if (endpoint->GetLastMessageSent() > lastMessageSent)
                        lastMessageSent = endpoint->GetLastMessageSent();
index 3a99cf132db155197922bf40706710df4064c9da..fdb0b0ce537f558dd71972e4a5bb86a959406ff9 100644 (file)
@@ -36,6 +36,7 @@
 #include "base/statsfunction.hpp"
 #include <boost/algorithm/string.hpp>
 #include <boost/scoped_array.hpp>
+#include <utility>
 
 using namespace icinga;
 
@@ -341,7 +342,7 @@ void ElasticsearchWriter::NotificationSentToAllUsersHandlerInternal(const Notifi
        Enqueue("notification", fields, ts);
 }
 
-void ElasticsearchWriter::Enqueue(String type, const Dictionary::Ptr& fields, double ts)
+void ElasticsearchWriter::Enqueue(const String& type, const Dictionary::Ptr& fields, double ts)
 {
        /* Atomically buffer the data point. */
        boost::mutex::scoped_lock lock(m_DataBufferMutex);
@@ -575,7 +576,7 @@ void ElasticsearchWriter::ExceptionHandler(boost::exception_ptr exp)
        Log(LogCritical, "ElasticsearchWriter", "Exception during Elastic operation: Verify that your backend is operational!");
 
        Log(LogDebug, "ElasticsearchWriter")
-               << "Exception during Elasticsearch operation: " << DiagnosticInformation(exp);
+               << "Exception during Elasticsearch operation: " << DiagnosticInformation(std::move(exp));
 }
 
 String ElasticsearchWriter::FormatTimestamp(double ts)
index 604ae757c728675f128340cf98954c5b10d91a1e..4779fefb21da3e8f63f6e335b1a52dc0ac9c17ad 100644 (file)
@@ -66,7 +66,7 @@ private:
                const Checkable::Ptr& checkable, const std::set<User::Ptr>& users, NotificationType type,
                const CheckResult::Ptr& cr, const String& author, const String& text);
 
-       void Enqueue(String type, const Dictionary::Ptr& fields, double ts);
+       void Enqueue(const String& type, const Dictionary::Ptr& fields, double ts);
 
        Stream::Ptr Connect();
        void AssertOnWorkQueue();
index 16fd77d9466932e4bc60b0b253dbfd8248b1ca28..490672f3364a2f953b980d21aa3bcb9e51bf577c 100644 (file)
@@ -38,6 +38,7 @@
 #include "base/json.hpp"
 #include "base/statsfunction.hpp"
 #include <boost/algorithm/string/replace.hpp>
+#include <utility>
 
 using namespace icinga;
 
@@ -122,7 +123,7 @@ void GelfWriter::ExceptionHandler(boost::exception_ptr exp)
        Log(LogCritical, "GelfWriter", "Exception during Graylog Gelf operation: Verify that your backend is operational!");
 
        Log(LogDebug, "GelfWriter")
-               << "Exception during Graylog Gelf operation: " << DiagnosticInformation(exp);
+               << "Exception during Graylog Gelf operation: " << DiagnosticInformation(std::move(exp));
 
        if (GetConnected()) {
                m_Stream->Close();
index c4721a778ef2309f5d4b2f20d2c478a9d85f74ec..bb5f20bda13864c3662379f36dda3c5d78877e57 100644 (file)
@@ -38,6 +38,7 @@
 #include <boost/algorithm/string/classification.hpp>
 #include <boost/algorithm/string/split.hpp>
 #include <boost/algorithm/string/replace.hpp>
+#include <utility>
 
 using namespace icinga;
 
@@ -119,7 +120,7 @@ void GraphiteWriter::ExceptionHandler(boost::exception_ptr exp)
        Log(LogCritical, "GraphiteWriter", "Exception during Graphite operation: Verify that your backend is operational!");
 
        Log(LogDebug, "GraphiteWriter")
-               << "Exception during Graphite operation: " << DiagnosticInformation(exp);
+               << "Exception during Graphite operation: " << DiagnosticInformation(std::move(exp));
 
        if (GetConnected()) {
                m_Stream->Close();
index 6bd99d659dd80641050931a86a2d21cb3b4b7275..5c4913818656228d3e5b7984fe822febcbcbcb92 100644 (file)
@@ -46,6 +46,7 @@
 #include <boost/math/special_functions/fpclassify.hpp>
 #include <boost/regex.hpp>
 #include <boost/scoped_array.hpp>
+#include <utility>
 
 using namespace icinga;
 
@@ -147,7 +148,7 @@ void InfluxdbWriter::ExceptionHandler(boost::exception_ptr exp)
        Log(LogCritical, "InfluxdbWriter", "Exception during InfluxDB operation: Verify that your backend is operational!");
 
        Log(LogDebug, "InfluxdbWriter")
-               << "Exception during InfluxDB operation: " << DiagnosticInformation(exp);
+               << "Exception during InfluxDB operation: " << DiagnosticInformation(std::move(exp));
 
        //TODO: Close the connection, if we keep it open.
 }
index 86f6b1f75dc88d8345aeb5f88796aeb7b8504b24..a2ad15737e859f8244a81e9e7908954e5794a792 100644 (file)
@@ -22,8 +22,8 @@
 
 using namespace icinga;
 
-ApiAction::ApiAction(const std::vector<String>& types, const Callback& action)
-       : m_Types(types), m_Callback(action)
+ApiAction::ApiAction(std::vector<String> types, Callback action)
+       : m_Types(std::move(types)), m_Callback(std::move(action))
 { }
 
 Value ApiAction::Invoke(const ConfigObject::Ptr& target, const Dictionary::Ptr& params)
index 97645b493414defa1c2b8c63c63e91374a85f1a9..9ae6b975cacc2b8ec638e0d9ec6fb7b360955755 100644 (file)
@@ -45,7 +45,7 @@ public:
 
        typedef std::function<Value(const ConfigObject::Ptr& target, const Dictionary::Ptr& params)> Callback;
 
-       ApiAction(const std::vector<String>& registerTypes, const Callback& function);
+       ApiAction(std::vector<String> registerTypes, Callback function);
 
        Value Invoke(const ConfigObject::Ptr& target, const Dictionary::Ptr& params);
 
index 2ba8070d2c4ad1445561ea598aec2f9cb58105c6..4b43d5ebc5fb883a77d39edb1d0cd2af6ca0fdf2 100644 (file)
@@ -27,8 +27,8 @@
 using namespace icinga;
 
 ApiClient::ApiClient(const String& host, const String& port,
-       const String& user, const String& password)
-       : m_Connection(new HttpClientConnection(host, port, true)), m_User(user), m_Password(password)
+       String user, String password)
+       : m_Connection(new HttpClientConnection(host, port, true)), m_User(std::move(user)), m_Password(std::move(password))
 {
        m_Connection->Start();
 }
index cd3acadfe90b7259aa3e167f3eb588b3af648fec..7507765a0a528b13aae8fbc4431ba76e3763db2f 100644 (file)
@@ -90,7 +90,7 @@ public:
        DECLARE_PTR_TYPEDEFS(ApiClient);
 
        ApiClient(const String& host, const String& port,
-               const String& user, const String& password);
+               String user, String password);
 
        typedef std::function<void(boost::exception_ptr, const std::vector<ApiType::Ptr>&)> TypesCompletionCallback;
        void GetTypes(const TypesCompletionCallback& callback) const;
index 4cafab1d7866fab4f163cc1f600746b4b2e7b7ae..b549bef29a4bb222ddf36c03040ad98e0a32fabc 100644 (file)
@@ -22,8 +22,8 @@
 
 using namespace icinga;
 
-ApiFunction::ApiFunction(const Callback& function)
-       : m_Callback(function)
+ApiFunction::ApiFunction(Callback function)
+       : m_Callback(std::move(function))
 { }
 
 Value ApiFunction::Invoke(const MessageOrigin::Ptr& origin, const Dictionary::Ptr& arguments)
index a2b652da956df75898f82fbf9f5bbf527f8fba14..8e41040ab92a4d180ca823a0e94a4c626ddbdf3e 100644 (file)
@@ -42,7 +42,7 @@ public:
 
        typedef std::function<Value(const MessageOrigin::Ptr& origin, const Dictionary::Ptr&)> Callback;
 
-       ApiFunction(const Callback& function);
+       ApiFunction(Callback function);
 
        Value Invoke(const MessageOrigin::Ptr& origin, const Dictionary::Ptr& arguments);
 
index 965f710929943e53765344846fd05c3cc273db49..80fd160591ef9d74d0534efdc68ed7b1eebf2fea 100644 (file)
@@ -24,8 +24,8 @@
 
 using namespace icinga;
 
-EventQueue::EventQueue(const String& name)
-       : m_Name(name)
+EventQueue::EventQueue(String name)
+       : m_Name(std::move(name))
 { }
 
 bool EventQueue::CanProcessEvent(const String& type) const
index b6b4f3a482e976e368405a256516a82e8dfe3012..56fe23c6f35a0b88349478f1a0675fdf4ae2ec00 100644 (file)
@@ -37,7 +37,7 @@ class EventQueue final : public Object
 public:
        DECLARE_PTR_TYPEDEFS(EventQueue);
 
-       EventQueue(const String& name);
+       EventQueue(String name);
 
        bool CanProcessEvent(const String& type) const;
        void ProcessEvent(const Dictionary::Ptr& event);
index 20ab83a6360340dafc347034236f0c7ebda73316..28d6e50fa38b60a0869487b21b8b7c0fac75b7ad 100644 (file)
@@ -31,8 +31,8 @@
 
 using namespace icinga;
 
-HttpClientConnection::HttpClientConnection(const String& host, const String& port, bool tls)
-       : m_Host(host), m_Port(port), m_Tls(tls)
+HttpClientConnection::HttpClientConnection(String host, String port, bool tls)
+       : m_Host(std::move(host)), m_Port(std::move(port)), m_Tls(tls)
 { }
 
 void HttpClientConnection::Start()
index 9b379e5a56e91b1796433590d52c9d473b4e4604..752c40c220308e1a8e706b659ee51476ce85b6c4 100644 (file)
@@ -39,7 +39,7 @@ class HttpClientConnection final : public Object
 public:
        DECLARE_PTR_TYPEDEFS(HttpClientConnection);
 
-       HttpClientConnection(const String& host, const String& port, bool tls = true);
+       HttpClientConnection(String host, String port, bool tls = true);
 
        void Start();
 
index e30d4e9ad3dd4c3b2a10a7c823d22f3ba2c96391..33fe195e1280209ca1bc064e7f6a689e89d8063b 100644 (file)
 
 using namespace icinga;
 
-HttpRequest::HttpRequest(const Stream::Ptr& stream)
+HttpRequest::HttpRequest(Stream::Ptr stream)
        : Complete(false),
        ProtocolVersion(HttpVersion11),
        Headers(new Dictionary()),
-       m_Stream(stream),
+       m_Stream(std::move(stream)),
        m_State(HttpRequestStart)
 { }
 
index 258bacdb7abebc63266af42b2010195e84c4081f..b59917283ae6ac9994591e07be8c6e10eaaa062e 100644 (file)
@@ -60,7 +60,7 @@ public:
 
        Dictionary::Ptr Headers;
 
-       HttpRequest(const Stream::Ptr& stream);
+       HttpRequest(Stream::Ptr stream);
 
        bool Parse(StreamReadContext& src, bool may_wait);
        size_t ReadBody(char *data, size_t count);
index 373d088e05597ecc1925af529785ae4323270e83..f87602a24ba8510c6280d481ddc94e6b74041520 100644 (file)
@@ -27,8 +27,8 @@
 
 using namespace icinga;
 
-HttpResponse::HttpResponse(const Stream::Ptr& stream, const HttpRequest& request)
-       : Complete(false), m_State(HttpResponseStart), m_Request(request), m_Stream(stream)
+HttpResponse::HttpResponse(Stream::Ptr stream, const HttpRequest& request)
+       : Complete(false), m_State(HttpResponseStart), m_Request(request), m_Stream(std::move(stream))
 { }
 
 void HttpResponse::SetStatus(int code, const String& message)
index 98e740a86c94862de64c87e82704277516bc4c81..5ce267bf35a12f64eb2d376b0c2dae33a50fa437 100644 (file)
@@ -52,7 +52,7 @@ public:
 
        Dictionary::Ptr Headers;
 
-       HttpResponse(const Stream::Ptr& stream, const HttpRequest& request);
+       HttpResponse(Stream::Ptr stream, const HttpRequest& request);
 
        bool Parse(StreamReadContext& src, bool may_wait);
        size_t ReadBody(char *data, size_t count);
index 4f4977f28c0f568865cda8a284baff6d4744d11d..af7c9f219ce04bf84f4670fde44e4192827a0af6 100644 (file)
@@ -42,8 +42,8 @@ static int l_JsonRpcConnectionNextID;
 static Timer::Ptr l_HeartbeatTimer;
 
 JsonRpcConnection::JsonRpcConnection(const String& identity, bool authenticated,
-       const TlsStream::Ptr& stream, ConnectionRole role)
-       : m_ID(l_JsonRpcConnectionNextID++), m_Identity(identity), m_Authenticated(authenticated), m_Stream(stream),
+       TlsStream::Ptr stream, ConnectionRole role)
+       : m_ID(l_JsonRpcConnectionNextID++), m_Identity(identity), m_Authenticated(authenticated), m_Stream(std::move(stream)),
        m_Role(role), m_Timestamp(Utility::GetTime()), m_Seen(Utility::GetTime()), m_NextHeartbeat(0), m_HeartbeatTimeout(0)
 {
        boost::call_once(l_JsonRpcConnectionOnceFlag, &JsonRpcConnection::StaticInitialize);
index 462ef627ca8063428d8ffdd785d979c9cfc0bfb8..0d16606c851d294ea21b47ca6a5a045f39e66403 100644 (file)
@@ -53,7 +53,7 @@ class JsonRpcConnection final : public Object
 public:
        DECLARE_PTR_TYPEDEFS(JsonRpcConnection);
 
-       JsonRpcConnection(const String& identity, bool authenticated, const TlsStream::Ptr& stream, ConnectionRole role);
+       JsonRpcConnection(const String& identity, bool authenticated, TlsStream::Ptr stream, ConnectionRole role);
 
        void Start();
 
index f7e068f8c4d631ed57673f1f96d1788861bdf4c2..d10a62d478900f8cf4a91996eb95a57210b7396e 100644 (file)
@@ -270,7 +270,7 @@ String Url::Format(bool onlyPathAndQuery, bool printCredentials) const
 
                        // Array
                        String temp;
-                       for (const String s : kv.second) {
+                       for (const String& s : kv.second) {
                                if (!temp.IsEmpty())
                                        temp += "&";
 
@@ -351,7 +351,7 @@ bool Url::ParsePort(const String& port)
 
 bool Url::ParsePath(const String& path)
 {
-       std::string pathStr = path;
+       const std::string& pathStr = path;
        boost::char_separator<char> sep("/");
        boost::tokenizer<boost::char_separator<char> > tokens(pathStr, sep);
 
@@ -371,7 +371,7 @@ bool Url::ParsePath(const String& path)
 bool Url::ParseQuery(const String& query)
 {
        /* Tokenizer does not like String AT ALL */
-       std::string queryStr = query;
+       const std::string& queryStr = query;
        boost::char_separator<char> sep("&");
        boost::tokenizer<boost::char_separator<char> > tokens(queryStr, sep);
 
index 047d4670b197a4155d31ec5d0ab63f0bf16f6cfe..3d48c25f5a560583a48da5c9b4132da37eab63fa 100644 (file)
@@ -24,6 +24,7 @@
 #include <stdexcept>
 #include <map>
 #include <set>
+#include <utility>
 #include <vector>
 #include <cstring>
 #include <locale>
@@ -35,9 +36,9 @@
 
 using namespace icinga;
 
-ClassCompiler::ClassCompiler(const std::string& path, std::istream& input,
+ClassCompiler::ClassCompiler(std::string path, std::istream& input,
        std::ostream& oimpl, std::ostream& oheader)
-       : m_Path(path), m_Input(input), m_Impl(oimpl), m_Header(oheader)
+       : m_Path(std::move(path)), m_Input(input), m_Impl(oimpl), m_Header(oheader)
 {
        InitializeScanner();
 }
index 67a50070d08b1595ba351aca2d476cda6ce9d157..d01d5e90c6181086d232a909d6af0e09531678c1 100644 (file)
@@ -22,6 +22,7 @@
 
 #include <string>
 #include <istream>
+#include <utility>
 #include <vector>
 #include <algorithm>
 #include <map>
@@ -53,8 +54,8 @@ struct FieldAccessor
        std::string Accessor;
        bool Pure;
 
-       FieldAccessor(FieldAccessorType type, const std::string& accessor, bool pure)
-               : Type(type), Accessor(accessor), Pure(pure)
+       FieldAccessor(FieldAccessorType type, std::string accessor, bool pure)
+               : Type(type), Accessor(std::move(accessor)), Pure(pure)
        { }
 };
 
@@ -207,7 +208,7 @@ struct Validator
 class ClassCompiler
 {
 public:
-       ClassCompiler(const std::string& path, std::istream& input, std::ostream& oimpl, std::ostream& oheader);
+       ClassCompiler(std::string path, std::istream& input, std::ostream& oimpl, std::ostream& oheader);
        ~ClassCompiler();
 
        void Compile();