From 4393e075ad3f845863e27cd945ef848d49033af9 Mon Sep 17 00:00:00 2001 From: Agata Murawska <agatamurawska@google.com> Date: Mon, 24 Sep 2012 15:48:18 +0200 Subject: [PATCH] Conversion from RPC error to query status Simple conversion for queries that use live fields gathered from RPC calls. Signed-off-by: Agata Murawska <agatamurawska@google.com> Reviewed-by: Iustin Pop <iustin@google.com> --- htools/Ganeti/Query/Common.hs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/htools/Ganeti/Query/Common.hs b/htools/Ganeti/Query/Common.hs index ea70fc9f8..014957888 100644 --- a/htools/Ganeti/Query/Common.hs +++ b/htools/Ganeti/Query/Common.hs @@ -29,6 +29,7 @@ module Ganeti.Query.Common , rsMaybe , rsUnknown , missingRuntime + , rpcErrorToStatus , timeStampFields , uuidFields , serialFields @@ -45,6 +46,7 @@ import Text.JSON (JSON, showJSON) import qualified Ganeti.Constants as C import Ganeti.Config import Ganeti.Objects +import Ganeti.Rpc import Ganeti.Query.Language import Ganeti.Query.Types @@ -84,6 +86,13 @@ rsUnknown = ResultEntry RSUnknown Nothing missingRuntime :: FieldGetter a b missingRuntime = FieldRuntime (\_ _ -> ResultEntry RSNoData Nothing) +-- * Error conversion + +-- | Convert RpcError to ResultStatus +rpcErrorToStatus :: RpcError -> ResultStatus +rpcErrorToStatus (OfflineNodeError _) = RSOffline +rpcErrorToStatus _ = RSNoData + -- * Common fields -- | The list of timestamp fields. -- GitLab