{-# LANGUAGE DataKinds #-} {-# LANGUAGE DerivingStrategies #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE ImportQualifiedPost #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE PatternSynonyms #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-duplicate-exports #-} {-# OPTIONS_GHC -fno-warn-name-shadowing #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- | -- Module : Gogol.RemoteBuildExecution.GetCapabilities -- Copyright : (c) 2015-2025 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Toni Cebrián -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- GetCapabilities returns the server capabilities configuration of the remote endpoint. Only the capabilities of the services supported by the endpoint will be returned: * Execution + CAS + Action Cache endpoints should return both CacheCapabilities and ExecutionCapabilities. * Execution only endpoints should return ExecutionCapabilities. * CAS + Action Cache only endpoints should return CacheCapabilities. -- -- /See:/ for @remotebuildexecution.getCapabilities@. module Gogol.RemoteBuildExecution.GetCapabilities ( -- * Resource RemoteBuildExecutionGetCapabilitiesResource, -- ** Constructing a Request RemoteBuildExecutionGetCapabilities (..), newRemoteBuildExecutionGetCapabilities, ) where import Gogol.Prelude qualified as Core import Gogol.RemoteBuildExecution.Types -- | A resource alias for @remotebuildexecution.getCapabilities@ method which the -- 'RemoteBuildExecutionGetCapabilities' request conforms to. type RemoteBuildExecutionGetCapabilitiesResource = "v2" Core.:> Core.Capture "instanceName" Core.Text Core.:> "capabilities" Core.:> Core.QueryParam "$.xgafv" Xgafv Core.:> Core.QueryParam "access_token" Core.Text Core.:> Core.QueryParam "callback" Core.Text Core.:> Core.QueryParam "uploadType" Core.Text Core.:> Core.QueryParam "upload_protocol" Core.Text Core.:> Core.QueryParam "alt" Core.AltJSON Core.:> Core.Get '[Core.JSON] BuildBazelRemoteExecutionV2ServerCapabilities -- | GetCapabilities returns the server capabilities configuration of the remote endpoint. Only the capabilities of the services supported by the endpoint will be returned: * Execution + CAS + Action Cache endpoints should return both CacheCapabilities and ExecutionCapabilities. * Execution only endpoints should return ExecutionCapabilities. * CAS + Action Cache only endpoints should return CacheCapabilities. -- -- /See:/ 'newRemoteBuildExecutionGetCapabilities' smart constructor. data RemoteBuildExecutionGetCapabilities = RemoteBuildExecutionGetCapabilities { -- | V1 error format. xgafv :: (Core.Maybe Xgafv), -- | OAuth access token. accessToken :: (Core.Maybe Core.Text), -- | JSONP callback :: (Core.Maybe Core.Text), -- | The instance of the execution system to operate against. A server may support multiple instances of the execution system (with their own workers, storage, caches, etc.). The server MAY require use of this field to select between them in an implementation-defined fashion, otherwise it can be omitted. instanceName :: Core.Text, -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\"). uploadType :: (Core.Maybe Core.Text), -- | Upload protocol for media (e.g. \"raw\", \"multipart\"). uploadProtocol :: (Core.Maybe Core.Text) } deriving (Core.Eq, Core.Show, Core.Generic) -- | Creates a value of 'RemoteBuildExecutionGetCapabilities' with the minimum fields required to make a request. newRemoteBuildExecutionGetCapabilities :: -- | The instance of the execution system to operate against. A server may support multiple instances of the execution system (with their own workers, storage, caches, etc.). The server MAY require use of this field to select between them in an implementation-defined fashion, otherwise it can be omitted. See 'instanceName'. Core.Text -> RemoteBuildExecutionGetCapabilities newRemoteBuildExecutionGetCapabilities instanceName = RemoteBuildExecutionGetCapabilities { xgafv = Core.Nothing, accessToken = Core.Nothing, callback = Core.Nothing, instanceName = instanceName, uploadType = Core.Nothing, uploadProtocol = Core.Nothing } instance Core.GoogleRequest RemoteBuildExecutionGetCapabilities where type Rs RemoteBuildExecutionGetCapabilities = BuildBazelRemoteExecutionV2ServerCapabilities type Scopes RemoteBuildExecutionGetCapabilities = '[CloudPlatform'FullControl] requestClient RemoteBuildExecutionGetCapabilities {..} = go instanceName xgafv accessToken callback uploadType uploadProtocol (Core.Just Core.AltJSON) remoteBuildExecutionService where go = Core.buildClient ( Core.Proxy :: Core.Proxy RemoteBuildExecutionGetCapabilitiesResource ) Core.mempty