{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE OverloadedStrings #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} -- | -- Module : Network.Google.AppsActivity.Types.Sum -- Copyright : (c) 2015 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- module Network.Google.AppsActivity.Types.Sum where import Network.Google.Prelude -- | The main type of event that occurred. data EventPrimaryEventType = EPETComment -- ^ @comment@ | EPETCreate -- ^ @create@ | EPETEdit -- ^ @edit@ | EPETEmptyTrash -- ^ @emptyTrash@ | EPETMove -- ^ @move@ | EPETPermissionChange -- ^ @permissionChange@ | EPETRename -- ^ @rename@ | EPETTrash -- ^ @trash@ | EPETUnknown -- ^ @unknown@ | EPETUntrash -- ^ @untrash@ | EPETUpload -- ^ @upload@ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic) instance Hashable EventPrimaryEventType instance FromText EventPrimaryEventType where fromText = \case "comment" -> Just EPETComment "create" -> Just EPETCreate "edit" -> Just EPETEdit "emptyTrash" -> Just EPETEmptyTrash "move" -> Just EPETMove "permissionChange" -> Just EPETPermissionChange "rename" -> Just EPETRename "trash" -> Just EPETTrash "unknown" -> Just EPETUnknown "untrash" -> Just EPETUntrash "upload" -> Just EPETUpload _ -> Nothing instance ToText EventPrimaryEventType where toText = \case EPETComment -> "comment" EPETCreate -> "create" EPETEdit -> "edit" EPETEmptyTrash -> "emptyTrash" EPETMove -> "move" EPETPermissionChange -> "permissionChange" EPETRename -> "rename" EPETTrash -> "trash" EPETUnknown -> "unknown" EPETUntrash -> "untrash" EPETUpload -> "upload" instance FromJSON EventPrimaryEventType where parseJSON = parseJSONText "EventPrimaryEventType" instance ToJSON EventPrimaryEventType where toJSON = toJSONText -- | Indicates the Google Drive permissions role. The role determines a -- user\'s ability to read, write, or comment on the file. data PermissionRole = Commenter -- ^ @commenter@ | Owner -- ^ @owner@ | Reader -- ^ @reader@ | Writer -- ^ @writer@ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic) instance Hashable PermissionRole instance FromText PermissionRole where fromText = \case "commenter" -> Just Commenter "owner" -> Just Owner "reader" -> Just Reader "writer" -> Just Writer _ -> Nothing instance ToText PermissionRole where toText = \case Commenter -> "commenter" Owner -> "owner" Reader -> "reader" Writer -> "writer" instance FromJSON PermissionRole where parseJSON = parseJSONText "PermissionRole" instance ToJSON PermissionRole where toJSON = toJSONText -- | Indicates how widely permissions are granted. data PermissionType = PTAnyone -- ^ @anyone@ | PTDomain -- ^ @domain@ | PTGroup -- ^ @group@ | PTUser -- ^ @user@ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic) instance Hashable PermissionType instance FromText PermissionType where fromText = \case "anyone" -> Just PTAnyone "domain" -> Just PTDomain "group" -> Just PTGroup "user" -> Just PTUser _ -> Nothing instance ToText PermissionType where toText = \case PTAnyone -> "anyone" PTDomain -> "domain" PTGroup -> "group" PTUser -> "user" instance FromJSON PermissionType where parseJSON = parseJSONText "PermissionType" instance ToJSON PermissionType where toJSON = toJSONText data EventAdditionalEventTypesItem = EAETIComment -- ^ @comment@ | EAETICreate -- ^ @create@ | EAETIEdit -- ^ @edit@ | EAETIEmptyTrash -- ^ @emptyTrash@ | EAETIMove -- ^ @move@ | EAETIPermissionChange -- ^ @permissionChange@ | EAETIRename -- ^ @rename@ | EAETITrash -- ^ @trash@ | EAETIUnknown -- ^ @unknown@ | EAETIUntrash -- ^ @untrash@ | EAETIUpload -- ^ @upload@ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic) instance Hashable EventAdditionalEventTypesItem instance FromText EventAdditionalEventTypesItem where fromText = \case "comment" -> Just EAETIComment "create" -> Just EAETICreate "edit" -> Just EAETIEdit "emptyTrash" -> Just EAETIEmptyTrash "move" -> Just EAETIMove "permissionChange" -> Just EAETIPermissionChange "rename" -> Just EAETIRename "trash" -> Just EAETITrash "unknown" -> Just EAETIUnknown "untrash" -> Just EAETIUntrash "upload" -> Just EAETIUpload _ -> Nothing instance ToText EventAdditionalEventTypesItem where toText = \case EAETIComment -> "comment" EAETICreate -> "create" EAETIEdit -> "edit" EAETIEmptyTrash -> "emptyTrash" EAETIMove -> "move" EAETIPermissionChange -> "permissionChange" EAETIRename -> "rename" EAETITrash -> "trash" EAETIUnknown -> "unknown" EAETIUntrash -> "untrash" EAETIUpload -> "upload" instance FromJSON EventAdditionalEventTypesItem where parseJSON = parseJSONText "EventAdditionalEventTypesItem" instance ToJSON EventAdditionalEventTypesItem where toJSON = toJSONText -- | Indicates the strategy to use when grouping singleEvents items in the -- associated combinedEvent object. data ActivitiesListGroupingStrategy = DriveUi -- ^ @driveUi@ | None -- ^ @none@ deriving (Eq,Ord,Enum,Read,Show,Data,Typeable,Generic) instance Hashable ActivitiesListGroupingStrategy instance FromText ActivitiesListGroupingStrategy where fromText = \case "driveUi" -> Just DriveUi "none" -> Just None _ -> Nothing instance ToText ActivitiesListGroupingStrategy where toText = \case DriveUi -> "driveUi" None -> "none" instance FromJSON ActivitiesListGroupingStrategy where parseJSON = parseJSONText "ActivitiesListGroupingStrategy" instance ToJSON ActivitiesListGroupingStrategy where toJSON = toJSONText