{-# 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 #-}
module Amazonka.LookoutEquipment.StartDataIngestionJob
(
StartDataIngestionJob (..),
newStartDataIngestionJob,
startDataIngestionJob_datasetName,
startDataIngestionJob_ingestionInputConfiguration,
startDataIngestionJob_roleArn,
startDataIngestionJob_clientToken,
StartDataIngestionJobResponse (..),
newStartDataIngestionJobResponse,
startDataIngestionJobResponse_jobId,
startDataIngestionJobResponse_status,
startDataIngestionJobResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.LookoutEquipment.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data StartDataIngestionJob = StartDataIngestionJob'
{
StartDataIngestionJob -> Text
datasetName :: Prelude.Text,
StartDataIngestionJob -> IngestionInputConfiguration
ingestionInputConfiguration :: IngestionInputConfiguration,
StartDataIngestionJob -> Text
roleArn :: Prelude.Text,
StartDataIngestionJob -> Text
clientToken :: Prelude.Text
}
deriving (StartDataIngestionJob -> StartDataIngestionJob -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StartDataIngestionJob -> StartDataIngestionJob -> Bool
$c/= :: StartDataIngestionJob -> StartDataIngestionJob -> Bool
== :: StartDataIngestionJob -> StartDataIngestionJob -> Bool
$c== :: StartDataIngestionJob -> StartDataIngestionJob -> Bool
Prelude.Eq, ReadPrec [StartDataIngestionJob]
ReadPrec StartDataIngestionJob
Int -> ReadS StartDataIngestionJob
ReadS [StartDataIngestionJob]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [StartDataIngestionJob]
$creadListPrec :: ReadPrec [StartDataIngestionJob]
readPrec :: ReadPrec StartDataIngestionJob
$creadPrec :: ReadPrec StartDataIngestionJob
readList :: ReadS [StartDataIngestionJob]
$creadList :: ReadS [StartDataIngestionJob]
readsPrec :: Int -> ReadS StartDataIngestionJob
$creadsPrec :: Int -> ReadS StartDataIngestionJob
Prelude.Read, Int -> StartDataIngestionJob -> ShowS
[StartDataIngestionJob] -> ShowS
StartDataIngestionJob -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StartDataIngestionJob] -> ShowS
$cshowList :: [StartDataIngestionJob] -> ShowS
show :: StartDataIngestionJob -> String
$cshow :: StartDataIngestionJob -> String
showsPrec :: Int -> StartDataIngestionJob -> ShowS
$cshowsPrec :: Int -> StartDataIngestionJob -> ShowS
Prelude.Show, forall x. Rep StartDataIngestionJob x -> StartDataIngestionJob
forall x. StartDataIngestionJob -> Rep StartDataIngestionJob x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep StartDataIngestionJob x -> StartDataIngestionJob
$cfrom :: forall x. StartDataIngestionJob -> Rep StartDataIngestionJob x
Prelude.Generic)
newStartDataIngestionJob ::
Prelude.Text ->
IngestionInputConfiguration ->
Prelude.Text ->
Prelude.Text ->
StartDataIngestionJob
newStartDataIngestionJob :: Text
-> IngestionInputConfiguration
-> Text
-> Text
-> StartDataIngestionJob
newStartDataIngestionJob
Text
pDatasetName_
IngestionInputConfiguration
pIngestionInputConfiguration_
Text
pRoleArn_
Text
pClientToken_ =
StartDataIngestionJob'
{ $sel:datasetName:StartDataIngestionJob' :: Text
datasetName = Text
pDatasetName_,
$sel:ingestionInputConfiguration:StartDataIngestionJob' :: IngestionInputConfiguration
ingestionInputConfiguration =
IngestionInputConfiguration
pIngestionInputConfiguration_,
$sel:roleArn:StartDataIngestionJob' :: Text
roleArn = Text
pRoleArn_,
$sel:clientToken:StartDataIngestionJob' :: Text
clientToken = Text
pClientToken_
}
startDataIngestionJob_datasetName :: Lens.Lens' StartDataIngestionJob Prelude.Text
startDataIngestionJob_datasetName :: Lens' StartDataIngestionJob Text
startDataIngestionJob_datasetName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJob' {Text
datasetName :: Text
$sel:datasetName:StartDataIngestionJob' :: StartDataIngestionJob -> Text
datasetName} -> Text
datasetName) (\s :: StartDataIngestionJob
s@StartDataIngestionJob' {} Text
a -> StartDataIngestionJob
s {$sel:datasetName:StartDataIngestionJob' :: Text
datasetName = Text
a} :: StartDataIngestionJob)
startDataIngestionJob_ingestionInputConfiguration :: Lens.Lens' StartDataIngestionJob IngestionInputConfiguration
startDataIngestionJob_ingestionInputConfiguration :: Lens' StartDataIngestionJob IngestionInputConfiguration
startDataIngestionJob_ingestionInputConfiguration = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJob' {IngestionInputConfiguration
ingestionInputConfiguration :: IngestionInputConfiguration
$sel:ingestionInputConfiguration:StartDataIngestionJob' :: StartDataIngestionJob -> IngestionInputConfiguration
ingestionInputConfiguration} -> IngestionInputConfiguration
ingestionInputConfiguration) (\s :: StartDataIngestionJob
s@StartDataIngestionJob' {} IngestionInputConfiguration
a -> StartDataIngestionJob
s {$sel:ingestionInputConfiguration:StartDataIngestionJob' :: IngestionInputConfiguration
ingestionInputConfiguration = IngestionInputConfiguration
a} :: StartDataIngestionJob)
startDataIngestionJob_roleArn :: Lens.Lens' StartDataIngestionJob Prelude.Text
startDataIngestionJob_roleArn :: Lens' StartDataIngestionJob Text
startDataIngestionJob_roleArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJob' {Text
roleArn :: Text
$sel:roleArn:StartDataIngestionJob' :: StartDataIngestionJob -> Text
roleArn} -> Text
roleArn) (\s :: StartDataIngestionJob
s@StartDataIngestionJob' {} Text
a -> StartDataIngestionJob
s {$sel:roleArn:StartDataIngestionJob' :: Text
roleArn = Text
a} :: StartDataIngestionJob)
startDataIngestionJob_clientToken :: Lens.Lens' StartDataIngestionJob Prelude.Text
startDataIngestionJob_clientToken :: Lens' StartDataIngestionJob Text
startDataIngestionJob_clientToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJob' {Text
clientToken :: Text
$sel:clientToken:StartDataIngestionJob' :: StartDataIngestionJob -> Text
clientToken} -> Text
clientToken) (\s :: StartDataIngestionJob
s@StartDataIngestionJob' {} Text
a -> StartDataIngestionJob
s {$sel:clientToken:StartDataIngestionJob' :: Text
clientToken = Text
a} :: StartDataIngestionJob)
instance Core.AWSRequest StartDataIngestionJob where
type
AWSResponse StartDataIngestionJob =
StartDataIngestionJobResponse
request :: (Service -> Service)
-> StartDataIngestionJob -> Request StartDataIngestionJob
request Service -> Service
overrides =
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy StartDataIngestionJob
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse StartDataIngestionJob)))
response =
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
( \Int
s ResponseHeaders
h Object
x ->
Maybe Text
-> Maybe IngestionJobStatus -> Int -> StartDataIngestionJobResponse
StartDataIngestionJobResponse'
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"JobId")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"Status")
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
)
instance Prelude.Hashable StartDataIngestionJob where
hashWithSalt :: Int -> StartDataIngestionJob -> Int
hashWithSalt Int
_salt StartDataIngestionJob' {Text
IngestionInputConfiguration
clientToken :: Text
roleArn :: Text
ingestionInputConfiguration :: IngestionInputConfiguration
datasetName :: Text
$sel:clientToken:StartDataIngestionJob' :: StartDataIngestionJob -> Text
$sel:roleArn:StartDataIngestionJob' :: StartDataIngestionJob -> Text
$sel:ingestionInputConfiguration:StartDataIngestionJob' :: StartDataIngestionJob -> IngestionInputConfiguration
$sel:datasetName:StartDataIngestionJob' :: StartDataIngestionJob -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
datasetName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` IngestionInputConfiguration
ingestionInputConfiguration
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
roleArn
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
clientToken
instance Prelude.NFData StartDataIngestionJob where
rnf :: StartDataIngestionJob -> ()
rnf StartDataIngestionJob' {Text
IngestionInputConfiguration
clientToken :: Text
roleArn :: Text
ingestionInputConfiguration :: IngestionInputConfiguration
datasetName :: Text
$sel:clientToken:StartDataIngestionJob' :: StartDataIngestionJob -> Text
$sel:roleArn:StartDataIngestionJob' :: StartDataIngestionJob -> Text
$sel:ingestionInputConfiguration:StartDataIngestionJob' :: StartDataIngestionJob -> IngestionInputConfiguration
$sel:datasetName:StartDataIngestionJob' :: StartDataIngestionJob -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
datasetName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf IngestionInputConfiguration
ingestionInputConfiguration
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
roleArn
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
clientToken
instance Data.ToHeaders StartDataIngestionJob where
toHeaders :: StartDataIngestionJob -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"X-Amz-Target"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"AWSLookoutEquipmentFrontendService.StartDataIngestionJob" ::
Prelude.ByteString
),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.0" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON StartDataIngestionJob where
toJSON :: StartDataIngestionJob -> Value
toJSON StartDataIngestionJob' {Text
IngestionInputConfiguration
clientToken :: Text
roleArn :: Text
ingestionInputConfiguration :: IngestionInputConfiguration
datasetName :: Text
$sel:clientToken:StartDataIngestionJob' :: StartDataIngestionJob -> Text
$sel:roleArn:StartDataIngestionJob' :: StartDataIngestionJob -> Text
$sel:ingestionInputConfiguration:StartDataIngestionJob' :: StartDataIngestionJob -> IngestionInputConfiguration
$sel:datasetName:StartDataIngestionJob' :: StartDataIngestionJob -> Text
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ forall a. a -> Maybe a
Prelude.Just (Key
"DatasetName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
datasetName),
forall a. a -> Maybe a
Prelude.Just
( Key
"IngestionInputConfiguration"
forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= IngestionInputConfiguration
ingestionInputConfiguration
),
forall a. a -> Maybe a
Prelude.Just (Key
"RoleArn" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
roleArn),
forall a. a -> Maybe a
Prelude.Just (Key
"ClientToken" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
clientToken)
]
)
instance Data.ToPath StartDataIngestionJob where
toPath :: StartDataIngestionJob -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery StartDataIngestionJob where
toQuery :: StartDataIngestionJob -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data StartDataIngestionJobResponse = StartDataIngestionJobResponse'
{
StartDataIngestionJobResponse -> Maybe Text
jobId :: Prelude.Maybe Prelude.Text,
StartDataIngestionJobResponse -> Maybe IngestionJobStatus
status :: Prelude.Maybe IngestionJobStatus,
StartDataIngestionJobResponse -> Int
httpStatus :: Prelude.Int
}
deriving (StartDataIngestionJobResponse
-> StartDataIngestionJobResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: StartDataIngestionJobResponse
-> StartDataIngestionJobResponse -> Bool
$c/= :: StartDataIngestionJobResponse
-> StartDataIngestionJobResponse -> Bool
== :: StartDataIngestionJobResponse
-> StartDataIngestionJobResponse -> Bool
$c== :: StartDataIngestionJobResponse
-> StartDataIngestionJobResponse -> Bool
Prelude.Eq, ReadPrec [StartDataIngestionJobResponse]
ReadPrec StartDataIngestionJobResponse
Int -> ReadS StartDataIngestionJobResponse
ReadS [StartDataIngestionJobResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [StartDataIngestionJobResponse]
$creadListPrec :: ReadPrec [StartDataIngestionJobResponse]
readPrec :: ReadPrec StartDataIngestionJobResponse
$creadPrec :: ReadPrec StartDataIngestionJobResponse
readList :: ReadS [StartDataIngestionJobResponse]
$creadList :: ReadS [StartDataIngestionJobResponse]
readsPrec :: Int -> ReadS StartDataIngestionJobResponse
$creadsPrec :: Int -> ReadS StartDataIngestionJobResponse
Prelude.Read, Int -> StartDataIngestionJobResponse -> ShowS
[StartDataIngestionJobResponse] -> ShowS
StartDataIngestionJobResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [StartDataIngestionJobResponse] -> ShowS
$cshowList :: [StartDataIngestionJobResponse] -> ShowS
show :: StartDataIngestionJobResponse -> String
$cshow :: StartDataIngestionJobResponse -> String
showsPrec :: Int -> StartDataIngestionJobResponse -> ShowS
$cshowsPrec :: Int -> StartDataIngestionJobResponse -> ShowS
Prelude.Show, forall x.
Rep StartDataIngestionJobResponse x
-> StartDataIngestionJobResponse
forall x.
StartDataIngestionJobResponse
-> Rep StartDataIngestionJobResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep StartDataIngestionJobResponse x
-> StartDataIngestionJobResponse
$cfrom :: forall x.
StartDataIngestionJobResponse
-> Rep StartDataIngestionJobResponse x
Prelude.Generic)
newStartDataIngestionJobResponse ::
Prelude.Int ->
StartDataIngestionJobResponse
newStartDataIngestionJobResponse :: Int -> StartDataIngestionJobResponse
newStartDataIngestionJobResponse Int
pHttpStatus_ =
StartDataIngestionJobResponse'
{ $sel:jobId:StartDataIngestionJobResponse' :: Maybe Text
jobId =
forall a. Maybe a
Prelude.Nothing,
$sel:status:StartDataIngestionJobResponse' :: Maybe IngestionJobStatus
status = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:StartDataIngestionJobResponse' :: Int
httpStatus = Int
pHttpStatus_
}
startDataIngestionJobResponse_jobId :: Lens.Lens' StartDataIngestionJobResponse (Prelude.Maybe Prelude.Text)
startDataIngestionJobResponse_jobId :: Lens' StartDataIngestionJobResponse (Maybe Text)
startDataIngestionJobResponse_jobId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJobResponse' {Maybe Text
jobId :: Maybe Text
$sel:jobId:StartDataIngestionJobResponse' :: StartDataIngestionJobResponse -> Maybe Text
jobId} -> Maybe Text
jobId) (\s :: StartDataIngestionJobResponse
s@StartDataIngestionJobResponse' {} Maybe Text
a -> StartDataIngestionJobResponse
s {$sel:jobId:StartDataIngestionJobResponse' :: Maybe Text
jobId = Maybe Text
a} :: StartDataIngestionJobResponse)
startDataIngestionJobResponse_status :: Lens.Lens' StartDataIngestionJobResponse (Prelude.Maybe IngestionJobStatus)
startDataIngestionJobResponse_status :: Lens' StartDataIngestionJobResponse (Maybe IngestionJobStatus)
startDataIngestionJobResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJobResponse' {Maybe IngestionJobStatus
status :: Maybe IngestionJobStatus
$sel:status:StartDataIngestionJobResponse' :: StartDataIngestionJobResponse -> Maybe IngestionJobStatus
status} -> Maybe IngestionJobStatus
status) (\s :: StartDataIngestionJobResponse
s@StartDataIngestionJobResponse' {} Maybe IngestionJobStatus
a -> StartDataIngestionJobResponse
s {$sel:status:StartDataIngestionJobResponse' :: Maybe IngestionJobStatus
status = Maybe IngestionJobStatus
a} :: StartDataIngestionJobResponse)
startDataIngestionJobResponse_httpStatus :: Lens.Lens' StartDataIngestionJobResponse Prelude.Int
startDataIngestionJobResponse_httpStatus :: Lens' StartDataIngestionJobResponse Int
startDataIngestionJobResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\StartDataIngestionJobResponse' {Int
httpStatus :: Int
$sel:httpStatus:StartDataIngestionJobResponse' :: StartDataIngestionJobResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: StartDataIngestionJobResponse
s@StartDataIngestionJobResponse' {} Int
a -> StartDataIngestionJobResponse
s {$sel:httpStatus:StartDataIngestionJobResponse' :: Int
httpStatus = Int
a} :: StartDataIngestionJobResponse)
instance Prelude.NFData StartDataIngestionJobResponse where
rnf :: StartDataIngestionJobResponse -> ()
rnf StartDataIngestionJobResponse' {Int
Maybe Text
Maybe IngestionJobStatus
httpStatus :: Int
status :: Maybe IngestionJobStatus
jobId :: Maybe Text
$sel:httpStatus:StartDataIngestionJobResponse' :: StartDataIngestionJobResponse -> Int
$sel:status:StartDataIngestionJobResponse' :: StartDataIngestionJobResponse -> Maybe IngestionJobStatus
$sel:jobId:StartDataIngestionJobResponse' :: StartDataIngestionJobResponse -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
jobId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe IngestionJobStatus
status
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus