{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.AppsCalendar.Types.Sum where
import Network.Google.Prelude
data EventsListOrderBy
= StartTime
| Updated
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable EventsListOrderBy
instance FromHttpApiData EventsListOrderBy where
parseQueryParam = \case
"startTime" -> Right StartTime
"updated" -> Right Updated
x -> Left ("Unable to parse EventsListOrderBy from: " <> x)
instance ToHttpApiData EventsListOrderBy where
toQueryParam = \case
StartTime -> "startTime"
Updated -> "updated"
instance FromJSON EventsListOrderBy where
parseJSON = parseJSONText "EventsListOrderBy"
instance ToJSON EventsListOrderBy where
toJSON = toJSONText
data CalendarListListMinAccessRole
= FreeBusyReader
| Owner
| Reader
| Writer
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable CalendarListListMinAccessRole
instance FromHttpApiData CalendarListListMinAccessRole where
parseQueryParam = \case
"freeBusyReader" -> Right FreeBusyReader
"owner" -> Right Owner
"reader" -> Right Reader
"writer" -> Right Writer
x -> Left ("Unable to parse CalendarListListMinAccessRole from: " <> x)
instance ToHttpApiData CalendarListListMinAccessRole where
toQueryParam = \case
FreeBusyReader -> "freeBusyReader"
Owner -> "owner"
Reader -> "reader"
Writer -> "writer"
instance FromJSON CalendarListListMinAccessRole where
parseJSON = parseJSONText "CalendarListListMinAccessRole"
instance ToJSON CalendarListListMinAccessRole where
toJSON = toJSONText
data EventsWatchOrderBy
= EWOBStartTime
| EWOBUpdated
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable EventsWatchOrderBy
instance FromHttpApiData EventsWatchOrderBy where
parseQueryParam = \case
"startTime" -> Right EWOBStartTime
"updated" -> Right EWOBUpdated
x -> Left ("Unable to parse EventsWatchOrderBy from: " <> x)
instance ToHttpApiData EventsWatchOrderBy where
toQueryParam = \case
EWOBStartTime -> "startTime"
EWOBUpdated -> "updated"
instance FromJSON EventsWatchOrderBy where
parseJSON = parseJSONText "EventsWatchOrderBy"
instance ToJSON EventsWatchOrderBy where
toJSON = toJSONText
data CalendarListWatchMinAccessRole
= CLWMARFreeBusyReader
| CLWMAROwner
| CLWMARReader
| CLWMARWriter
deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)
instance Hashable CalendarListWatchMinAccessRole
instance FromHttpApiData CalendarListWatchMinAccessRole where
parseQueryParam = \case
"freeBusyReader" -> Right CLWMARFreeBusyReader
"owner" -> Right CLWMAROwner
"reader" -> Right CLWMARReader
"writer" -> Right CLWMARWriter
x -> Left ("Unable to parse CalendarListWatchMinAccessRole from: " <> x)
instance ToHttpApiData CalendarListWatchMinAccessRole where
toQueryParam = \case
CLWMARFreeBusyReader -> "freeBusyReader"
CLWMAROwner -> "owner"
CLWMARReader -> "reader"
CLWMARWriter -> "writer"
instance FromJSON CalendarListWatchMinAccessRole where
parseJSON = parseJSONText "CalendarListWatchMinAccessRole"
instance ToJSON CalendarListWatchMinAccessRole where
toJSON = toJSONText