{-# 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.SecurityCenter.Organizations.Assets.UpdateSecurityMarks -- Copyright : (c) 2015-2016 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Updates security marks. -- -- /See:/ for @securitycenter.organizations.assets.updateSecurityMarks@. module Network.Google.Resource.SecurityCenter.Organizations.Assets.UpdateSecurityMarks ( -- * REST Resource OrganizationsAssetsUpdateSecurityMarksResource -- * Creating a Request , organizationsAssetsUpdateSecurityMarks , OrganizationsAssetsUpdateSecurityMarks -- * Request Lenses , oausmXgafv , oausmUploadProtocol , oausmStartTime , oausmUpdateMask , oausmAccessToken , oausmUploadType , oausmPayload , oausmName , oausmCallback ) where import Network.Google.Prelude import Network.Google.SecurityCenter.Types -- | A resource alias for @securitycenter.organizations.assets.updateSecurityMarks@ method which the -- 'OrganizationsAssetsUpdateSecurityMarks' request conforms to. type OrganizationsAssetsUpdateSecurityMarksResource = "v1" :> Capture "name" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "startTime" DateTime' :> QueryParam "updateMask" GFieldMask :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] SecurityMarks :> Patch '[JSON] SecurityMarks -- | Updates security marks. -- -- /See:/ 'organizationsAssetsUpdateSecurityMarks' smart constructor. data OrganizationsAssetsUpdateSecurityMarks = OrganizationsAssetsUpdateSecurityMarks' { _oausmXgafv :: !(Maybe Xgafv) , _oausmUploadProtocol :: !(Maybe Text) , _oausmStartTime :: !(Maybe DateTime') , _oausmUpdateMask :: !(Maybe GFieldMask) , _oausmAccessToken :: !(Maybe Text) , _oausmUploadType :: !(Maybe Text) , _oausmPayload :: !SecurityMarks , _oausmName :: !Text , _oausmCallback :: !(Maybe Text) } deriving (Eq, Show, Data, Typeable, Generic) -- | Creates a value of 'OrganizationsAssetsUpdateSecurityMarks' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'oausmXgafv' -- -- * 'oausmUploadProtocol' -- -- * 'oausmStartTime' -- -- * 'oausmUpdateMask' -- -- * 'oausmAccessToken' -- -- * 'oausmUploadType' -- -- * 'oausmPayload' -- -- * 'oausmName' -- -- * 'oausmCallback' organizationsAssetsUpdateSecurityMarks :: SecurityMarks -- ^ 'oausmPayload' -> Text -- ^ 'oausmName' -> OrganizationsAssetsUpdateSecurityMarks organizationsAssetsUpdateSecurityMarks pOausmPayload_ pOausmName_ = OrganizationsAssetsUpdateSecurityMarks' { _oausmXgafv = Nothing , _oausmUploadProtocol = Nothing , _oausmStartTime = Nothing , _oausmUpdateMask = Nothing , _oausmAccessToken = Nothing , _oausmUploadType = Nothing , _oausmPayload = pOausmPayload_ , _oausmName = pOausmName_ , _oausmCallback = Nothing } -- | V1 error format. oausmXgafv :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe Xgafv) oausmXgafv = lens _oausmXgafv (\ s a -> s{_oausmXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\"). oausmUploadProtocol :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe Text) oausmUploadProtocol = lens _oausmUploadProtocol (\ s a -> s{_oausmUploadProtocol = a}) -- | The time at which the updated SecurityMarks take effect. If not set uses -- current server time. Updates will be applied to the SecurityMarks that -- are active immediately preceding this time. oausmStartTime :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe UTCTime) oausmStartTime = lens _oausmStartTime (\ s a -> s{_oausmStartTime = a}) . mapping _DateTime -- | The FieldMask to use when updating the security marks resource. The -- field mask must not contain duplicate fields. If empty or set to -- \"marks\", all marks will be replaced. Individual marks can be updated -- using \"marks.\". oausmUpdateMask :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe GFieldMask) oausmUpdateMask = lens _oausmUpdateMask (\ s a -> s{_oausmUpdateMask = a}) -- | OAuth access token. oausmAccessToken :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe Text) oausmAccessToken = lens _oausmAccessToken (\ s a -> s{_oausmAccessToken = a}) -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\"). oausmUploadType :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe Text) oausmUploadType = lens _oausmUploadType (\ s a -> s{_oausmUploadType = a}) -- | Multipart request metadata. oausmPayload :: Lens' OrganizationsAssetsUpdateSecurityMarks SecurityMarks oausmPayload = lens _oausmPayload (\ s a -> s{_oausmPayload = a}) -- | The relative resource name of the SecurityMarks. See: -- https:\/\/cloud.google.com\/apis\/design\/resource_names#relative_resource_name -- Examples: \"organizations\/123\/assets\/456\/securityMarks\" -- \"organizations\/123\/sources\/456\/findings\/789\/securityMarks\". oausmName :: Lens' OrganizationsAssetsUpdateSecurityMarks Text oausmName = lens _oausmName (\ s a -> s{_oausmName = a}) -- | JSONP oausmCallback :: Lens' OrganizationsAssetsUpdateSecurityMarks (Maybe Text) oausmCallback = lens _oausmCallback (\ s a -> s{_oausmCallback = a}) instance GoogleRequest OrganizationsAssetsUpdateSecurityMarks where type Rs OrganizationsAssetsUpdateSecurityMarks = SecurityMarks type Scopes OrganizationsAssetsUpdateSecurityMarks = '["https://www.googleapis.com/auth/cloud-platform"] requestClient OrganizationsAssetsUpdateSecurityMarks'{..} = go _oausmName _oausmXgafv _oausmUploadProtocol _oausmStartTime _oausmUpdateMask _oausmAccessToken _oausmUploadType _oausmCallback (Just AltJSON) _oausmPayload securityCenterService where go = buildClient (Proxy :: Proxy OrganizationsAssetsUpdateSecurityMarksResource) mempty