gogol-apps-activity (empty) → 0.0.1
raw patch · 9 files changed
+1842/−0 lines, 9 filesdep +basedep +gogol-coresetup-changed
Dependencies added: base, gogol-core
Files
- LICENSE +367/−0
- README.md +28/−0
- Setup.hs +2/−0
- gen/Network/Google/AppsActivity.hs +137/−0
- gen/Network/Google/AppsActivity/Types.hs +150/−0
- gen/Network/Google/AppsActivity/Types/Product.hs +695/−0
- gen/Network/Google/AppsActivity/Types/Sum.hs +243/−0
- gen/Network/Google/Resource/AppsActivity/Activities/List.hs +174/−0
- gogol-apps-activity.cabal +46/−0
+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+ means each individual or legal entity that creates, contributes to+ the creation of, or owns Covered Software.++1.2. "Contributor Version"+ means the combination of the Contributions of others (if any) used+ by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+ means Covered Software of a particular Contributor.++1.4. "Covered Software"+ means Source Code Form to which the initial Contributor has attached+ the notice in Exhibit A, the Executable Form of such Source Code+ Form, and Modifications of such Source Code Form, in each case+ including portions thereof.++1.5. "Incompatible With Secondary Licenses"+ means++ (a) that the initial Contributor has attached the notice described+ in Exhibit B to the Covered Software; or++ (b) that the Covered Software was made available under the terms of+ version 1.1 or earlier of the License, but not also under the+ terms of a Secondary License.++1.6. "Executable Form"+ means any form of the work other than Source Code Form.++1.7. "Larger Work"+ means a work that combines Covered Software with other material, in+ a separate file or files, that is not Covered Software.++1.8. "License"+ means this document.++1.9. "Licensable"+ means having the right to grant, to the maximum extent possible,+ whether at the time of the initial grant or subsequently, any and+ all of the rights conveyed by this License.++1.10. "Modifications"+ means any of the following:++ (a) any file in Source Code Form that results from an addition to,+ deletion from, or modification of the contents of Covered+ Software; or++ (b) any new file in Source Code Form that contains any Covered+ Software.++1.11. "Patent Claims" of a Contributor+ means any patent claim(s), including without limitation, method,+ process, and apparatus claims, in any patent Licensable by such+ Contributor that would be infringed, but for the grant of the+ License, by the making, using, selling, offering for sale, having+ made, import, or transfer of either its Contributions or its+ Contributor Version.++1.12. "Secondary License"+ means either the GNU General Public License, Version 2.0, the GNU+ Lesser General Public License, Version 2.1, the GNU Affero General+ Public License, Version 3.0, or any later versions of those+ licenses.++1.13. "Source Code Form"+ means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+ means an individual or a legal entity exercising rights under this+ License. For legal entities, "You" includes any entity that+ controls, is controlled by, or is under common control with You. For+ purposes of this definition, "control" means (a) the power, direct+ or indirect, to cause the direction or management of such entity,+ whether by contract or otherwise, or (b) ownership of more than+ fifty percent (50%) of the outstanding shares or beneficial+ ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+ Licensable by such Contributor to use, reproduce, make available,+ modify, display, perform, distribute, and otherwise exploit its+ Contributions, either on an unmodified basis, with Modifications, or+ as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+ for sale, have made, import, and otherwise transfer either its+ Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+ or++(b) for infringements caused by: (i) Your and any other third party's+ modifications of Covered Software, or (ii) the combination of its+ Contributions with other software (except as part of its Contributor+ Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+ its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+ Form, as described in Section 3.1, and You must inform recipients of+ the Executable Form how they can obtain a copy of such Source Code+ Form by reasonable means in a timely manner, at a charge no more+ than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+ License, or sublicense it under different terms, provided that the+ license for the Executable Form does not attempt to limit or alter+ the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+* *+* 6. Disclaimer of Warranty *+* ------------------------- *+* *+* Covered Software is provided under this License on an "as is" *+* basis, without warranty of any kind, either expressed, implied, or *+* statutory, including, without limitation, warranties that the *+* Covered Software is free of defects, merchantable, fit for a *+* particular purpose or non-infringing. The entire risk as to the *+* quality and performance of the Covered Software is with You. *+* Should any Covered Software prove defective in any respect, You *+* (not any Contributor) assume the cost of any necessary servicing, *+* repair, or correction. This disclaimer of warranty constitutes an *+* essential part of this License. No use of any Covered Software is *+* authorized under this License except under this disclaimer. *+* *+************************************************************************++************************************************************************+* *+* 7. Limitation of Liability *+* -------------------------- *+* *+* Under no circumstances and under no legal theory, whether tort *+* (including negligence), contract, or otherwise, shall any *+* Contributor, or anyone who distributes Covered Software as *+* permitted above, be liable to You for any direct, indirect, *+* special, incidental, or consequential damages of any character *+* including, without limitation, damages for lost profits, loss of *+* goodwill, work stoppage, computer failure or malfunction, or any *+* and all other commercial damages or losses, even if such party *+* shall have been informed of the possibility of such damages. This *+* limitation of liability shall not apply to liability for death or *+* personal injury resulting from such party's negligence to the *+* extent applicable law prohibits such limitation. Some *+* jurisdictions do not allow the exclusion or limitation of *+* incidental or consequential damages, so this exclusion and *+* limitation may not apply to You. *+* *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++ This Source Code Form is subject to the terms of the Mozilla Public+ License, v. 2.0. If a copy of the MPL was not distributed with this+ file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,28 @@+# gogol-apps-activity++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version++`0.0.1`+++## Description++A client library for the Google Apps Activity.+++## Contribute++For any problems, comments, or feedback please create an issue [here on GitHub](https://github.com/brendanhay/amazonka/issues).++> _Note:_ this library is an auto-generated Haskell package. Please see `amazonka-gen` for more information.+++## Licence++`gogol-apps-activity` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ gen/Network/Google/AppsActivity.hs view
@@ -0,0 +1,137 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- |+-- Module : Network.Google.AppsActivity+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides a historical view of activity.+--+-- /See:/ <https://developers.google.com/google-apps/activity/ Google Apps Activity API Reference>+module Network.Google.AppsActivity+ (+ -- * Service Configuration+ appsActivityService++ -- * API Declaration+ , AppsActivityAPI++ -- * Resources++ -- ** appsactivity.activities.list+ , module Network.Google.Resource.AppsActivity.Activities.List++ -- * Types++ -- ** Parent+ , Parent+ , parent+ , pIsRoot+ , pId+ , pTitle++ -- ** Photo+ , Photo+ , photo+ , pURL++ -- ** EventPrimaryEventType+ , EventPrimaryEventType (..)++ -- ** Event+ , Event+ , event+ , ePrimaryEventType+ , eUser+ , eEventTimeMillis+ , eRename+ , eFromUserDeletion+ , eAdditionalEventTypes+ , ePermissionChanges+ , eTarget+ , eMove++ -- ** PermissionRole+ , PermissionRole (..)++ -- ** ListActivitiesResponse+ , ListActivitiesResponse+ , listActivitiesResponse+ , larNextPageToken+ , larActivities++ -- ** PermissionChange+ , PermissionChange+ , permissionChange+ , pcAddedPermissions+ , pcRemovedPermissions++ -- ** PermissionType+ , PermissionType (..)++ -- ** User+ , User+ , user+ , uPhoto+ , uName++ -- ** EventAdditionalEventTypesItem+ , EventAdditionalEventTypesItem (..)++ -- ** Activity+ , Activity+ , activity+ , aSingleEvents+ , aCombinedEvent++ -- ** ActivitiesListGroupingStrategy+ , ActivitiesListGroupingStrategy (..)++ -- ** Rename+ , Rename+ , rename+ , rNewTitle+ , rOldTitle++ -- ** Permission+ , Permission+ , permission+ , pWithLink+ , pUser+ , pRole+ , pName+ , pType+ , pPermissionId++ -- ** Target+ , Target+ , target+ , tMimeType+ , tName+ , tId++ -- ** Move+ , Move+ , move+ , mAddedParents+ , mRemovedParents+ ) where++import Network.Google.AppsActivity.Types+import Network.Google.Prelude+import Network.Google.Resource.AppsActivity.Activities.List++{- $resources+TODO+-}++-- | Represents the entirety of the methods and resources available for the Google Apps Activity API service.+type AppsActivityAPI = ActivitiesListResource
+ gen/Network/Google/AppsActivity/Types.hs view
@@ -0,0 +1,150 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.AppsActivity.Types+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.AppsActivity.Types+ (+ -- * Service Configuration+ appsActivityService++ -- * OAuth Scopes+ , driveMetadataReadonlyScope+ , activityScope+ , driveReadonlyScope+ , driveScope+ , driveMetadataScope++ -- * Parent+ , Parent+ , parent+ , pIsRoot+ , pId+ , pTitle++ -- * Photo+ , Photo+ , photo+ , pURL++ -- * EventPrimaryEventType+ , EventPrimaryEventType (..)++ -- * Event+ , Event+ , event+ , ePrimaryEventType+ , eUser+ , eEventTimeMillis+ , eRename+ , eFromUserDeletion+ , eAdditionalEventTypes+ , ePermissionChanges+ , eTarget+ , eMove++ -- * PermissionRole+ , PermissionRole (..)++ -- * ListActivitiesResponse+ , ListActivitiesResponse+ , listActivitiesResponse+ , larNextPageToken+ , larActivities++ -- * PermissionChange+ , PermissionChange+ , permissionChange+ , pcAddedPermissions+ , pcRemovedPermissions++ -- * PermissionType+ , PermissionType (..)++ -- * User+ , User+ , user+ , uPhoto+ , uName++ -- * EventAdditionalEventTypesItem+ , EventAdditionalEventTypesItem (..)++ -- * Activity+ , Activity+ , activity+ , aSingleEvents+ , aCombinedEvent++ -- * ActivitiesListGroupingStrategy+ , ActivitiesListGroupingStrategy (..)++ -- * Rename+ , Rename+ , rename+ , rNewTitle+ , rOldTitle++ -- * Permission+ , Permission+ , permission+ , pWithLink+ , pUser+ , pRole+ , pName+ , pType+ , pPermissionId++ -- * Target+ , Target+ , target+ , tMimeType+ , tName+ , tId++ -- * Move+ , Move+ , move+ , mAddedParents+ , mRemovedParents+ ) where++import Network.Google.AppsActivity.Types.Product+import Network.Google.AppsActivity.Types.Sum+import Network.Google.Prelude++-- | Default request referring to version 'v1' of the Google Apps Activity API. This contains the host and root path used as a starting point for constructing service requests.+appsActivityService :: Service+appsActivityService+ = defaultService (ServiceId "appsactivity:v1")+ "www.googleapis.com"++-- | View metadata for files in your Google Drive+driveMetadataReadonlyScope :: OAuthScope+driveMetadataReadonlyScope = "https://www.googleapis.com/auth/drive.metadata.readonly";++-- | View the activity history of your Google Apps+activityScope :: OAuthScope+activityScope = "https://www.googleapis.com/auth/activity";++-- | View the files in your Google Drive+driveReadonlyScope :: OAuthScope+driveReadonlyScope = "https://www.googleapis.com/auth/drive.readonly";++-- | View and manage the files in your Google Drive+driveScope :: OAuthScope+driveScope = "https://www.googleapis.com/auth/drive";++-- | View and manage metadata of files in your Google Drive+driveMetadataScope :: OAuthScope+driveMetadataScope = "https://www.googleapis.com/auth/drive.metadata";
+ gen/Network/Google/AppsActivity/Types/Product.hs view
@@ -0,0 +1,695 @@+{-# 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+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.Google.AppsActivity.Types.Product where++import Network.Google.AppsActivity.Types.Sum+import Network.Google.Prelude++-- | Contains information about a parent object. For example, a folder in+-- Drive is a parent for all files within it.+--+-- /See:/ 'parent' smart constructor.+data Parent = Parent+ { _pIsRoot :: !(Maybe Bool)+ , _pId :: !(Maybe Text)+ , _pTitle :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Parent' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pIsRoot'+--+-- * 'pId'+--+-- * 'pTitle'+parent+ :: Parent+parent =+ Parent+ { _pIsRoot = Nothing+ , _pId = Nothing+ , _pTitle = Nothing+ }++-- | Whether this is the root folder.+pIsRoot :: Lens' Parent (Maybe Bool)+pIsRoot = lens _pIsRoot (\ s a -> s{_pIsRoot = a})++-- | The parent\'s ID.+pId :: Lens' Parent (Maybe Text)+pId = lens _pId (\ s a -> s{_pId = a})++-- | The parent\'s title.+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])++-- | Photo information for a user.+--+-- /See:/ 'photo' smart constructor.+newtype Photo = Photo+ { _pURL :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Photo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pURL'+photo+ :: Photo+photo =+ Photo+ { _pURL = Nothing+ }++-- | The URL of the photo.+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])++-- | Represents the changes associated with an action taken by a user.+--+-- /See:/ 'event' smart constructor.+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)++-- | Creates a value of 'Event' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ePrimaryEventType'+--+-- * 'eUser'+--+-- * 'eEventTimeMillis'+--+-- * 'eRename'+--+-- * 'eFromUserDeletion'+--+-- * 'eAdditionalEventTypes'+--+-- * 'ePermissionChanges'+--+-- * 'eTarget'+--+-- * 'eMove'+event+ :: Event+event =+ Event+ { _ePrimaryEventType = Nothing+ , _eUser = Nothing+ , _eEventTimeMillis = Nothing+ , _eRename = Nothing+ , _eFromUserDeletion = Nothing+ , _eAdditionalEventTypes = Nothing+ , _ePermissionChanges = Nothing+ , _eTarget = Nothing+ , _eMove = Nothing+ }++-- | The main type of event that occurred.+ePrimaryEventType :: Lens' Event (Maybe EventPrimaryEventType)+ePrimaryEventType+ = lens _ePrimaryEventType+ (\ s a -> s{_ePrimaryEventType = a})++-- | Represents the user responsible for the event.+eUser :: Lens' Event (Maybe User)+eUser = lens _eUser (\ s a -> s{_eUser = a})++-- | The time at which the event occurred formatted as Unix time in+-- milliseconds.+eEventTimeMillis :: Lens' Event (Maybe Word64)+eEventTimeMillis+ = lens _eEventTimeMillis+ (\ s a -> s{_eEventTimeMillis = a})+ . mapping _Coerce++-- | Extra information for rename type events, such as the old and new names.+eRename :: Lens' Event (Maybe Rename)+eRename = lens _eRename (\ s a -> s{_eRename = a})++-- | Whether this event is caused by a user being deleted.+eFromUserDeletion :: Lens' Event (Maybe Bool)+eFromUserDeletion+ = lens _eFromUserDeletion+ (\ s a -> s{_eFromUserDeletion = a})++-- | Additional event types. Some events may have multiple types when+-- multiple actions are part of a single event. For example, creating a+-- document, renaming it, and sharing it may be part of a single+-- file-creation event.+eAdditionalEventTypes :: Lens' Event [EventAdditionalEventTypesItem]+eAdditionalEventTypes+ = lens _eAdditionalEventTypes+ (\ s a -> s{_eAdditionalEventTypes = a})+ . _Default+ . _Coerce++-- | Extra information for permissionChange type events, such as the user or+-- group the new permission applies to.+ePermissionChanges :: Lens' Event [PermissionChange]+ePermissionChanges+ = lens _ePermissionChanges+ (\ s a -> s{_ePermissionChanges = a})+ . _Default+ . _Coerce++-- | Information specific to the Target object modified by the event.+eTarget :: Lens' Event (Maybe Target)+eTarget = lens _eTarget (\ s a -> s{_eTarget = a})++-- | Extra information for move type events, such as changes in an object\'s+-- parents.+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])++-- | The response from the list request. Contains a list of activities and a+-- token to retrieve the next page of results.+--+-- /See:/ 'listActivitiesResponse' smart constructor.+data ListActivitiesResponse = ListActivitiesResponse+ { _larNextPageToken :: !(Maybe Text)+ , _larActivities :: !(Maybe [Activity])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListActivitiesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'larNextPageToken'+--+-- * 'larActivities'+listActivitiesResponse+ :: ListActivitiesResponse+listActivitiesResponse =+ ListActivitiesResponse+ { _larNextPageToken = Nothing+ , _larActivities = Nothing+ }++-- | Token for the next page of results.+larNextPageToken :: Lens' ListActivitiesResponse (Maybe Text)+larNextPageToken+ = lens _larNextPageToken+ (\ s a -> s{_larNextPageToken = a})++-- | List of activities.+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])++-- | Contains information about a Drive object\'s permissions that changed as+-- a result of a permissionChange type event.+--+-- /See:/ 'permissionChange' smart constructor.+data PermissionChange = PermissionChange+ { _pcAddedPermissions :: !(Maybe [Permission])+ , _pcRemovedPermissions :: !(Maybe [Permission])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'PermissionChange' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pcAddedPermissions'+--+-- * 'pcRemovedPermissions'+permissionChange+ :: PermissionChange+permissionChange =+ PermissionChange+ { _pcAddedPermissions = Nothing+ , _pcRemovedPermissions = Nothing+ }++-- | Lists all Permission objects added.+pcAddedPermissions :: Lens' PermissionChange [Permission]+pcAddedPermissions+ = lens _pcAddedPermissions+ (\ s a -> s{_pcAddedPermissions = a})+ . _Default+ . _Coerce++-- | Lists all Permission objects removed.+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])++-- | A representation of a user.+--+-- /See:/ 'user' smart constructor.+data User = User+ { _uPhoto :: !(Maybe Photo)+ , _uName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'User' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'uPhoto'+--+-- * 'uName'+user+ :: User+user =+ User+ { _uPhoto = Nothing+ , _uName = Nothing+ }++-- | The profile photo of the user.+uPhoto :: Lens' User (Maybe Photo)+uPhoto = lens _uPhoto (\ s a -> s{_uPhoto = a})++-- | The displayable name of the user.+uName :: Lens' User (Maybe Text)+uName = lens _uName (\ s a -> s{_uName = a})++instance FromJSON User where+ parseJSON+ = withObject "User"+ (\ o -> User <$> (o .:? "photo") <*> (o .:? "name"))++instance ToJSON User where+ toJSON User{..}+ = object+ (catMaybes+ [("photo" .=) <$> _uPhoto, ("name" .=) <$> _uName])++-- | An Activity resource is a combined view of multiple events. An activity+-- has a list of individual events and a combined view of the common fields+-- among all events.+--+-- /See:/ 'activity' smart constructor.+data Activity = Activity+ { _aSingleEvents :: !(Maybe [Event])+ , _aCombinedEvent :: !(Maybe Event)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Activity' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aSingleEvents'+--+-- * 'aCombinedEvent'+activity+ :: Activity+activity =+ Activity+ { _aSingleEvents = Nothing+ , _aCombinedEvent = Nothing+ }++-- | A list of all the Events that make up the Activity.+aSingleEvents :: Lens' Activity [Event]+aSingleEvents+ = lens _aSingleEvents+ (\ s a -> s{_aSingleEvents = a})+ . _Default+ . _Coerce++-- | The fields common to all of the singleEvents that make up the Activity.+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])++-- | Contains information about a renametype event.+--+-- /See:/ 'rename' smart constructor.+data Rename = Rename+ { _rNewTitle :: !(Maybe Text)+ , _rOldTitle :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Rename' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rNewTitle'+--+-- * 'rOldTitle'+rename+ :: Rename+rename =+ Rename+ { _rNewTitle = Nothing+ , _rOldTitle = Nothing+ }++-- | The new title.+rNewTitle :: Lens' Rename (Maybe Text)+rNewTitle+ = lens _rNewTitle (\ s a -> s{_rNewTitle = a})++-- | The old title.+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])++-- | Contains information about the permissions and type of access allowed+-- with regards to a Google Drive object. This is a subset of the fields+-- contained in a corresponding Drive Permissions object.+--+-- /See:/ 'permission' smart constructor.+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)++-- | Creates a value of 'Permission' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pWithLink'+--+-- * 'pUser'+--+-- * 'pRole'+--+-- * 'pName'+--+-- * 'pType'+--+-- * 'pPermissionId'+permission+ :: Permission+permission =+ Permission+ { _pWithLink = Nothing+ , _pUser = Nothing+ , _pRole = Nothing+ , _pName = Nothing+ , _pType = Nothing+ , _pPermissionId = Nothing+ }++-- | Whether the permission requires a link to the file.+pWithLink :: Lens' Permission (Maybe Bool)+pWithLink+ = lens _pWithLink (\ s a -> s{_pWithLink = a})++-- | The user\'s information if the type is USER.+pUser :: Lens' Permission (Maybe User)+pUser = lens _pUser (\ s a -> s{_pUser = a})++-- | Indicates the Google Drive permissions role. The role determines a+-- user\'s ability to read, write, or comment on the file.+pRole :: Lens' Permission (Maybe PermissionRole)+pRole = lens _pRole (\ s a -> s{_pRole = a})++-- | The name of the user or group the permission applies to.+pName :: Lens' Permission (Maybe Text)+pName = lens _pName (\ s a -> s{_pName = a})++-- | Indicates how widely permissions are granted.+pType :: Lens' Permission (Maybe PermissionType)+pType = lens _pType (\ s a -> s{_pType = a})++-- | The ID for this permission. Corresponds to the Drive API\'s permission+-- ID returned as part of the Drive Permissions resource.+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])++-- | Information about the object modified by the event.+--+-- /See:/ 'target' smart constructor.+data Target = Target+ { _tMimeType :: !(Maybe Text)+ , _tName :: !(Maybe Text)+ , _tId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Target' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tMimeType'+--+-- * 'tName'+--+-- * 'tId'+target+ :: Target+target =+ Target+ { _tMimeType = Nothing+ , _tName = Nothing+ , _tId = Nothing+ }++-- | The MIME type of the target.+tMimeType :: Lens' Target (Maybe Text)+tMimeType+ = lens _tMimeType (\ s a -> s{_tMimeType = a})++-- | The name of the target. For example, in Google Drive, this is the title+-- of the file.+tName :: Lens' Target (Maybe Text)+tName = lens _tName (\ s a -> s{_tName = a})++-- | The ID of the target. For example, in Google Drive, this is the file or+-- folder ID.+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])++-- | Contains information about changes in an object\'s parents as a result+-- of a move type event.+--+-- /See:/ 'move' smart constructor.+data Move = Move+ { _mAddedParents :: !(Maybe [Parent])+ , _mRemovedParents :: !(Maybe [Parent])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Move' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mAddedParents'+--+-- * 'mRemovedParents'+move+ :: Move+move =+ Move+ { _mAddedParents = Nothing+ , _mRemovedParents = Nothing+ }++-- | The added parent(s).+mAddedParents :: Lens' Move [Parent]+mAddedParents+ = lens _mAddedParents+ (\ s a -> s{_mAddedParents = a})+ . _Default+ . _Coerce++-- | The removed parent(s).+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])
+ gen/Network/Google/AppsActivity/Types/Sum.hs view
@@ -0,0 +1,243 @@+{-# 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 <brendan.g.hay@gmail.com>+-- 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
+ gen/Network/Google/Resource/AppsActivity/Activities/List.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.AppsActivity.Activities.List+-- Copyright : (c) 2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of activities visible to the current logged in user.+-- Visible activities are determined by the visiblity settings of the+-- object that was acted on, e.g. Drive files a user can see. An activity+-- is a record of past events. Multiple events may be merged if they are+-- similar. A request is scoped to activities from a given Google service+-- using the source parameter.+--+-- /See:/ <https://developers.google.com/google-apps/activity/ Google Apps Activity API Reference> for @appsactivity.activities.list@.+module Network.Google.Resource.AppsActivity.Activities.List+ (+ -- * REST Resource+ ActivitiesListResource++ -- * Creating a Request+ , activitiesList+ , ActivitiesList++ -- * Request Lenses+ , alDriveFileId+ , alDriveAncestorId+ , alGroupingStrategy+ , alUserId+ , alSource+ , alPageToken+ , alPageSize+ ) where++import Network.Google.AppsActivity.Types+import Network.Google.Prelude++-- | A resource alias for @appsactivity.activities.list@ method which the+-- 'ActivitiesList' request conforms to.+type ActivitiesListResource =+ "appsactivity" :>+ "v1" :>+ "activities" :>+ QueryParam "drive.fileId" Text :>+ QueryParam "drive.ancestorId" Text :>+ QueryParam "groupingStrategy"+ ActivitiesListGroupingStrategy+ :>+ QueryParam "userId" Text :>+ QueryParam "source" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListActivitiesResponse++-- | Returns a list of activities visible to the current logged in user.+-- Visible activities are determined by the visiblity settings of the+-- object that was acted on, e.g. Drive files a user can see. An activity+-- is a record of past events. Multiple events may be merged if they are+-- similar. A request is scoped to activities from a given Google service+-- using the source parameter.+--+-- /See:/ 'activitiesList' smart constructor.+data ActivitiesList = ActivitiesList+ { _alDriveFileId :: !(Maybe Text)+ , _alDriveAncestorId :: !(Maybe Text)+ , _alGroupingStrategy :: !ActivitiesListGroupingStrategy+ , _alUserId :: !Text+ , _alSource :: !(Maybe Text)+ , _alPageToken :: !(Maybe Text)+ , _alPageSize :: !(Textual Int32)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ActivitiesList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'alDriveFileId'+--+-- * 'alDriveAncestorId'+--+-- * 'alGroupingStrategy'+--+-- * 'alUserId'+--+-- * 'alSource'+--+-- * 'alPageToken'+--+-- * 'alPageSize'+activitiesList+ :: ActivitiesList+activitiesList =+ ActivitiesList+ { _alDriveFileId = Nothing+ , _alDriveAncestorId = Nothing+ , _alGroupingStrategy = DriveUi+ , _alUserId = "me"+ , _alSource = Nothing+ , _alPageToken = Nothing+ , _alPageSize = 50+ }++-- | Identifies the Drive item to return activities for.+alDriveFileId :: Lens' ActivitiesList (Maybe Text)+alDriveFileId+ = lens _alDriveFileId+ (\ s a -> s{_alDriveFileId = a})++-- | Identifies the Drive folder containing the items for which to return+-- activities.+alDriveAncestorId :: Lens' ActivitiesList (Maybe Text)+alDriveAncestorId+ = lens _alDriveAncestorId+ (\ s a -> s{_alDriveAncestorId = a})++-- | Indicates the strategy to use when grouping singleEvents items in the+-- associated combinedEvent object.+alGroupingStrategy :: Lens' ActivitiesList ActivitiesListGroupingStrategy+alGroupingStrategy+ = lens _alGroupingStrategy+ (\ s a -> s{_alGroupingStrategy = a})++-- | Indicates the user to return activity for. Use the special value me to+-- indicate the currently authenticated user.+alUserId :: Lens' ActivitiesList Text+alUserId = lens _alUserId (\ s a -> s{_alUserId = a})++-- | The Google service from which to return activities. Possible values of+-- source are: - drive.google.com+alSource :: Lens' ActivitiesList (Maybe Text)+alSource = lens _alSource (\ s a -> s{_alSource = a})++-- | A token to retrieve a specific page of results.+alPageToken :: Lens' ActivitiesList (Maybe Text)+alPageToken+ = lens _alPageToken (\ s a -> s{_alPageToken = a})++-- | The maximum number of events to return on a page. The response includes+-- a continuation token if there are more events.+alPageSize :: Lens' ActivitiesList Int32+alPageSize+ = lens _alPageSize (\ s a -> s{_alPageSize = a}) .+ _Coerce++instance GoogleRequest ActivitiesList where+ type Rs ActivitiesList = ListActivitiesResponse+ requestClient ActivitiesList{..}+ = go _alDriveFileId _alDriveAncestorId+ (Just _alGroupingStrategy)+ (Just _alUserId)+ _alSource+ _alPageToken+ (Just _alPageSize)+ (Just AltJSON)+ appsActivityService+ where go+ = buildClient (Proxy :: Proxy ActivitiesListResource)+ mempty
+ gogol-apps-activity.cabal view
@@ -0,0 +1,46 @@+name: gogol-apps-activity+version: 0.0.1+synopsis: Google Apps Activity SDK.+homepage: https://github.com/brendanhay/gogol+bug-reports: https://github.com/brendanhay/gogol/issues+license: OtherLicense+license-file: LICENSE+author: Brendan Hay+maintainer: Brendan Hay <brendan.g.hay@gmail.com>+copyright: Copyright (c) 2015 Brendan Hay+category: Network, Google, Cloud+build-type: Simple+cabal-version: >= 1.10+extra-source-files: README.md++description:+ Provides a historical view of activity.+ .+ /Warning:/ This is an experimental prototype/preview release which is still+ under exploratory development and not intended for public use, caveat emptor!+ .+ This library is compatible with version @v1@+ of the API.++source-repository head+ type: git+ location: git://github.com/brendanhay/gogol.git++library+ default-language: Haskell2010+ hs-source-dirs: src gen++ ghc-options: -Wall++ exposed-modules:+ Network.Google.AppsActivity+ , Network.Google.AppsActivity.Types+ , Network.Google.Resource.AppsActivity.Activities.List++ other-modules:+ Network.Google.AppsActivity.Types.Product+ , Network.Google.AppsActivity.Types.Sum++ build-depends:+ gogol-core == 0.0.1.*+ , base >= 4.7 && < 5