{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.ServiceCatalogAppRegistry.Types.AppRegistryConfiguration -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) module Amazonka.ServiceCatalogAppRegistry.Types.AppRegistryConfiguration 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.ServiceCatalogAppRegistry.Types.TagQueryConfiguration -- | Includes all of the Service Catalog AppRegistry settings. -- -- /See:/ 'newAppRegistryConfiguration' smart constructor. data AppRegistryConfiguration = AppRegistryConfiguration' { -- | Includes the definition of a @tagQuery@. tagQueryConfiguration :: Prelude.Maybe TagQueryConfiguration } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'AppRegistryConfiguration' with all optional fields omitted. -- -- Use or to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'tagQueryConfiguration', 'appRegistryConfiguration_tagQueryConfiguration' - Includes the definition of a @tagQuery@. newAppRegistryConfiguration :: AppRegistryConfiguration newAppRegistryConfiguration = AppRegistryConfiguration' { tagQueryConfiguration = Prelude.Nothing } -- | Includes the definition of a @tagQuery@. appRegistryConfiguration_tagQueryConfiguration :: Lens.Lens' AppRegistryConfiguration (Prelude.Maybe TagQueryConfiguration) appRegistryConfiguration_tagQueryConfiguration = Lens.lens (\AppRegistryConfiguration' {tagQueryConfiguration} -> tagQueryConfiguration) (\s@AppRegistryConfiguration' {} a -> s {tagQueryConfiguration = a} :: AppRegistryConfiguration) instance Data.FromJSON AppRegistryConfiguration where parseJSON = Data.withObject "AppRegistryConfiguration" ( \x -> AppRegistryConfiguration' Prelude.<$> (x Data..:? "tagQueryConfiguration") ) instance Prelude.Hashable AppRegistryConfiguration where hashWithSalt _salt AppRegistryConfiguration' {..} = _salt `Prelude.hashWithSalt` tagQueryConfiguration instance Prelude.NFData AppRegistryConfiguration where rnf AppRegistryConfiguration' {..} = Prelude.rnf tagQueryConfiguration instance Data.ToJSON AppRegistryConfiguration where toJSON AppRegistryConfiguration' {..} = Data.object ( Prelude.catMaybes [ ("tagQueryConfiguration" Data..=) Prelude.<$> tagQueryConfiguration ] )