{-# 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.Pinpoint.GetSegmentImportJobs
(
GetSegmentImportJobs (..),
newGetSegmentImportJobs,
getSegmentImportJobs_pageSize,
getSegmentImportJobs_token,
getSegmentImportJobs_segmentId,
getSegmentImportJobs_applicationId,
GetSegmentImportJobsResponse (..),
newGetSegmentImportJobsResponse,
getSegmentImportJobsResponse_httpStatus,
getSegmentImportJobsResponse_importJobsResponse,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.Pinpoint.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data GetSegmentImportJobs = GetSegmentImportJobs'
{
GetSegmentImportJobs -> Maybe Text
pageSize :: Prelude.Maybe Prelude.Text,
GetSegmentImportJobs -> Maybe Text
token :: Prelude.Maybe Prelude.Text,
GetSegmentImportJobs -> Text
segmentId :: Prelude.Text,
GetSegmentImportJobs -> Text
applicationId :: Prelude.Text
}
deriving (GetSegmentImportJobs -> GetSegmentImportJobs -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSegmentImportJobs -> GetSegmentImportJobs -> Bool
$c/= :: GetSegmentImportJobs -> GetSegmentImportJobs -> Bool
== :: GetSegmentImportJobs -> GetSegmentImportJobs -> Bool
$c== :: GetSegmentImportJobs -> GetSegmentImportJobs -> Bool
Prelude.Eq, ReadPrec [GetSegmentImportJobs]
ReadPrec GetSegmentImportJobs
Int -> ReadS GetSegmentImportJobs
ReadS [GetSegmentImportJobs]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSegmentImportJobs]
$creadListPrec :: ReadPrec [GetSegmentImportJobs]
readPrec :: ReadPrec GetSegmentImportJobs
$creadPrec :: ReadPrec GetSegmentImportJobs
readList :: ReadS [GetSegmentImportJobs]
$creadList :: ReadS [GetSegmentImportJobs]
readsPrec :: Int -> ReadS GetSegmentImportJobs
$creadsPrec :: Int -> ReadS GetSegmentImportJobs
Prelude.Read, Int -> GetSegmentImportJobs -> ShowS
[GetSegmentImportJobs] -> ShowS
GetSegmentImportJobs -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSegmentImportJobs] -> ShowS
$cshowList :: [GetSegmentImportJobs] -> ShowS
show :: GetSegmentImportJobs -> String
$cshow :: GetSegmentImportJobs -> String
showsPrec :: Int -> GetSegmentImportJobs -> ShowS
$cshowsPrec :: Int -> GetSegmentImportJobs -> ShowS
Prelude.Show, forall x. Rep GetSegmentImportJobs x -> GetSegmentImportJobs
forall x. GetSegmentImportJobs -> Rep GetSegmentImportJobs x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetSegmentImportJobs x -> GetSegmentImportJobs
$cfrom :: forall x. GetSegmentImportJobs -> Rep GetSegmentImportJobs x
Prelude.Generic)
newGetSegmentImportJobs ::
Prelude.Text ->
Prelude.Text ->
GetSegmentImportJobs
newGetSegmentImportJobs :: Text -> Text -> GetSegmentImportJobs
newGetSegmentImportJobs Text
pSegmentId_ Text
pApplicationId_ =
GetSegmentImportJobs'
{ $sel:pageSize:GetSegmentImportJobs' :: Maybe Text
pageSize = forall a. Maybe a
Prelude.Nothing,
$sel:token:GetSegmentImportJobs' :: Maybe Text
token = forall a. Maybe a
Prelude.Nothing,
$sel:segmentId:GetSegmentImportJobs' :: Text
segmentId = Text
pSegmentId_,
$sel:applicationId:GetSegmentImportJobs' :: Text
applicationId = Text
pApplicationId_
}
getSegmentImportJobs_pageSize :: Lens.Lens' GetSegmentImportJobs (Prelude.Maybe Prelude.Text)
getSegmentImportJobs_pageSize :: Lens' GetSegmentImportJobs (Maybe Text)
getSegmentImportJobs_pageSize = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSegmentImportJobs' {Maybe Text
pageSize :: Maybe Text
$sel:pageSize:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
pageSize} -> Maybe Text
pageSize) (\s :: GetSegmentImportJobs
s@GetSegmentImportJobs' {} Maybe Text
a -> GetSegmentImportJobs
s {$sel:pageSize:GetSegmentImportJobs' :: Maybe Text
pageSize = Maybe Text
a} :: GetSegmentImportJobs)
getSegmentImportJobs_token :: Lens.Lens' GetSegmentImportJobs (Prelude.Maybe Prelude.Text)
getSegmentImportJobs_token :: Lens' GetSegmentImportJobs (Maybe Text)
getSegmentImportJobs_token = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSegmentImportJobs' {Maybe Text
token :: Maybe Text
$sel:token:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
token} -> Maybe Text
token) (\s :: GetSegmentImportJobs
s@GetSegmentImportJobs' {} Maybe Text
a -> GetSegmentImportJobs
s {$sel:token:GetSegmentImportJobs' :: Maybe Text
token = Maybe Text
a} :: GetSegmentImportJobs)
getSegmentImportJobs_segmentId :: Lens.Lens' GetSegmentImportJobs Prelude.Text
getSegmentImportJobs_segmentId :: Lens' GetSegmentImportJobs Text
getSegmentImportJobs_segmentId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSegmentImportJobs' {Text
segmentId :: Text
$sel:segmentId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
segmentId} -> Text
segmentId) (\s :: GetSegmentImportJobs
s@GetSegmentImportJobs' {} Text
a -> GetSegmentImportJobs
s {$sel:segmentId:GetSegmentImportJobs' :: Text
segmentId = Text
a} :: GetSegmentImportJobs)
getSegmentImportJobs_applicationId :: Lens.Lens' GetSegmentImportJobs Prelude.Text
getSegmentImportJobs_applicationId :: Lens' GetSegmentImportJobs Text
getSegmentImportJobs_applicationId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSegmentImportJobs' {Text
applicationId :: Text
$sel:applicationId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
applicationId} -> Text
applicationId) (\s :: GetSegmentImportJobs
s@GetSegmentImportJobs' {} Text
a -> GetSegmentImportJobs
s {$sel:applicationId:GetSegmentImportJobs' :: Text
applicationId = Text
a} :: GetSegmentImportJobs)
instance Core.AWSRequest GetSegmentImportJobs where
type
AWSResponse GetSegmentImportJobs =
GetSegmentImportJobsResponse
request :: (Service -> Service)
-> GetSegmentImportJobs -> Request GetSegmentImportJobs
request Service -> Service
overrides =
forall a. ToRequest a => Service -> a -> Request a
Request.get (Service -> Service
overrides Service
defaultService)
response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetSegmentImportJobs
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse GetSegmentImportJobs)))
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 ->
Int -> ImportJobsResponse -> GetSegmentImportJobsResponse
GetSegmentImportJobsResponse'
forall (f :: * -> *) a b. Functor 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))
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall a. FromJSON a => Object -> Either String a
Data.eitherParseJSON Object
x)
)
instance Prelude.Hashable GetSegmentImportJobs where
hashWithSalt :: Int -> GetSegmentImportJobs -> Int
hashWithSalt Int
_salt GetSegmentImportJobs' {Maybe Text
Text
applicationId :: Text
segmentId :: Text
token :: Maybe Text
pageSize :: Maybe Text
$sel:applicationId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:segmentId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:token:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
$sel:pageSize:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
pageSize
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
token
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
segmentId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
applicationId
instance Prelude.NFData GetSegmentImportJobs where
rnf :: GetSegmentImportJobs -> ()
rnf GetSegmentImportJobs' {Maybe Text
Text
applicationId :: Text
segmentId :: Text
token :: Maybe Text
pageSize :: Maybe Text
$sel:applicationId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:segmentId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:token:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
$sel:pageSize:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
pageSize
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
token
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
segmentId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
applicationId
instance Data.ToHeaders GetSegmentImportJobs where
toHeaders :: GetSegmentImportJobs -> ResponseHeaders
toHeaders =
forall a b. a -> b -> a
Prelude.const
( forall a. Monoid a => [a] -> a
Prelude.mconcat
[ HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToPath GetSegmentImportJobs where
toPath :: GetSegmentImportJobs -> ByteString
toPath GetSegmentImportJobs' {Maybe Text
Text
applicationId :: Text
segmentId :: Text
token :: Maybe Text
pageSize :: Maybe Text
$sel:applicationId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:segmentId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:token:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
$sel:pageSize:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/v1/apps/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
applicationId,
ByteString
"/segments/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
segmentId,
ByteString
"/jobs/import"
]
instance Data.ToQuery GetSegmentImportJobs where
toQuery :: GetSegmentImportJobs -> QueryString
toQuery GetSegmentImportJobs' {Maybe Text
Text
applicationId :: Text
segmentId :: Text
token :: Maybe Text
pageSize :: Maybe Text
$sel:applicationId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:segmentId:GetSegmentImportJobs' :: GetSegmentImportJobs -> Text
$sel:token:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
$sel:pageSize:GetSegmentImportJobs' :: GetSegmentImportJobs -> Maybe Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ByteString
"page-size" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
pageSize, ByteString
"token" forall a. ToQuery a => ByteString -> a -> QueryString
Data.=: Maybe Text
token]
data GetSegmentImportJobsResponse = GetSegmentImportJobsResponse'
{
GetSegmentImportJobsResponse -> Int
httpStatus :: Prelude.Int,
GetSegmentImportJobsResponse -> ImportJobsResponse
importJobsResponse :: ImportJobsResponse
}
deriving (GetSegmentImportJobsResponse
-> GetSegmentImportJobsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetSegmentImportJobsResponse
-> GetSegmentImportJobsResponse -> Bool
$c/= :: GetSegmentImportJobsResponse
-> GetSegmentImportJobsResponse -> Bool
== :: GetSegmentImportJobsResponse
-> GetSegmentImportJobsResponse -> Bool
$c== :: GetSegmentImportJobsResponse
-> GetSegmentImportJobsResponse -> Bool
Prelude.Eq, ReadPrec [GetSegmentImportJobsResponse]
ReadPrec GetSegmentImportJobsResponse
Int -> ReadS GetSegmentImportJobsResponse
ReadS [GetSegmentImportJobsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetSegmentImportJobsResponse]
$creadListPrec :: ReadPrec [GetSegmentImportJobsResponse]
readPrec :: ReadPrec GetSegmentImportJobsResponse
$creadPrec :: ReadPrec GetSegmentImportJobsResponse
readList :: ReadS [GetSegmentImportJobsResponse]
$creadList :: ReadS [GetSegmentImportJobsResponse]
readsPrec :: Int -> ReadS GetSegmentImportJobsResponse
$creadsPrec :: Int -> ReadS GetSegmentImportJobsResponse
Prelude.Read, Int -> GetSegmentImportJobsResponse -> ShowS
[GetSegmentImportJobsResponse] -> ShowS
GetSegmentImportJobsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetSegmentImportJobsResponse] -> ShowS
$cshowList :: [GetSegmentImportJobsResponse] -> ShowS
show :: GetSegmentImportJobsResponse -> String
$cshow :: GetSegmentImportJobsResponse -> String
showsPrec :: Int -> GetSegmentImportJobsResponse -> ShowS
$cshowsPrec :: Int -> GetSegmentImportJobsResponse -> ShowS
Prelude.Show, forall x.
Rep GetSegmentImportJobsResponse x -> GetSegmentImportJobsResponse
forall x.
GetSegmentImportJobsResponse -> Rep GetSegmentImportJobsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetSegmentImportJobsResponse x -> GetSegmentImportJobsResponse
$cfrom :: forall x.
GetSegmentImportJobsResponse -> Rep GetSegmentImportJobsResponse x
Prelude.Generic)
newGetSegmentImportJobsResponse ::
Prelude.Int ->
ImportJobsResponse ->
GetSegmentImportJobsResponse
newGetSegmentImportJobsResponse :: Int -> ImportJobsResponse -> GetSegmentImportJobsResponse
newGetSegmentImportJobsResponse
Int
pHttpStatus_
ImportJobsResponse
pImportJobsResponse_ =
GetSegmentImportJobsResponse'
{ $sel:httpStatus:GetSegmentImportJobsResponse' :: Int
httpStatus =
Int
pHttpStatus_,
$sel:importJobsResponse:GetSegmentImportJobsResponse' :: ImportJobsResponse
importJobsResponse = ImportJobsResponse
pImportJobsResponse_
}
getSegmentImportJobsResponse_httpStatus :: Lens.Lens' GetSegmentImportJobsResponse Prelude.Int
getSegmentImportJobsResponse_httpStatus :: Lens' GetSegmentImportJobsResponse Int
getSegmentImportJobsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSegmentImportJobsResponse' {Int
httpStatus :: Int
$sel:httpStatus:GetSegmentImportJobsResponse' :: GetSegmentImportJobsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: GetSegmentImportJobsResponse
s@GetSegmentImportJobsResponse' {} Int
a -> GetSegmentImportJobsResponse
s {$sel:httpStatus:GetSegmentImportJobsResponse' :: Int
httpStatus = Int
a} :: GetSegmentImportJobsResponse)
getSegmentImportJobsResponse_importJobsResponse :: Lens.Lens' GetSegmentImportJobsResponse ImportJobsResponse
getSegmentImportJobsResponse_importJobsResponse :: Lens' GetSegmentImportJobsResponse ImportJobsResponse
getSegmentImportJobsResponse_importJobsResponse = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetSegmentImportJobsResponse' {ImportJobsResponse
importJobsResponse :: ImportJobsResponse
$sel:importJobsResponse:GetSegmentImportJobsResponse' :: GetSegmentImportJobsResponse -> ImportJobsResponse
importJobsResponse} -> ImportJobsResponse
importJobsResponse) (\s :: GetSegmentImportJobsResponse
s@GetSegmentImportJobsResponse' {} ImportJobsResponse
a -> GetSegmentImportJobsResponse
s {$sel:importJobsResponse:GetSegmentImportJobsResponse' :: ImportJobsResponse
importJobsResponse = ImportJobsResponse
a} :: GetSegmentImportJobsResponse)
instance Prelude.NFData GetSegmentImportJobsResponse where
rnf :: GetSegmentImportJobsResponse -> ()
rnf GetSegmentImportJobsResponse' {Int
ImportJobsResponse
importJobsResponse :: ImportJobsResponse
httpStatus :: Int
$sel:importJobsResponse:GetSegmentImportJobsResponse' :: GetSegmentImportJobsResponse -> ImportJobsResponse
$sel:httpStatus:GetSegmentImportJobsResponse' :: GetSegmentImportJobsResponse -> Int
..} =
forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ImportJobsResponse
importJobsResponse