diff --git a/src/Ganeti/DataCollectors/Drbd.hs b/src/Ganeti/DataCollectors/Drbd.hs index 944808c28b5cff7752cb65973bd12a666d8e5d6b..0d74508a5c73dbec6d81f2a896662cf52b63724d 100644 --- a/src/Ganeti/DataCollectors/Drbd.hs +++ b/src/Ganeti/DataCollectors/Drbd.hs @@ -137,17 +137,6 @@ computeStatus (DRBDStatus _ devInfos) = (code, strList) = foldr mergeStatuses (DCSCOk, [""]) statuses in DCStatus code $ intercalate "\n" strList --- | Helper function for merging statuses. -mergeStatuses :: (DCStatusCode, String) -> (DCStatusCode, [String]) - -> (DCStatusCode, [String]) -mergeStatuses (newStat, newStr) (storedStat, storedStrs) = - let resStat = max newStat storedStat - resStrs = - if newStr == "" - then storedStrs - else storedStrs ++ [newStr] - in (resStat, resStrs) - -- | Compute the status of a DRBD device and its error message. computeDevStatus :: DeviceInfo -> (DCStatusCode, String) computeDevStatus (UnconfiguredDevice _) = (DCSCOk, "") diff --git a/src/Ganeti/DataCollectors/Types.hs b/src/Ganeti/DataCollectors/Types.hs index 06263638f92eb2c62e0d4c67a73c1b1ba4b5c57e..80df40c58b292ef6e8bd1a9268037b29317922e3 100644 --- a/src/Ganeti/DataCollectors/Types.hs +++ b/src/Ganeti/DataCollectors/Types.hs @@ -34,6 +34,7 @@ module Ganeti.DataCollectors.Types , DCStatusCode(..) , DCVersion(..) , buildReport + , mergeStatuses ) where import Data.Char @@ -116,6 +117,17 @@ addStatus dcStatus value = makeObj , ("data", value) ] +-- | Helper function for merging statuses. +mergeStatuses :: (DCStatusCode, String) -> (DCStatusCode, [String]) + -> (DCStatusCode, [String]) +mergeStatuses (newStat, newStr) (storedStat, storedStrs) = + let resStat = max newStat storedStat + resStrs = + if newStr == "" + then storedStrs + else storedStrs ++ [newStr] + in (resStat, resStrs) + -- | Utility function for building a report automatically adding the current -- timestamp (rounded up to seconds). -- If the version is not specified, it will be set to the value indicating