{-# 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.SageMaker.CreateModelCard
(
CreateModelCard (..),
newCreateModelCard,
createModelCard_securityConfig,
createModelCard_tags,
createModelCard_modelCardName,
createModelCard_content,
createModelCard_modelCardStatus,
CreateModelCardResponse (..),
newCreateModelCardResponse,
createModelCardResponse_httpStatus,
createModelCardResponse_modelCardArn,
)
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 qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.SageMaker.Types
data CreateModelCard = CreateModelCard'
{
CreateModelCard -> Maybe ModelCardSecurityConfig
securityConfig :: Prelude.Maybe ModelCardSecurityConfig,
CreateModelCard -> Maybe [Tag]
tags :: Prelude.Maybe [Tag],
CreateModelCard -> Text
modelCardName :: Prelude.Text,
CreateModelCard -> Sensitive Text
content :: Data.Sensitive Prelude.Text,
CreateModelCard -> ModelCardStatus
modelCardStatus :: ModelCardStatus
}
deriving (CreateModelCard -> CreateModelCard -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateModelCard -> CreateModelCard -> Bool
$c/= :: CreateModelCard -> CreateModelCard -> Bool
== :: CreateModelCard -> CreateModelCard -> Bool
$c== :: CreateModelCard -> CreateModelCard -> Bool
Prelude.Eq, Int -> CreateModelCard -> ShowS
[CreateModelCard] -> ShowS
CreateModelCard -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateModelCard] -> ShowS
$cshowList :: [CreateModelCard] -> ShowS
show :: CreateModelCard -> String
$cshow :: CreateModelCard -> String
showsPrec :: Int -> CreateModelCard -> ShowS
$cshowsPrec :: Int -> CreateModelCard -> ShowS
Prelude.Show, forall x. Rep CreateModelCard x -> CreateModelCard
forall x. CreateModelCard -> Rep CreateModelCard x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreateModelCard x -> CreateModelCard
$cfrom :: forall x. CreateModelCard -> Rep CreateModelCard x
Prelude.Generic)
newCreateModelCard ::
Prelude.Text ->
Prelude.Text ->
ModelCardStatus ->
CreateModelCard
newCreateModelCard :: Text -> Text -> ModelCardStatus -> CreateModelCard
newCreateModelCard
Text
pModelCardName_
Text
pContent_
ModelCardStatus
pModelCardStatus_ =
CreateModelCard'
{ $sel:securityConfig:CreateModelCard' :: Maybe ModelCardSecurityConfig
securityConfig = forall a. Maybe a
Prelude.Nothing,
$sel:tags:CreateModelCard' :: Maybe [Tag]
tags = forall a. Maybe a
Prelude.Nothing,
$sel:modelCardName:CreateModelCard' :: Text
modelCardName = Text
pModelCardName_,
$sel:content:CreateModelCard' :: Sensitive Text
content = forall a. Iso' (Sensitive a) a
Data._Sensitive forall t b. AReview t b -> b -> t
Lens.# Text
pContent_,
$sel:modelCardStatus:CreateModelCard' :: ModelCardStatus
modelCardStatus = ModelCardStatus
pModelCardStatus_
}
createModelCard_securityConfig :: Lens.Lens' CreateModelCard (Prelude.Maybe ModelCardSecurityConfig)
createModelCard_securityConfig :: Lens' CreateModelCard (Maybe ModelCardSecurityConfig)
createModelCard_securityConfig = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCard' {Maybe ModelCardSecurityConfig
securityConfig :: Maybe ModelCardSecurityConfig
$sel:securityConfig:CreateModelCard' :: CreateModelCard -> Maybe ModelCardSecurityConfig
securityConfig} -> Maybe ModelCardSecurityConfig
securityConfig) (\s :: CreateModelCard
s@CreateModelCard' {} Maybe ModelCardSecurityConfig
a -> CreateModelCard
s {$sel:securityConfig:CreateModelCard' :: Maybe ModelCardSecurityConfig
securityConfig = Maybe ModelCardSecurityConfig
a} :: CreateModelCard)
createModelCard_tags :: Lens.Lens' CreateModelCard (Prelude.Maybe [Tag])
createModelCard_tags :: Lens' CreateModelCard (Maybe [Tag])
createModelCard_tags = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCard' {Maybe [Tag]
tags :: Maybe [Tag]
$sel:tags:CreateModelCard' :: CreateModelCard -> Maybe [Tag]
tags} -> Maybe [Tag]
tags) (\s :: CreateModelCard
s@CreateModelCard' {} Maybe [Tag]
a -> CreateModelCard
s {$sel:tags:CreateModelCard' :: Maybe [Tag]
tags = Maybe [Tag]
a} :: CreateModelCard) 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
createModelCard_modelCardName :: Lens.Lens' CreateModelCard Prelude.Text
createModelCard_modelCardName :: Lens' CreateModelCard Text
createModelCard_modelCardName = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCard' {Text
modelCardName :: Text
$sel:modelCardName:CreateModelCard' :: CreateModelCard -> Text
modelCardName} -> Text
modelCardName) (\s :: CreateModelCard
s@CreateModelCard' {} Text
a -> CreateModelCard
s {$sel:modelCardName:CreateModelCard' :: Text
modelCardName = Text
a} :: CreateModelCard)
createModelCard_content :: Lens.Lens' CreateModelCard Prelude.Text
createModelCard_content :: Lens' CreateModelCard Text
createModelCard_content = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCard' {Sensitive Text
content :: Sensitive Text
$sel:content:CreateModelCard' :: CreateModelCard -> Sensitive Text
content} -> Sensitive Text
content) (\s :: CreateModelCard
s@CreateModelCard' {} Sensitive Text
a -> CreateModelCard
s {$sel:content:CreateModelCard' :: Sensitive Text
content = Sensitive Text
a} :: CreateModelCard) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall a. Iso' (Sensitive a) a
Data._Sensitive
createModelCard_modelCardStatus :: Lens.Lens' CreateModelCard ModelCardStatus
createModelCard_modelCardStatus :: Lens' CreateModelCard ModelCardStatus
createModelCard_modelCardStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCard' {ModelCardStatus
modelCardStatus :: ModelCardStatus
$sel:modelCardStatus:CreateModelCard' :: CreateModelCard -> ModelCardStatus
modelCardStatus} -> ModelCardStatus
modelCardStatus) (\s :: CreateModelCard
s@CreateModelCard' {} ModelCardStatus
a -> CreateModelCard
s {$sel:modelCardStatus:CreateModelCard' :: ModelCardStatus
modelCardStatus = ModelCardStatus
a} :: CreateModelCard)
instance Core.AWSRequest CreateModelCard where
type
AWSResponse CreateModelCard =
CreateModelCardResponse
request :: (Service -> Service) -> CreateModelCard -> Request CreateModelCard
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 CreateModelCard
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse CreateModelCard)))
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 -> Text -> CreateModelCardResponse
CreateModelCardResponse'
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.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String a
Data..:> Key
"ModelCardArn")
)
instance Prelude.Hashable CreateModelCard where
hashWithSalt :: Int -> CreateModelCard -> Int
hashWithSalt Int
_salt CreateModelCard' {Maybe [Tag]
Maybe ModelCardSecurityConfig
Text
Sensitive Text
ModelCardStatus
modelCardStatus :: ModelCardStatus
content :: Sensitive Text
modelCardName :: Text
tags :: Maybe [Tag]
securityConfig :: Maybe ModelCardSecurityConfig
$sel:modelCardStatus:CreateModelCard' :: CreateModelCard -> ModelCardStatus
$sel:content:CreateModelCard' :: CreateModelCard -> Sensitive Text
$sel:modelCardName:CreateModelCard' :: CreateModelCard -> Text
$sel:tags:CreateModelCard' :: CreateModelCard -> Maybe [Tag]
$sel:securityConfig:CreateModelCard' :: CreateModelCard -> Maybe ModelCardSecurityConfig
..} =
Int
_salt
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe ModelCardSecurityConfig
securityConfig
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe [Tag]
tags
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Text
modelCardName
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Sensitive Text
content
forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ModelCardStatus
modelCardStatus
instance Prelude.NFData CreateModelCard where
rnf :: CreateModelCard -> ()
rnf CreateModelCard' {Maybe [Tag]
Maybe ModelCardSecurityConfig
Text
Sensitive Text
ModelCardStatus
modelCardStatus :: ModelCardStatus
content :: Sensitive Text
modelCardName :: Text
tags :: Maybe [Tag]
securityConfig :: Maybe ModelCardSecurityConfig
$sel:modelCardStatus:CreateModelCard' :: CreateModelCard -> ModelCardStatus
$sel:content:CreateModelCard' :: CreateModelCard -> Sensitive Text
$sel:modelCardName:CreateModelCard' :: CreateModelCard -> Text
$sel:tags:CreateModelCard' :: CreateModelCard -> Maybe [Tag]
$sel:securityConfig:CreateModelCard' :: CreateModelCard -> Maybe ModelCardSecurityConfig
..} =
forall a. NFData a => a -> ()
Prelude.rnf Maybe ModelCardSecurityConfig
securityConfig
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe [Tag]
tags
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Text
modelCardName
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Sensitive Text
content
seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf ModelCardStatus
modelCardStatus
instance Data.ToHeaders CreateModelCard where
toHeaders :: CreateModelCard -> 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
"SageMaker.CreateModelCard" :: Prelude.ByteString),
HeaderName
"Content-Type"
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Data.=# ( ByteString
"application/x-amz-json-1.1" ::
Prelude.ByteString
)
]
)
instance Data.ToJSON CreateModelCard where
toJSON :: CreateModelCard -> Value
toJSON CreateModelCard' {Maybe [Tag]
Maybe ModelCardSecurityConfig
Text
Sensitive Text
ModelCardStatus
modelCardStatus :: ModelCardStatus
content :: Sensitive Text
modelCardName :: Text
tags :: Maybe [Tag]
securityConfig :: Maybe ModelCardSecurityConfig
$sel:modelCardStatus:CreateModelCard' :: CreateModelCard -> ModelCardStatus
$sel:content:CreateModelCard' :: CreateModelCard -> Sensitive Text
$sel:modelCardName:CreateModelCard' :: CreateModelCard -> Text
$sel:tags:CreateModelCard' :: CreateModelCard -> Maybe [Tag]
$sel:securityConfig:CreateModelCard' :: CreateModelCard -> Maybe ModelCardSecurityConfig
..} =
[Pair] -> Value
Data.object
( forall a. [Maybe a] -> [a]
Prelude.catMaybes
[ (Key
"SecurityConfig" 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 ModelCardSecurityConfig
securityConfig,
(Key
"Tags" 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 [Tag]
tags,
forall a. a -> Maybe a
Prelude.Just (Key
"ModelCardName" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Text
modelCardName),
forall a. a -> Maybe a
Prelude.Just (Key
"Content" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= Sensitive Text
content),
forall a. a -> Maybe a
Prelude.Just
(Key
"ModelCardStatus" forall kv v. (KeyValue kv, ToJSON v) => Key -> v -> kv
Data..= ModelCardStatus
modelCardStatus)
]
)
instance Data.ToPath CreateModelCard where
toPath :: CreateModelCard -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"
instance Data.ToQuery CreateModelCard where
toQuery :: CreateModelCard -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty
data CreateModelCardResponse = CreateModelCardResponse'
{
CreateModelCardResponse -> Int
httpStatus :: Prelude.Int,
CreateModelCardResponse -> Text
modelCardArn :: Prelude.Text
}
deriving (CreateModelCardResponse -> CreateModelCardResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: CreateModelCardResponse -> CreateModelCardResponse -> Bool
$c/= :: CreateModelCardResponse -> CreateModelCardResponse -> Bool
== :: CreateModelCardResponse -> CreateModelCardResponse -> Bool
$c== :: CreateModelCardResponse -> CreateModelCardResponse -> Bool
Prelude.Eq, ReadPrec [CreateModelCardResponse]
ReadPrec CreateModelCardResponse
Int -> ReadS CreateModelCardResponse
ReadS [CreateModelCardResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [CreateModelCardResponse]
$creadListPrec :: ReadPrec [CreateModelCardResponse]
readPrec :: ReadPrec CreateModelCardResponse
$creadPrec :: ReadPrec CreateModelCardResponse
readList :: ReadS [CreateModelCardResponse]
$creadList :: ReadS [CreateModelCardResponse]
readsPrec :: Int -> ReadS CreateModelCardResponse
$creadsPrec :: Int -> ReadS CreateModelCardResponse
Prelude.Read, Int -> CreateModelCardResponse -> ShowS
[CreateModelCardResponse] -> ShowS
CreateModelCardResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CreateModelCardResponse] -> ShowS
$cshowList :: [CreateModelCardResponse] -> ShowS
show :: CreateModelCardResponse -> String
$cshow :: CreateModelCardResponse -> String
showsPrec :: Int -> CreateModelCardResponse -> ShowS
$cshowsPrec :: Int -> CreateModelCardResponse -> ShowS
Prelude.Show, forall x. Rep CreateModelCardResponse x -> CreateModelCardResponse
forall x. CreateModelCardResponse -> Rep CreateModelCardResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep CreateModelCardResponse x -> CreateModelCardResponse
$cfrom :: forall x. CreateModelCardResponse -> Rep CreateModelCardResponse x
Prelude.Generic)
newCreateModelCardResponse ::
Prelude.Int ->
Prelude.Text ->
CreateModelCardResponse
newCreateModelCardResponse :: Int -> Text -> CreateModelCardResponse
newCreateModelCardResponse
Int
pHttpStatus_
Text
pModelCardArn_ =
CreateModelCardResponse'
{ $sel:httpStatus:CreateModelCardResponse' :: Int
httpStatus = Int
pHttpStatus_,
$sel:modelCardArn:CreateModelCardResponse' :: Text
modelCardArn = Text
pModelCardArn_
}
createModelCardResponse_httpStatus :: Lens.Lens' CreateModelCardResponse Prelude.Int
createModelCardResponse_httpStatus :: Lens' CreateModelCardResponse Int
createModelCardResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCardResponse' {Int
httpStatus :: Int
$sel:httpStatus:CreateModelCardResponse' :: CreateModelCardResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: CreateModelCardResponse
s@CreateModelCardResponse' {} Int
a -> CreateModelCardResponse
s {$sel:httpStatus:CreateModelCardResponse' :: Int
httpStatus = Int
a} :: CreateModelCardResponse)
createModelCardResponse_modelCardArn :: Lens.Lens' CreateModelCardResponse Prelude.Text
createModelCardResponse_modelCardArn :: Lens' CreateModelCardResponse Text
createModelCardResponse_modelCardArn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\CreateModelCardResponse' {Text
modelCardArn :: Text
$sel:modelCardArn:CreateModelCardResponse' :: CreateModelCardResponse -> Text
modelCardArn} -> Text
modelCardArn) (\s :: CreateModelCardResponse
s@CreateModelCardResponse' {} Text
a -> CreateModelCardResponse
s {$sel:modelCardArn:CreateModelCardResponse' :: Text
modelCardArn = Text
a} :: CreateModelCardResponse)
instance Prelude.NFData CreateModelCardResponse where
rnf :: CreateModelCardResponse -> ()
rnf CreateModelCardResponse' {Int
Text
modelCardArn :: Text
httpStatus :: Int
$sel:modelCardArn:CreateModelCardResponse' :: CreateModelCardResponse -> Text
$sel:httpStatus:CreateModelCardResponse' :: CreateModelCardResponse -> 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 Text
modelCardArn