{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Network.Google.AppsActivity.Types.Product where
import Network.Google.AppsActivity.Types.Sum
import Network.Google.Prelude
data Parent =
Parent'
{ _pIsRoot :: !(Maybe Bool)
, _pId :: !(Maybe Text)
, _pTitle :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
parent
:: Parent
parent = Parent' {_pIsRoot = Nothing, _pId = Nothing, _pTitle = Nothing}
pIsRoot :: Lens' Parent (Maybe Bool)
pIsRoot = lens _pIsRoot (\ s a -> s{_pIsRoot = a})
pId :: Lens' Parent (Maybe Text)
pId = lens _pId (\ s a -> s{_pId = a})
pTitle :: Lens' Parent (Maybe Text)
pTitle = lens _pTitle (\ s a -> s{_pTitle = a})
instance FromJSON Parent where
parseJSON
= withObject "Parent"
(\ o ->
Parent' <$>
(o .:? "isRoot") <*> (o .:? "id") <*>
(o .:? "title"))
instance ToJSON Parent where
toJSON Parent'{..}
= object
(catMaybes
[("isRoot" .=) <$> _pIsRoot, ("id" .=) <$> _pId,
("title" .=) <$> _pTitle])
newtype Photo =
Photo'
{ _pURL :: Maybe Text
}
deriving (Eq, Show, Data, Typeable, Generic)
photo
:: Photo
photo = Photo' {_pURL = Nothing}
pURL :: Lens' Photo (Maybe Text)
pURL = lens _pURL (\ s a -> s{_pURL = a})
instance FromJSON Photo where
parseJSON
= withObject "Photo"
(\ o -> Photo' <$> (o .:? "url"))
instance ToJSON Photo where
toJSON Photo'{..}
= object (catMaybes [("url" .=) <$> _pURL])
data Event =
Event'
{ _ePrimaryEventType :: !(Maybe EventPrimaryEventType)
, _eUser :: !(Maybe User)
, _eEventTimeMillis :: !(Maybe (Textual Word64))
, _eRename :: !(Maybe Rename)
, _eFromUserDeletion :: !(Maybe Bool)
, _eAdditionalEventTypes :: !(Maybe [EventAdditionalEventTypesItem])
, _ePermissionChanges :: !(Maybe [PermissionChange])
, _eTarget :: !(Maybe Target)
, _eMove :: !(Maybe Move)
}
deriving (Eq, Show, Data, Typeable, Generic)
event
:: Event
event =
Event'
{ _ePrimaryEventType = Nothing
, _eUser = Nothing
, _eEventTimeMillis = Nothing
, _eRename = Nothing
, _eFromUserDeletion = Nothing
, _eAdditionalEventTypes = Nothing
, _ePermissionChanges = Nothing
, _eTarget = Nothing
, _eMove = Nothing
}
ePrimaryEventType :: Lens' Event (Maybe EventPrimaryEventType)
ePrimaryEventType
= lens _ePrimaryEventType
(\ s a -> s{_ePrimaryEventType = a})
eUser :: Lens' Event (Maybe User)
eUser = lens _eUser (\ s a -> s{_eUser = a})
eEventTimeMillis :: Lens' Event (Maybe Word64)
eEventTimeMillis
= lens _eEventTimeMillis
(\ s a -> s{_eEventTimeMillis = a})
. mapping _Coerce
eRename :: Lens' Event (Maybe Rename)
eRename = lens _eRename (\ s a -> s{_eRename = a})
eFromUserDeletion :: Lens' Event (Maybe Bool)
eFromUserDeletion
= lens _eFromUserDeletion
(\ s a -> s{_eFromUserDeletion = a})
eAdditionalEventTypes :: Lens' Event [EventAdditionalEventTypesItem]
eAdditionalEventTypes
= lens _eAdditionalEventTypes
(\ s a -> s{_eAdditionalEventTypes = a})
. _Default
. _Coerce
ePermissionChanges :: Lens' Event [PermissionChange]
ePermissionChanges
= lens _ePermissionChanges
(\ s a -> s{_ePermissionChanges = a})
. _Default
. _Coerce
eTarget :: Lens' Event (Maybe Target)
eTarget = lens _eTarget (\ s a -> s{_eTarget = a})
eMove :: Lens' Event (Maybe Move)
eMove = lens _eMove (\ s a -> s{_eMove = a})
instance FromJSON Event where
parseJSON
= withObject "Event"
(\ o ->
Event' <$>
(o .:? "primaryEventType") <*> (o .:? "user") <*>
(o .:? "eventTimeMillis")
<*> (o .:? "rename")
<*> (o .:? "fromUserDeletion")
<*> (o .:? "additionalEventTypes" .!= mempty)
<*> (o .:? "permissionChanges" .!= mempty)
<*> (o .:? "target")
<*> (o .:? "move"))
instance ToJSON Event where
toJSON Event'{..}
= object
(catMaybes
[("primaryEventType" .=) <$> _ePrimaryEventType,
("user" .=) <$> _eUser,
("eventTimeMillis" .=) <$> _eEventTimeMillis,
("rename" .=) <$> _eRename,
("fromUserDeletion" .=) <$> _eFromUserDeletion,
("additionalEventTypes" .=) <$>
_eAdditionalEventTypes,
("permissionChanges" .=) <$> _ePermissionChanges,
("target" .=) <$> _eTarget, ("move" .=) <$> _eMove])
data ListActivitiesResponse =
ListActivitiesResponse'
{ _larNextPageToken :: !(Maybe Text)
, _larActivities :: !(Maybe [Activity])
}
deriving (Eq, Show, Data, Typeable, Generic)
listActivitiesResponse
:: ListActivitiesResponse
listActivitiesResponse =
ListActivitiesResponse'
{_larNextPageToken = Nothing, _larActivities = Nothing}
larNextPageToken :: Lens' ListActivitiesResponse (Maybe Text)
larNextPageToken
= lens _larNextPageToken
(\ s a -> s{_larNextPageToken = a})
larActivities :: Lens' ListActivitiesResponse [Activity]
larActivities
= lens _larActivities
(\ s a -> s{_larActivities = a})
. _Default
. _Coerce
instance FromJSON ListActivitiesResponse where
parseJSON
= withObject "ListActivitiesResponse"
(\ o ->
ListActivitiesResponse' <$>
(o .:? "nextPageToken") <*>
(o .:? "activities" .!= mempty))
instance ToJSON ListActivitiesResponse where
toJSON ListActivitiesResponse'{..}
= object
(catMaybes
[("nextPageToken" .=) <$> _larNextPageToken,
("activities" .=) <$> _larActivities])
data PermissionChange =
PermissionChange'
{ _pcAddedPermissions :: !(Maybe [Permission])
, _pcRemovedPermissions :: !(Maybe [Permission])
}
deriving (Eq, Show, Data, Typeable, Generic)
permissionChange
:: PermissionChange
permissionChange =
PermissionChange'
{_pcAddedPermissions = Nothing, _pcRemovedPermissions = Nothing}
pcAddedPermissions :: Lens' PermissionChange [Permission]
pcAddedPermissions
= lens _pcAddedPermissions
(\ s a -> s{_pcAddedPermissions = a})
. _Default
. _Coerce
pcRemovedPermissions :: Lens' PermissionChange [Permission]
pcRemovedPermissions
= lens _pcRemovedPermissions
(\ s a -> s{_pcRemovedPermissions = a})
. _Default
. _Coerce
instance FromJSON PermissionChange where
parseJSON
= withObject "PermissionChange"
(\ o ->
PermissionChange' <$>
(o .:? "addedPermissions" .!= mempty) <*>
(o .:? "removedPermissions" .!= mempty))
instance ToJSON PermissionChange where
toJSON PermissionChange'{..}
= object
(catMaybes
[("addedPermissions" .=) <$> _pcAddedPermissions,
("removedPermissions" .=) <$> _pcRemovedPermissions])
data User =
User'
{ _uPhoto :: !(Maybe Photo)
, _uIsDeleted :: !(Maybe Bool)
, _uName :: !(Maybe Text)
, _uIsMe :: !(Maybe Bool)
, _uPermissionId :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
user
:: User
user =
User'
{ _uPhoto = Nothing
, _uIsDeleted = Nothing
, _uName = Nothing
, _uIsMe = Nothing
, _uPermissionId = Nothing
}
uPhoto :: Lens' User (Maybe Photo)
uPhoto = lens _uPhoto (\ s a -> s{_uPhoto = a})
uIsDeleted :: Lens' User (Maybe Bool)
uIsDeleted
= lens _uIsDeleted (\ s a -> s{_uIsDeleted = a})
uName :: Lens' User (Maybe Text)
uName = lens _uName (\ s a -> s{_uName = a})
uIsMe :: Lens' User (Maybe Bool)
uIsMe = lens _uIsMe (\ s a -> s{_uIsMe = a})
uPermissionId :: Lens' User (Maybe Text)
uPermissionId
= lens _uPermissionId
(\ s a -> s{_uPermissionId = a})
instance FromJSON User where
parseJSON
= withObject "User"
(\ o ->
User' <$>
(o .:? "photo") <*> (o .:? "isDeleted") <*>
(o .:? "name")
<*> (o .:? "isMe")
<*> (o .:? "permissionId"))
instance ToJSON User where
toJSON User'{..}
= object
(catMaybes
[("photo" .=) <$> _uPhoto,
("isDeleted" .=) <$> _uIsDeleted,
("name" .=) <$> _uName, ("isMe" .=) <$> _uIsMe,
("permissionId" .=) <$> _uPermissionId])
data Activity =
Activity'
{ _aSingleEvents :: !(Maybe [Event])
, _aCombinedEvent :: !(Maybe Event)
}
deriving (Eq, Show, Data, Typeable, Generic)
activity
:: Activity
activity = Activity' {_aSingleEvents = Nothing, _aCombinedEvent = Nothing}
aSingleEvents :: Lens' Activity [Event]
aSingleEvents
= lens _aSingleEvents
(\ s a -> s{_aSingleEvents = a})
. _Default
. _Coerce
aCombinedEvent :: Lens' Activity (Maybe Event)
aCombinedEvent
= lens _aCombinedEvent
(\ s a -> s{_aCombinedEvent = a})
instance FromJSON Activity where
parseJSON
= withObject "Activity"
(\ o ->
Activity' <$>
(o .:? "singleEvents" .!= mempty) <*>
(o .:? "combinedEvent"))
instance ToJSON Activity where
toJSON Activity'{..}
= object
(catMaybes
[("singleEvents" .=) <$> _aSingleEvents,
("combinedEvent" .=) <$> _aCombinedEvent])
data Rename =
Rename'
{ _rNewTitle :: !(Maybe Text)
, _rOldTitle :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
rename
:: Rename
rename = Rename' {_rNewTitle = Nothing, _rOldTitle = Nothing}
rNewTitle :: Lens' Rename (Maybe Text)
rNewTitle
= lens _rNewTitle (\ s a -> s{_rNewTitle = a})
rOldTitle :: Lens' Rename (Maybe Text)
rOldTitle
= lens _rOldTitle (\ s a -> s{_rOldTitle = a})
instance FromJSON Rename where
parseJSON
= withObject "Rename"
(\ o ->
Rename' <$>
(o .:? "newTitle") <*> (o .:? "oldTitle"))
instance ToJSON Rename where
toJSON Rename'{..}
= object
(catMaybes
[("newTitle" .=) <$> _rNewTitle,
("oldTitle" .=) <$> _rOldTitle])
data Permission =
Permission'
{ _pWithLink :: !(Maybe Bool)
, _pUser :: !(Maybe User)
, _pRole :: !(Maybe PermissionRole)
, _pName :: !(Maybe Text)
, _pType :: !(Maybe PermissionType)
, _pPermissionId :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
permission
:: Permission
permission =
Permission'
{ _pWithLink = Nothing
, _pUser = Nothing
, _pRole = Nothing
, _pName = Nothing
, _pType = Nothing
, _pPermissionId = Nothing
}
pWithLink :: Lens' Permission (Maybe Bool)
pWithLink
= lens _pWithLink (\ s a -> s{_pWithLink = a})
pUser :: Lens' Permission (Maybe User)
pUser = lens _pUser (\ s a -> s{_pUser = a})
pRole :: Lens' Permission (Maybe PermissionRole)
pRole = lens _pRole (\ s a -> s{_pRole = a})
pName :: Lens' Permission (Maybe Text)
pName = lens _pName (\ s a -> s{_pName = a})
pType :: Lens' Permission (Maybe PermissionType)
pType = lens _pType (\ s a -> s{_pType = a})
pPermissionId :: Lens' Permission (Maybe Text)
pPermissionId
= lens _pPermissionId
(\ s a -> s{_pPermissionId = a})
instance FromJSON Permission where
parseJSON
= withObject "Permission"
(\ o ->
Permission' <$>
(o .:? "withLink") <*> (o .:? "user") <*>
(o .:? "role")
<*> (o .:? "name")
<*> (o .:? "type")
<*> (o .:? "permissionId"))
instance ToJSON Permission where
toJSON Permission'{..}
= object
(catMaybes
[("withLink" .=) <$> _pWithLink,
("user" .=) <$> _pUser, ("role" .=) <$> _pRole,
("name" .=) <$> _pName, ("type" .=) <$> _pType,
("permissionId" .=) <$> _pPermissionId])
data Target =
Target'
{ _tMimeType :: !(Maybe Text)
, _tName :: !(Maybe Text)
, _tId :: !(Maybe Text)
}
deriving (Eq, Show, Data, Typeable, Generic)
target
:: Target
target = Target' {_tMimeType = Nothing, _tName = Nothing, _tId = Nothing}
tMimeType :: Lens' Target (Maybe Text)
tMimeType
= lens _tMimeType (\ s a -> s{_tMimeType = a})
tName :: Lens' Target (Maybe Text)
tName = lens _tName (\ s a -> s{_tName = a})
tId :: Lens' Target (Maybe Text)
tId = lens _tId (\ s a -> s{_tId = a})
instance FromJSON Target where
parseJSON
= withObject "Target"
(\ o ->
Target' <$>
(o .:? "mimeType") <*> (o .:? "name") <*>
(o .:? "id"))
instance ToJSON Target where
toJSON Target'{..}
= object
(catMaybes
[("mimeType" .=) <$> _tMimeType,
("name" .=) <$> _tName, ("id" .=) <$> _tId])
data Move =
Move'
{ _mAddedParents :: !(Maybe [Parent])
, _mRemovedParents :: !(Maybe [Parent])
}
deriving (Eq, Show, Data, Typeable, Generic)
move
:: Move
move = Move' {_mAddedParents = Nothing, _mRemovedParents = Nothing}
mAddedParents :: Lens' Move [Parent]
mAddedParents
= lens _mAddedParents
(\ s a -> s{_mAddedParents = a})
. _Default
. _Coerce
mRemovedParents :: Lens' Move [Parent]
mRemovedParents
= lens _mRemovedParents
(\ s a -> s{_mRemovedParents = a})
. _Default
. _Coerce
instance FromJSON Move where
parseJSON
= withObject "Move"
(\ o ->
Move' <$>
(o .:? "addedParents" .!= mempty) <*>
(o .:? "removedParents" .!= mempty))
instance ToJSON Move where
toJSON Move'{..}
= object
(catMaybes
[("addedParents" .=) <$> _mAddedParents,
("removedParents" .=) <$> _mRemovedParents])