{-# 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.LakeFormation.ListDataCellsFilter
(
ListDataCellsFilter (..),
newListDataCellsFilter,
listDataCellsFilter_maxResults,
listDataCellsFilter_nextToken,
listDataCellsFilter_table,
ListDataCellsFilterResponse (..),
newListDataCellsFilterResponse,
listDataCellsFilterResponse_dataCellsFilters,
listDataCellsFilterResponse_nextToken,
listDataCellsFilterResponse_httpStatus,
)
where
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import Amazonka.LakeFormation.Types
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
data ListDataCellsFilter = ListDataCellsFilter'
{
ListDataCellsFilter -> Maybe Natural
maxResults :: Prelude.Maybe Prelude.Natural,
ListDataCellsFilter -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
ListDataCellsFilter -> Maybe TableResource
table :: Prelude.Maybe TableResource
}
deriving (ListDataCellsFilter -> ListDataCellsFilter -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListDataCellsFilter -> ListDataCellsFilter -> Bool
$c/= :: ListDataCellsFilter -> ListDataCellsFilter -> Bool
== :: ListDataCellsFilter -> ListDataCellsFilter -> Bool
$c== :: ListDataCellsFilter -> ListDataCellsFilter -> Bool
Prelude.Eq, ReadPrec [ListDataCellsFilter]
ReadPrec ListDataCellsFilter
Int -> ReadS ListDataCellsFilter
ReadS [ListDataCellsFilter]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListDataCellsFilter]
$creadListPrec :: ReadPrec [ListDataCellsFilter]
readPrec :: ReadPrec ListDataCellsFilter
$creadPrec :: ReadPrec ListDataCellsFilter
readList :: ReadS [ListDataCellsFilter]
$creadList :: ReadS [ListDataCellsFilter]
readsPrec :: Int -> ReadS ListDataCellsFilter
$creadsPrec :: Int -> ReadS ListDataCellsFilter
Prelude.Read, Int -> ListDataCellsFilter -> ShowS
[ListDataCellsFilter] -> ShowS
ListDataCellsFilter -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListDataCellsFilter] -> ShowS
$cshowList :: [ListDataCellsFilter] -> ShowS
show :: ListDataCellsFilter -> String
$cshow :: ListDataCellsFilter -> String
showsPrec :: Int -> ListDataCellsFilter -> ShowS
$cshowsPrec :: Int -> ListDataCellsFilter -> ShowS
Prelude.Show, forall x. Rep ListDataCellsFilter x -> ListDataCellsFilter
forall x. ListDataCellsFilter -> Rep ListDataCellsFilter x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep ListDataCellsFilter x -> ListDataCellsFilter
$cfrom :: forall x. ListDataCellsFilter -> Rep ListDataCellsFilter x
Prelude.Generic)
newListDataCellsFilter ::
ListDataCellsFilter
newListDataCellsFilter :: ListDataCellsFilter
newListDataCellsFilter =
ListDataCellsFilter'
{ $sel:maxResults:ListDataCellsFilter' :: Maybe Natural
maxResults = forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListDataCellsFilter' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:table:ListDataCellsFilter' :: Maybe TableResource
table = forall a. Maybe a
Prelude.Nothing
}
listDataCellsFilter_maxResults :: Lens.Lens' ListDataCellsFilter (Prelude.Maybe Prelude.Natural)
listDataCellsFilter_maxResults :: Lens' ListDataCellsFilter (Maybe Natural)
listDataCellsFilter_maxResults = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDataCellsFilter' {Maybe Natural
maxResults :: Maybe Natural
$sel:maxResults:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Natural
maxResults} -> Maybe Natural
maxResults) (\s :: ListDataCellsFilter
s@ListDataCellsFilter' {} Maybe Natural
a -> ListDataCellsFilter
s {$sel:maxResults:ListDataCellsFilter' :: Maybe Natural
maxResults = Maybe Natural
a} :: ListDataCellsFilter)
listDataCellsFilter_nextToken :: Lens.Lens' ListDataCellsFilter (Prelude.Maybe Prelude.Text)
listDataCellsFilter_nextToken :: Lens' ListDataCellsFilter (Maybe Text)
listDataCellsFilter_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDataCellsFilter' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListDataCellsFilter
s@ListDataCellsFilter' {} Maybe Text
a -> ListDataCellsFilter
s {$sel:nextToken:ListDataCellsFilter' :: Maybe Text
nextToken = Maybe Text
a} :: ListDataCellsFilter)
listDataCellsFilter_table :: Lens.Lens' ListDataCellsFilter (Prelude.Maybe TableResource)
listDataCellsFilter_table :: Lens' ListDataCellsFilter (Maybe TableResource)
listDataCellsFilter_table = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDataCellsFilter' {Maybe TableResource
table :: Maybe TableResource
$sel:table:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe TableResource
table} -> Maybe TableResource
table) (\s :: ListDataCellsFilter
s@ListDataCellsFilter' {} Maybe TableResource
a -> ListDataCellsFilter
s {$sel:table:ListDataCellsFilter' :: Maybe TableResource
table = Maybe TableResource
a} :: ListDataCellsFilter)
instance Core.AWSPager ListDataCellsFilter where
page :: ListDataCellsFilter
-> AWSResponse ListDataCellsFilter -> Maybe ListDataCellsFilter
page ListDataCellsFilter
rq AWSResponse ListDataCellsFilter
rs
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse ListDataCellsFilter
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListDataCellsFilterResponse (Maybe Text)
listDataCellsFilterResponse_nextToken
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
) =
forall a. Maybe a
Prelude.Nothing
| forall a. AWSTruncated a => a -> Bool
Core.stop
( AWSResponse ListDataCellsFilter
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListDataCellsFilterResponse (Maybe [DataCellsFilter])
listDataCellsFilterResponse_dataCellsFilters
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
) =
forall a. Maybe a
Prelude.Nothing
| Bool
Prelude.otherwise =
forall a. a -> Maybe a
Prelude.Just
forall a b. (a -> b) -> a -> b
Prelude.$ ListDataCellsFilter
rq
forall a b. a -> (a -> b) -> b
Prelude.& Lens' ListDataCellsFilter (Maybe Text)
listDataCellsFilter_nextToken
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse ListDataCellsFilter
rs
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListDataCellsFilterResponse (Maybe Text)
listDataCellsFilterResponse_nextToken
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
instance Core.AWSRequest ListDataCellsFilter where
type
AWSResponse ListDataCellsFilter =
ListDataCellsFilterResponse
request :: (Service -> Service)
-> ListDataCellsFilter -> Request ListDataCellsFilter
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 ListDataCellsFilter
-> ClientResponse ClientBody
-> m (Either
Error (ClientResponse (AWSResponse ListDataCellsFilter)))
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 [DataCellsFilter]
-> Maybe Text -> Int -> ListDataCellsFilterResponse
ListDataCellsFilterResponse'
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
"DataCellsFilters"
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ forall a. Monoid a => a
Prelude.mempty
)
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
"NextToken")
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 ListDataCellsFilter where
hashWithSalt :: Int -> ListDataCellsFilter -> Int
hashWithSalt Int
_salt ListDataCellsFilter' {Maybe Natural
Maybe Text
Maybe TableResource
table :: Maybe TableResource
nextToken :: Maybe Text
maxResults :: Maybe Natural
$sel:table:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe TableResource
$sel:nextToken:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Text
$sel:maxResults:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Natural
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
maxResults
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe TableResource
table
instance Prelude.NFData ListDataCellsFilter where
rnf :: ListDataCellsFilter -> ()
rnf ListDataCellsFilter' {Maybe Natural
Maybe Text
Maybe TableResource
table :: Maybe TableResource
nextToken :: Maybe Text
maxResults :: Maybe Natural
$sel:table:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe TableResource
$sel:nextToken:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Text
$sel:maxResults:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Natural
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe Natural
maxResults
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe TableResource
table
instance Data.ToHeaders ListDataCellsFilter where
toHeaders :: ListDataCellsFilter -> 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.ToJSON ListDataCellsFilter where
toJSON :: ListDataCellsFilter -> Value
toJSON ListDataCellsFilter' {Maybe Natural
Maybe Text
Maybe TableResource
table :: Maybe TableResource
nextToken :: Maybe Text
maxResults :: Maybe Natural
$sel:table:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe TableResource
$sel:nextToken:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Text
$sel:maxResults:ListDataCellsFilter' :: ListDataCellsFilter -> Maybe Natural
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"MaxResults" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Natural
maxResults,
(Key
"NextToken" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
nextToken,
(Key
"Table" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..=) forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe TableResource
table
]
)
instance Data.ToPath ListDataCellsFilter where
toPath :: ListDataCellsFilter -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/ListDataCellsFilter"
instance Data.ToQuery ListDataCellsFilter where
toQuery :: ListDataCellsFilter -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data ListDataCellsFilterResponse = ListDataCellsFilterResponse'
{
ListDataCellsFilterResponse -> Maybe [DataCellsFilter]
dataCellsFilters :: Prelude.Maybe [DataCellsFilter],
ListDataCellsFilterResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
ListDataCellsFilterResponse -> Int
httpStatus :: Prelude.Int
}
deriving (ListDataCellsFilterResponse -> ListDataCellsFilterResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListDataCellsFilterResponse -> ListDataCellsFilterResponse -> Bool
$c/= :: ListDataCellsFilterResponse -> ListDataCellsFilterResponse -> Bool
== :: ListDataCellsFilterResponse -> ListDataCellsFilterResponse -> Bool
$c== :: ListDataCellsFilterResponse -> ListDataCellsFilterResponse -> Bool
Prelude.Eq, ReadPrec [ListDataCellsFilterResponse]
ReadPrec ListDataCellsFilterResponse
Int -> ReadS ListDataCellsFilterResponse
ReadS [ListDataCellsFilterResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListDataCellsFilterResponse]
$creadListPrec :: ReadPrec [ListDataCellsFilterResponse]
readPrec :: ReadPrec ListDataCellsFilterResponse
$creadPrec :: ReadPrec ListDataCellsFilterResponse
readList :: ReadS [ListDataCellsFilterResponse]
$creadList :: ReadS [ListDataCellsFilterResponse]
readsPrec :: Int -> ReadS ListDataCellsFilterResponse
$creadsPrec :: Int -> ReadS ListDataCellsFilterResponse
Prelude.Read, Int -> ListDataCellsFilterResponse -> ShowS
[ListDataCellsFilterResponse] -> ShowS
ListDataCellsFilterResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListDataCellsFilterResponse] -> ShowS
$cshowList :: [ListDataCellsFilterResponse] -> ShowS
show :: ListDataCellsFilterResponse -> String
$cshow :: ListDataCellsFilterResponse -> String
showsPrec :: Int -> ListDataCellsFilterResponse -> ShowS
$cshowsPrec :: Int -> ListDataCellsFilterResponse -> ShowS
Prelude.Show, forall x.
Rep ListDataCellsFilterResponse x -> ListDataCellsFilterResponse
forall x.
ListDataCellsFilterResponse -> Rep ListDataCellsFilterResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListDataCellsFilterResponse x -> ListDataCellsFilterResponse
$cfrom :: forall x.
ListDataCellsFilterResponse -> Rep ListDataCellsFilterResponse x
Prelude.Generic)
newListDataCellsFilterResponse ::
Prelude.Int ->
ListDataCellsFilterResponse
newListDataCellsFilterResponse :: Int -> ListDataCellsFilterResponse
newListDataCellsFilterResponse Int
pHttpStatus_ =
ListDataCellsFilterResponse'
{ $sel:dataCellsFilters:ListDataCellsFilterResponse' :: Maybe [DataCellsFilter]
dataCellsFilters =
forall a. Maybe a
Prelude.Nothing,
$sel:nextToken:ListDataCellsFilterResponse' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
$sel:httpStatus:ListDataCellsFilterResponse' :: Int
httpStatus = Int
pHttpStatus_
}
listDataCellsFilterResponse_dataCellsFilters :: Lens.Lens' ListDataCellsFilterResponse (Prelude.Maybe [DataCellsFilter])
listDataCellsFilterResponse_dataCellsFilters :: Lens' ListDataCellsFilterResponse (Maybe [DataCellsFilter])
listDataCellsFilterResponse_dataCellsFilters = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDataCellsFilterResponse' {Maybe [DataCellsFilter]
dataCellsFilters :: Maybe [DataCellsFilter]
$sel:dataCellsFilters:ListDataCellsFilterResponse' :: ListDataCellsFilterResponse -> Maybe [DataCellsFilter]
dataCellsFilters} -> Maybe [DataCellsFilter]
dataCellsFilters) (\s :: ListDataCellsFilterResponse
s@ListDataCellsFilterResponse' {} Maybe [DataCellsFilter]
a -> ListDataCellsFilterResponse
s {$sel:dataCellsFilters:ListDataCellsFilterResponse' :: Maybe [DataCellsFilter]
dataCellsFilters = Maybe [DataCellsFilter]
a} :: ListDataCellsFilterResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced
listDataCellsFilterResponse_nextToken :: Lens.Lens' ListDataCellsFilterResponse (Prelude.Maybe Prelude.Text)
listDataCellsFilterResponse_nextToken :: Lens' ListDataCellsFilterResponse (Maybe Text)
listDataCellsFilterResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDataCellsFilterResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListDataCellsFilterResponse' :: ListDataCellsFilterResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListDataCellsFilterResponse
s@ListDataCellsFilterResponse' {} Maybe Text
a -> ListDataCellsFilterResponse
s {$sel:nextToken:ListDataCellsFilterResponse' :: Maybe Text
nextToken = Maybe Text
a} :: ListDataCellsFilterResponse)
listDataCellsFilterResponse_httpStatus :: Lens.Lens' ListDataCellsFilterResponse Prelude.Int
listDataCellsFilterResponse_httpStatus :: Lens' ListDataCellsFilterResponse Int
listDataCellsFilterResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListDataCellsFilterResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListDataCellsFilterResponse' :: ListDataCellsFilterResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListDataCellsFilterResponse
s@ListDataCellsFilterResponse' {} Int
a -> ListDataCellsFilterResponse
s {$sel:httpStatus:ListDataCellsFilterResponse' :: Int
httpStatus = Int
a} :: ListDataCellsFilterResponse)
instance Prelude.NFData ListDataCellsFilterResponse where
rnf :: ListDataCellsFilterResponse -> ()
rnf ListDataCellsFilterResponse' {Int
Maybe [DataCellsFilter]
Maybe Text
httpStatus :: Int
nextToken :: Maybe Text
dataCellsFilters :: Maybe [DataCellsFilter]
$sel:httpStatus:ListDataCellsFilterResponse' :: ListDataCellsFilterResponse -> Int
$sel:nextToken:ListDataCellsFilterResponse' :: ListDataCellsFilterResponse -> Maybe Text
$sel:dataCellsFilters:ListDataCellsFilterResponse' :: ListDataCellsFilterResponse -> Maybe [DataCellsFilter]
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe [DataCellsFilter]
dataCellsFilters
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
nextToken
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus