amazonka-devops-guru-2.0: gen/Amazonka/DevOpsGuru/UpdateEventSourcesConfig.hs
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- Derived from AWS service descriptions, licensed under Apache 2.0.
-- |
-- Module : Amazonka.DevOpsGuru.UpdateEventSourcesConfig
-- Copyright : (c) 2013-2023 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Enables or disables integration with a service that can be integrated
-- with DevOps Guru. The one service that can be integrated with DevOps
-- Guru is Amazon CodeGuru Profiler, which can produce proactive
-- recommendations which can be stored and viewed in DevOps Guru.
module Amazonka.DevOpsGuru.UpdateEventSourcesConfig
( -- * Creating a Request
UpdateEventSourcesConfig (..),
newUpdateEventSourcesConfig,
-- * Request Lenses
updateEventSourcesConfig_eventSources,
-- * Destructuring the Response
UpdateEventSourcesConfigResponse (..),
newUpdateEventSourcesConfigResponse,
-- * Response Lenses
updateEventSourcesConfigResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.DevOpsGuru.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
-- | /See:/ 'newUpdateEventSourcesConfig' smart constructor.
data UpdateEventSourcesConfig = UpdateEventSourcesConfig'
{ -- | Configuration information about the integration of DevOps Guru as the
-- Consumer via EventBridge with another AWS Service.
eventSources :: Prelude.Maybe EventSourcesConfig
}
deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)
-- |
-- Create a value of 'UpdateEventSourcesConfig' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'eventSources', 'updateEventSourcesConfig_eventSources' - Configuration information about the integration of DevOps Guru as the
-- Consumer via EventBridge with another AWS Service.
newUpdateEventSourcesConfig ::
UpdateEventSourcesConfig
newUpdateEventSourcesConfig =
UpdateEventSourcesConfig'
{ eventSources =
Prelude.Nothing
}
-- | Configuration information about the integration of DevOps Guru as the
-- Consumer via EventBridge with another AWS Service.
updateEventSourcesConfig_eventSources :: Lens.Lens' UpdateEventSourcesConfig (Prelude.Maybe EventSourcesConfig)
updateEventSourcesConfig_eventSources = Lens.lens (\UpdateEventSourcesConfig' {eventSources} -> eventSources) (\s@UpdateEventSourcesConfig' {} a -> s {eventSources = a} :: UpdateEventSourcesConfig)
instance Core.AWSRequest UpdateEventSourcesConfig where
type
AWSResponse UpdateEventSourcesConfig =
UpdateEventSourcesConfigResponse
request overrides =
Request.putJSON (overrides defaultService)
response =
Response.receiveEmpty
( \s h x ->
UpdateEventSourcesConfigResponse'
Prelude.<$> (Prelude.pure (Prelude.fromEnum s))
)
instance Prelude.Hashable UpdateEventSourcesConfig where
hashWithSalt _salt UpdateEventSourcesConfig' {..} =
_salt `Prelude.hashWithSalt` eventSources
instance Prelude.NFData UpdateEventSourcesConfig where
rnf UpdateEventSourcesConfig' {..} =
Prelude.rnf eventSources
instance Data.ToHeaders UpdateEventSourcesConfig where
toHeaders =
Prelude.const
( Prelude.mconcat
[ "Content-Type"
Data.=# ( "application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON UpdateEventSourcesConfig where
toJSON UpdateEventSourcesConfig' {..} =
Data.object
( Prelude.catMaybes
[("EventSources" Data..=) Prelude.<$> eventSources]
)
instance Data.ToPath UpdateEventSourcesConfig where
toPath = Prelude.const "/event-sources"
instance Data.ToQuery UpdateEventSourcesConfig where
toQuery = Prelude.const Prelude.mempty
-- | /See:/ 'newUpdateEventSourcesConfigResponse' smart constructor.
data UpdateEventSourcesConfigResponse = UpdateEventSourcesConfigResponse'
{ -- | The response's http status code.
httpStatus :: Prelude.Int
}
deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)
-- |
-- Create a value of 'UpdateEventSourcesConfigResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'httpStatus', 'updateEventSourcesConfigResponse_httpStatus' - The response's http status code.
newUpdateEventSourcesConfigResponse ::
-- | 'httpStatus'
Prelude.Int ->
UpdateEventSourcesConfigResponse
newUpdateEventSourcesConfigResponse pHttpStatus_ =
UpdateEventSourcesConfigResponse'
{ httpStatus =
pHttpStatus_
}
-- | The response's http status code.
updateEventSourcesConfigResponse_httpStatus :: Lens.Lens' UpdateEventSourcesConfigResponse Prelude.Int
updateEventSourcesConfigResponse_httpStatus = Lens.lens (\UpdateEventSourcesConfigResponse' {httpStatus} -> httpStatus) (\s@UpdateEventSourcesConfigResponse' {} a -> s {httpStatus = a} :: UpdateEventSourcesConfigResponse)
instance
Prelude.NFData
UpdateEventSourcesConfigResponse
where
rnf UpdateEventSourcesConfigResponse' {..} =
Prelude.rnf httpStatus