{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.OSLogin.Types.Sum where
import Network.Google.Prelude hiding (Bytes)
data PosixAccountOperatingSystemType
= OperatingSystemTypeUnspecified
| Linux
| Windows
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable PosixAccountOperatingSystemType
instance FromHttpApiData PosixAccountOperatingSystemType where
parseQueryParam = \case
"OPERATING_SYSTEM_TYPE_UNSPECIFIED" -> Right OperatingSystemTypeUnspecified
"LINUX" -> Right Linux
"WINDOWS" -> Right Windows
x -> Left ("Unable to parse PosixAccountOperatingSystemType from: " <> x)
instance ToHttpApiData PosixAccountOperatingSystemType where
toQueryParam = \case
OperatingSystemTypeUnspecified -> "OPERATING_SYSTEM_TYPE_UNSPECIFIED"
Linux -> "LINUX"
Windows -> "WINDOWS"
instance FromJSON PosixAccountOperatingSystemType where
parseJSON = parseJSONText "PosixAccountOperatingSystemType"
instance ToJSON PosixAccountOperatingSystemType where
toJSON = toJSONText
data Xgafv
= X1
| X2
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable Xgafv
instance FromHttpApiData Xgafv where
parseQueryParam = \case
"1" -> Right X1
"2" -> Right X2
x -> Left ("Unable to parse Xgafv from: " <> x)
instance ToHttpApiData Xgafv where
toQueryParam = \case
X1 -> "1"
X2 -> "2"
instance FromJSON Xgafv where
parseJSON = parseJSONText "Xgafv"
instance ToJSON Xgafv where
toJSON = toJSONText