summaryrefslogtreecommitdiffstats
path: root/elog_meta.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'elog_meta.hpp')
-rw-r--r--elog_meta.hpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/elog_meta.hpp b/elog_meta.hpp
new file mode 100644
index 0000000..9fc591d
--- /dev/null
+++ b/elog_meta.hpp
@@ -0,0 +1,39 @@
+#pragma once
+
+#include <vector>
+#include <string>
+#include <phosphor-logging/elog-errors.hpp>
+#include "elog_entry.hpp"
+
+namespace phosphor
+{
+namespace logging
+{
+namespace metadata
+{
+
+using Metadata = std::string;
+
+namespace associations
+{
+
+using Type = void(const std::string&,
+ const std::vector<std::string>&,
+ AssociationList& list);
+
+/** @brief Build error associations specific to metadata. Specialize this
+ * template for handling a specific type of metadata.
+ * @tparam M - type of metadata
+ * @param [in] data - metadata to be handled
+ * @param [in] data - metadata key=value entries
+ * @param [out] list - list of error association objects
+ */
+template <typename M>
+void build(const std::string& match,
+ const std::vector<std::string>& data,
+ AssociationList& list) = delete;
+
+} // namespace associations
+} // namespace metadata
+} // namespace logging
+} // namespace phosphor
OpenPOWER on IntegriCloud