module Stratosphere.BedrockAgentCore.Memory.MemoryStrategyProperty (
module Exports, MemoryStrategyProperty(..),
mkMemoryStrategyProperty
) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.BedrockAgentCore.Memory.CustomMemoryStrategyProperty as Exports
import {-# SOURCE #-} Stratosphere.BedrockAgentCore.Memory.SemanticMemoryStrategyProperty as Exports
import {-# SOURCE #-} Stratosphere.BedrockAgentCore.Memory.SummaryMemoryStrategyProperty as Exports
import {-# SOURCE #-} Stratosphere.BedrockAgentCore.Memory.UserPreferenceMemoryStrategyProperty as Exports
import Stratosphere.ResourceProperties
data MemoryStrategyProperty
=
MemoryStrategyProperty {MemoryStrategyProperty -> ()
haddock_workaround_ :: (),
MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
customMemoryStrategy :: (Prelude.Maybe CustomMemoryStrategyProperty),
MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
semanticMemoryStrategy :: (Prelude.Maybe SemanticMemoryStrategyProperty),
MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
summaryMemoryStrategy :: (Prelude.Maybe SummaryMemoryStrategyProperty),
MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
userPreferenceMemoryStrategy :: (Prelude.Maybe UserPreferenceMemoryStrategyProperty)}
deriving stock (MemoryStrategyProperty -> MemoryStrategyProperty -> Bool
(MemoryStrategyProperty -> MemoryStrategyProperty -> Bool)
-> (MemoryStrategyProperty -> MemoryStrategyProperty -> Bool)
-> Eq MemoryStrategyProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: MemoryStrategyProperty -> MemoryStrategyProperty -> Bool
== :: MemoryStrategyProperty -> MemoryStrategyProperty -> Bool
$c/= :: MemoryStrategyProperty -> MemoryStrategyProperty -> Bool
/= :: MemoryStrategyProperty -> MemoryStrategyProperty -> Bool
Prelude.Eq, Int -> MemoryStrategyProperty -> ShowS
[MemoryStrategyProperty] -> ShowS
MemoryStrategyProperty -> String
(Int -> MemoryStrategyProperty -> ShowS)
-> (MemoryStrategyProperty -> String)
-> ([MemoryStrategyProperty] -> ShowS)
-> Show MemoryStrategyProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> MemoryStrategyProperty -> ShowS
showsPrec :: Int -> MemoryStrategyProperty -> ShowS
$cshow :: MemoryStrategyProperty -> String
show :: MemoryStrategyProperty -> String
$cshowList :: [MemoryStrategyProperty] -> ShowS
showList :: [MemoryStrategyProperty] -> ShowS
Prelude.Show)
mkMemoryStrategyProperty :: MemoryStrategyProperty
mkMemoryStrategyProperty :: MemoryStrategyProperty
mkMemoryStrategyProperty
= MemoryStrategyProperty
{haddock_workaround_ :: ()
haddock_workaround_ = (), customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
customMemoryStrategy = Maybe CustomMemoryStrategyProperty
forall a. Maybe a
Prelude.Nothing,
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
semanticMemoryStrategy = Maybe SemanticMemoryStrategyProperty
forall a. Maybe a
Prelude.Nothing,
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
summaryMemoryStrategy = Maybe SummaryMemoryStrategyProperty
forall a. Maybe a
Prelude.Nothing,
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
userPreferenceMemoryStrategy = Maybe UserPreferenceMemoryStrategyProperty
forall a. Maybe a
Prelude.Nothing}
instance ToResourceProperties MemoryStrategyProperty where
toResourceProperties :: MemoryStrategyProperty -> ResourceProperties
toResourceProperties MemoryStrategyProperty {Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: MemoryStrategyProperty -> ()
customMemoryStrategy :: MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
= ResourceProperties
{awsType :: Text
awsType = Text
"AWS::BedrockAgentCore::Memory.MemoryStrategy",
supportsTags :: Bool
supportsTags = Bool
Prelude.False,
properties :: Object
properties = [Item Object] -> Object
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> CustomMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CustomMemoryStrategy" (CustomMemoryStrategyProperty -> (Key, Value))
-> Maybe CustomMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CustomMemoryStrategyProperty
customMemoryStrategy,
Key -> SemanticMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SemanticMemoryStrategy"
(SemanticMemoryStrategyProperty -> (Key, Value))
-> Maybe SemanticMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SemanticMemoryStrategyProperty
semanticMemoryStrategy,
Key -> SummaryMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SummaryMemoryStrategy"
(SummaryMemoryStrategyProperty -> (Key, Value))
-> Maybe SummaryMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SummaryMemoryStrategyProperty
summaryMemoryStrategy,
Key -> UserPreferenceMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"UserPreferenceMemoryStrategy"
(UserPreferenceMemoryStrategyProperty -> (Key, Value))
-> Maybe UserPreferenceMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe UserPreferenceMemoryStrategyProperty
userPreferenceMemoryStrategy])}
instance JSON.ToJSON MemoryStrategyProperty where
toJSON :: MemoryStrategyProperty -> Value
toJSON MemoryStrategyProperty {Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: MemoryStrategyProperty -> ()
customMemoryStrategy :: MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
= [(Key, Value)] -> Value
JSON.object
([Item [(Key, Value)]] -> [(Key, Value)]
forall l. IsList l => [Item l] -> l
Prelude.fromList
([Maybe (Key, Value)] -> [(Key, Value)]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
[Key -> CustomMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"CustomMemoryStrategy" (CustomMemoryStrategyProperty -> (Key, Value))
-> Maybe CustomMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe CustomMemoryStrategyProperty
customMemoryStrategy,
Key -> SemanticMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SemanticMemoryStrategy"
(SemanticMemoryStrategyProperty -> (Key, Value))
-> Maybe SemanticMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SemanticMemoryStrategyProperty
semanticMemoryStrategy,
Key -> SummaryMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"SummaryMemoryStrategy"
(SummaryMemoryStrategyProperty -> (Key, Value))
-> Maybe SummaryMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SummaryMemoryStrategyProperty
summaryMemoryStrategy,
Key -> UserPreferenceMemoryStrategyProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
(JSON..=) Key
"UserPreferenceMemoryStrategy"
(UserPreferenceMemoryStrategyProperty -> (Key, Value))
-> Maybe UserPreferenceMemoryStrategyProperty -> Maybe (Key, Value)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe UserPreferenceMemoryStrategyProperty
userPreferenceMemoryStrategy]))
instance Property "CustomMemoryStrategy" MemoryStrategyProperty where
type PropertyType "CustomMemoryStrategy" MemoryStrategyProperty = CustomMemoryStrategyProperty
set :: PropertyType "CustomMemoryStrategy" MemoryStrategyProperty
-> MemoryStrategyProperty -> MemoryStrategyProperty
set PropertyType "CustomMemoryStrategy" MemoryStrategyProperty
newValue MemoryStrategyProperty {Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: MemoryStrategyProperty -> ()
customMemoryStrategy :: MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
= MemoryStrategyProperty
{customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
customMemoryStrategy = CustomMemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "CustomMemoryStrategy" MemoryStrategyProperty
CustomMemoryStrategyProperty
newValue, Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
()
haddock_workaround_ :: ()
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
instance Property "SemanticMemoryStrategy" MemoryStrategyProperty where
type PropertyType "SemanticMemoryStrategy" MemoryStrategyProperty = SemanticMemoryStrategyProperty
set :: PropertyType "SemanticMemoryStrategy" MemoryStrategyProperty
-> MemoryStrategyProperty -> MemoryStrategyProperty
set PropertyType "SemanticMemoryStrategy" MemoryStrategyProperty
newValue MemoryStrategyProperty {Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: MemoryStrategyProperty -> ()
customMemoryStrategy :: MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
= MemoryStrategyProperty
{semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
semanticMemoryStrategy = SemanticMemoryStrategyProperty
-> Maybe SemanticMemoryStrategyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "SemanticMemoryStrategy" MemoryStrategyProperty
SemanticMemoryStrategyProperty
newValue, Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
instance Property "SummaryMemoryStrategy" MemoryStrategyProperty where
type PropertyType "SummaryMemoryStrategy" MemoryStrategyProperty = SummaryMemoryStrategyProperty
set :: PropertyType "SummaryMemoryStrategy" MemoryStrategyProperty
-> MemoryStrategyProperty -> MemoryStrategyProperty
set PropertyType "SummaryMemoryStrategy" MemoryStrategyProperty
newValue MemoryStrategyProperty {Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: MemoryStrategyProperty -> ()
customMemoryStrategy :: MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
= MemoryStrategyProperty
{summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
summaryMemoryStrategy = SummaryMemoryStrategyProperty
-> Maybe SummaryMemoryStrategyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "SummaryMemoryStrategy" MemoryStrategyProperty
SummaryMemoryStrategyProperty
newValue, Maybe SemanticMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
instance Property "UserPreferenceMemoryStrategy" MemoryStrategyProperty where
type PropertyType "UserPreferenceMemoryStrategy" MemoryStrategyProperty = UserPreferenceMemoryStrategyProperty
set :: PropertyType "UserPreferenceMemoryStrategy" MemoryStrategyProperty
-> MemoryStrategyProperty -> MemoryStrategyProperty
set PropertyType "UserPreferenceMemoryStrategy" MemoryStrategyProperty
newValue MemoryStrategyProperty {Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe UserPreferenceMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: MemoryStrategyProperty -> ()
customMemoryStrategy :: MemoryStrategyProperty -> Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: MemoryStrategyProperty -> Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: MemoryStrategyProperty -> Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: MemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
..}
= MemoryStrategyProperty
{userPreferenceMemoryStrategy :: Maybe UserPreferenceMemoryStrategyProperty
userPreferenceMemoryStrategy = UserPreferenceMemoryStrategyProperty
-> Maybe UserPreferenceMemoryStrategyProperty
forall a. a -> Maybe a
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure PropertyType "UserPreferenceMemoryStrategy" MemoryStrategyProperty
UserPreferenceMemoryStrategyProperty
newValue, Maybe SemanticMemoryStrategyProperty
Maybe SummaryMemoryStrategyProperty
Maybe CustomMemoryStrategyProperty
()
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
haddock_workaround_ :: ()
customMemoryStrategy :: Maybe CustomMemoryStrategyProperty
semanticMemoryStrategy :: Maybe SemanticMemoryStrategyProperty
summaryMemoryStrategy :: Maybe SummaryMemoryStrategyProperty
..}