{-# 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.QuickSight.DescribeDataSource
(
DescribeDataSource (..),
newDescribeDataSource,
describeDataSource_awsAccountId,
describeDataSource_dataSourceId,
DescribeDataSourceResponse (..),
newDescribeDataSourceResponse,
describeDataSourceResponse_dataSource,
describeDataSourceResponse_requestId,
describeDataSourceResponse_status,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import Amazonka.QuickSight.Types
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data DescribeDataSource = DescribeDataSource'
{
DescribeDataSource -> Text
awsAccountId :: Prelude.Text,
DescribeDataSource -> Text
dataSourceId :: Prelude.Text
}
deriving (DescribeDataSource -> DescribeDataSource -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeDataSource -> DescribeDataSource -> Bool
$c/= :: DescribeDataSource -> DescribeDataSource -> Bool
== :: DescribeDataSource -> DescribeDataSource -> Bool
$c== :: DescribeDataSource -> DescribeDataSource -> Bool
Prelude.Eq, ReadPrec [DescribeDataSource]
ReadPrec DescribeDataSource
Int -> ReadS DescribeDataSource
ReadS [DescribeDataSource]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeDataSource]
$creadListPrec :: ReadPrec [DescribeDataSource]
readPrec :: ReadPrec DescribeDataSource
$creadPrec :: ReadPrec DescribeDataSource
readList :: ReadS [DescribeDataSource]
$creadList :: ReadS [DescribeDataSource]
readsPrec :: Int -> ReadS DescribeDataSource
$creadsPrec :: Int -> ReadS DescribeDataSource
Prelude.Read, Int -> DescribeDataSource -> ShowS
[DescribeDataSource] -> ShowS
DescribeDataSource -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeDataSource] -> ShowS
$cshowList :: [DescribeDataSource] -> ShowS
show :: DescribeDataSource -> String
$cshow :: DescribeDataSource -> String
showsPrec :: Int -> DescribeDataSource -> ShowS
$cshowsPrec :: Int -> DescribeDataSource -> ShowS
Prelude.Show, forall x. Rep DescribeDataSource x -> DescribeDataSource
forall x. DescribeDataSource -> Rep DescribeDataSource x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribeDataSource x -> DescribeDataSource
$cfrom :: forall x. DescribeDataSource -> Rep DescribeDataSource x
Prelude.Generic)
newDescribeDataSource ::
Prelude.Text ->
Prelude.Text ->
DescribeDataSource
newDescribeDataSource :: Text -> Text -> DescribeDataSource
newDescribeDataSource Text
pAwsAccountId_ Text
pDataSourceId_ =
DescribeDataSource'
{ $sel:awsAccountId:DescribeDataSource' :: Text
awsAccountId = Text
pAwsAccountId_,
$sel:dataSourceId:DescribeDataSource' :: Text
dataSourceId = Text
pDataSourceId_
}
describeDataSource_awsAccountId :: Lens.Lens' DescribeDataSource Prelude.Text
describeDataSource_awsAccountId :: Lens' DescribeDataSource Text
describeDataSource_awsAccountId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDataSource' {Text
awsAccountId :: Text
$sel:awsAccountId:DescribeDataSource' :: DescribeDataSource -> Text
awsAccountId} -> Text
awsAccountId) (\s :: DescribeDataSource
s@DescribeDataSource' {} Text
a -> DescribeDataSource
s {$sel:awsAccountId:DescribeDataSource' :: Text
awsAccountId = Text
a} :: DescribeDataSource)
describeDataSource_dataSourceId :: Lens.Lens' DescribeDataSource Prelude.Text
describeDataSource_dataSourceId :: Lens' DescribeDataSource Text
describeDataSource_dataSourceId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDataSource' {Text
dataSourceId :: Text
$sel:dataSourceId:DescribeDataSource' :: DescribeDataSource -> Text
dataSourceId} -> Text
dataSourceId) (\s :: DescribeDataSource
s@DescribeDataSource' {} Text
a -> DescribeDataSource
s {$sel:dataSourceId:DescribeDataSource' :: Text
dataSourceId = Text
a} :: DescribeDataSource)
instance Core.AWSRequest DescribeDataSource where
type
AWSResponse DescribeDataSource =
DescribeDataSourceResponse
request :: (Service -> Service)
-> DescribeDataSource -> Request DescribeDataSource
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 DescribeDataSource
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse DescribeDataSource)))
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 DataSource -> Maybe Text -> Int -> DescribeDataSourceResponse
DescribeDataSourceResponse'
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
"DataSource")
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
"RequestId")
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 DescribeDataSource where
hashWithSalt :: Int -> DescribeDataSource -> Int
hashWithSalt Int
_salt DescribeDataSource' {Text
dataSourceId :: Text
awsAccountId :: Text
$sel:dataSourceId:DescribeDataSource' :: DescribeDataSource -> Text
$sel:awsAccountId:DescribeDataSource' :: DescribeDataSource -> Text
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
awsAccountId
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
dataSourceId
instance Prelude.NFData DescribeDataSource where
rnf :: DescribeDataSource -> ()
rnf DescribeDataSource' {Text
dataSourceId :: Text
awsAccountId :: Text
$sel:dataSourceId:DescribeDataSource' :: DescribeDataSource -> Text
$sel:awsAccountId:DescribeDataSource' :: DescribeDataSource -> Text
..} =
forall a. NFData a => a -> ()
Prelude.rnf Text
awsAccountId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
dataSourceId
instance Data.ToHeaders DescribeDataSource where
toHeaders :: DescribeDataSource -> 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.0" ::
Prelude.ByteString
)
]
)
instance Data.ToPath DescribeDataSource where
toPath :: DescribeDataSource -> ByteString
toPath DescribeDataSource' {Text
dataSourceId :: Text
awsAccountId :: Text
$sel:dataSourceId:DescribeDataSource' :: DescribeDataSource -> Text
$sel:awsAccountId:DescribeDataSource' :: DescribeDataSource -> Text
..} =
forall a. Monoid a => [a] -> a
Prelude.mconcat
[ ByteString
"/accounts/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
awsAccountId,
ByteString
"/data-sources/",
forall a. ToByteString a => a -> ByteString
Data.toBS Text
dataSourceId
]
instance Data.ToQuery DescribeDataSource where
toQuery :: DescribeDataSource -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data DescribeDataSourceResponse = DescribeDataSourceResponse'
{
DescribeDataSourceResponse -> Maybe DataSource
dataSource :: Prelude.Maybe DataSource,
DescribeDataSourceResponse -> Maybe Text
requestId :: Prelude.Maybe Prelude.Text,
DescribeDataSourceResponse -> Int
status :: Prelude.Int
}
deriving (DescribeDataSourceResponse -> DescribeDataSourceResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribeDataSourceResponse -> DescribeDataSourceResponse -> Bool
$c/= :: DescribeDataSourceResponse -> DescribeDataSourceResponse -> Bool
== :: DescribeDataSourceResponse -> DescribeDataSourceResponse -> Bool
$c== :: DescribeDataSourceResponse -> DescribeDataSourceResponse -> Bool
Prelude.Eq, ReadPrec [DescribeDataSourceResponse]
ReadPrec DescribeDataSourceResponse
Int -> ReadS DescribeDataSourceResponse
ReadS [DescribeDataSourceResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribeDataSourceResponse]
$creadListPrec :: ReadPrec [DescribeDataSourceResponse]
readPrec :: ReadPrec DescribeDataSourceResponse
$creadPrec :: ReadPrec DescribeDataSourceResponse
readList :: ReadS [DescribeDataSourceResponse]
$creadList :: ReadS [DescribeDataSourceResponse]
readsPrec :: Int -> ReadS DescribeDataSourceResponse
$creadsPrec :: Int -> ReadS DescribeDataSourceResponse
Prelude.Read, Int -> DescribeDataSourceResponse -> ShowS
[DescribeDataSourceResponse] -> ShowS
DescribeDataSourceResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribeDataSourceResponse] -> ShowS
$cshowList :: [DescribeDataSourceResponse] -> ShowS
show :: DescribeDataSourceResponse -> String
$cshow :: DescribeDataSourceResponse -> String
showsPrec :: Int -> DescribeDataSourceResponse -> ShowS
$cshowsPrec :: Int -> DescribeDataSourceResponse -> ShowS
Prelude.Show, forall x.
Rep DescribeDataSourceResponse x -> DescribeDataSourceResponse
forall x.
DescribeDataSourceResponse -> Rep DescribeDataSourceResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribeDataSourceResponse x -> DescribeDataSourceResponse
$cfrom :: forall x.
DescribeDataSourceResponse -> Rep DescribeDataSourceResponse x
Prelude.Generic)
newDescribeDataSourceResponse ::
Prelude.Int ->
DescribeDataSourceResponse
newDescribeDataSourceResponse :: Int -> DescribeDataSourceResponse
newDescribeDataSourceResponse Int
pStatus_ =
DescribeDataSourceResponse'
{ $sel:dataSource:DescribeDataSourceResponse' :: Maybe DataSource
dataSource =
forall a. Maybe a
Prelude.Nothing,
$sel:requestId:DescribeDataSourceResponse' :: Maybe Text
requestId = forall a. Maybe a
Prelude.Nothing,
$sel:status:DescribeDataSourceResponse' :: Int
status = Int
pStatus_
}
describeDataSourceResponse_dataSource :: Lens.Lens' DescribeDataSourceResponse (Prelude.Maybe DataSource)
describeDataSourceResponse_dataSource :: Lens' DescribeDataSourceResponse (Maybe DataSource)
describeDataSourceResponse_dataSource = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDataSourceResponse' {Maybe DataSource
dataSource :: Maybe DataSource
$sel:dataSource:DescribeDataSourceResponse' :: DescribeDataSourceResponse -> Maybe DataSource
dataSource} -> Maybe DataSource
dataSource) (\s :: DescribeDataSourceResponse
s@DescribeDataSourceResponse' {} Maybe DataSource
a -> DescribeDataSourceResponse
s {$sel:dataSource:DescribeDataSourceResponse' :: Maybe DataSource
dataSource = Maybe DataSource
a} :: DescribeDataSourceResponse)
describeDataSourceResponse_requestId :: Lens.Lens' DescribeDataSourceResponse (Prelude.Maybe Prelude.Text)
describeDataSourceResponse_requestId :: Lens' DescribeDataSourceResponse (Maybe Text)
describeDataSourceResponse_requestId = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDataSourceResponse' {Maybe Text
requestId :: Maybe Text
$sel:requestId:DescribeDataSourceResponse' :: DescribeDataSourceResponse -> Maybe Text
requestId} -> Maybe Text
requestId) (\s :: DescribeDataSourceResponse
s@DescribeDataSourceResponse' {} Maybe Text
a -> DescribeDataSourceResponse
s {$sel:requestId:DescribeDataSourceResponse' :: Maybe Text
requestId = Maybe Text
a} :: DescribeDataSourceResponse)
describeDataSourceResponse_status :: Lens.Lens' DescribeDataSourceResponse Prelude.Int
describeDataSourceResponse_status :: Lens' DescribeDataSourceResponse Int
describeDataSourceResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribeDataSourceResponse' {Int
status :: Int
$sel:status:DescribeDataSourceResponse' :: DescribeDataSourceResponse -> Int
status} -> Int
status) (\s :: DescribeDataSourceResponse
s@DescribeDataSourceResponse' {} Int
a -> DescribeDataSourceResponse
s {$sel:status:DescribeDataSourceResponse' :: Int
status = Int
a} :: DescribeDataSourceResponse)
instance Prelude.NFData DescribeDataSourceResponse where
rnf :: DescribeDataSourceResponse -> ()
rnf DescribeDataSourceResponse' {Int
Maybe Text
Maybe DataSource
status :: Int
requestId :: Maybe Text
dataSource :: Maybe DataSource
$sel:status:DescribeDataSourceResponse' :: DescribeDataSourceResponse -> Int
$sel:requestId:DescribeDataSourceResponse' :: DescribeDataSourceResponse -> Maybe Text
$sel:dataSource:DescribeDataSourceResponse' :: DescribeDataSourceResponse -> Maybe DataSource
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe DataSource
dataSource
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
requestId
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
status