{-# 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 #-}

-- Derived from AWS service descriptions, licensed under Apache 2.0.

-- |
-- Module      : Amazonka.SageMaker.ListNotebookInstanceLifecycleConfigs
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Lists notebook instance lifestyle configurations created with the
-- CreateNotebookInstanceLifecycleConfig API.
--
-- This operation returns paginated results.
module Amazonka.SageMaker.ListNotebookInstanceLifecycleConfigs
  ( -- * Creating a Request
    ListNotebookInstanceLifecycleConfigs (..),
    newListNotebookInstanceLifecycleConfigs,

    -- * Request Lenses
    listNotebookInstanceLifecycleConfigs_creationTimeAfter,
    listNotebookInstanceLifecycleConfigs_creationTimeBefore,
    listNotebookInstanceLifecycleConfigs_lastModifiedTimeAfter,
    listNotebookInstanceLifecycleConfigs_lastModifiedTimeBefore,
    listNotebookInstanceLifecycleConfigs_maxResults,
    listNotebookInstanceLifecycleConfigs_nameContains,
    listNotebookInstanceLifecycleConfigs_nextToken,
    listNotebookInstanceLifecycleConfigs_sortBy,
    listNotebookInstanceLifecycleConfigs_sortOrder,

    -- * Destructuring the Response
    ListNotebookInstanceLifecycleConfigsResponse (..),
    newListNotebookInstanceLifecycleConfigsResponse,

    -- * Response Lenses
    listNotebookInstanceLifecycleConfigsResponse_nextToken,
    listNotebookInstanceLifecycleConfigsResponse_notebookInstanceLifecycleConfigs,
    listNotebookInstanceLifecycleConfigsResponse_httpStatus,
  )
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

-- | /See:/ 'newListNotebookInstanceLifecycleConfigs' smart constructor.
data ListNotebookInstanceLifecycleConfigs = ListNotebookInstanceLifecycleConfigs'
  { -- | A filter that returns only lifecycle configurations that were created
    -- after the specified time (timestamp).
    ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
creationTimeAfter :: Prelude.Maybe Data.POSIX,
    -- | A filter that returns only lifecycle configurations that were created
    -- before the specified time (timestamp).
    ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
creationTimeBefore :: Prelude.Maybe Data.POSIX,
    -- | A filter that returns only lifecycle configurations that were modified
    -- after the specified time (timestamp).
    ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
lastModifiedTimeAfter :: Prelude.Maybe Data.POSIX,
    -- | A filter that returns only lifecycle configurations that were modified
    -- before the specified time (timestamp).
    ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
lastModifiedTimeBefore :: Prelude.Maybe Data.POSIX,
    -- | The maximum number of lifecycle configurations to return in the
    -- response.
    ListNotebookInstanceLifecycleConfigs -> Maybe Natural
maxResults :: Prelude.Maybe Prelude.Natural,
    -- | A string in the lifecycle configuration name. This filter returns only
    -- lifecycle configurations whose name contains the specified string.
    ListNotebookInstanceLifecycleConfigs -> Maybe Text
nameContains :: Prelude.Maybe Prelude.Text,
    -- | If the result of a @ListNotebookInstanceLifecycleConfigs@ request was
    -- truncated, the response includes a @NextToken@. To get the next set of
    -- lifecycle configurations, use the token in the next request.
    ListNotebookInstanceLifecycleConfigs -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | Sorts the list of results. The default is @CreationTime@.
    ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortKey
sortBy :: Prelude.Maybe NotebookInstanceLifecycleConfigSortKey,
    -- | The sort order for results.
    ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder :: Prelude.Maybe NotebookInstanceLifecycleConfigSortOrder
  }
  deriving (ListNotebookInstanceLifecycleConfigs
-> ListNotebookInstanceLifecycleConfigs -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListNotebookInstanceLifecycleConfigs
-> ListNotebookInstanceLifecycleConfigs -> Bool
$c/= :: ListNotebookInstanceLifecycleConfigs
-> ListNotebookInstanceLifecycleConfigs -> Bool
== :: ListNotebookInstanceLifecycleConfigs
-> ListNotebookInstanceLifecycleConfigs -> Bool
$c== :: ListNotebookInstanceLifecycleConfigs
-> ListNotebookInstanceLifecycleConfigs -> Bool
Prelude.Eq, ReadPrec [ListNotebookInstanceLifecycleConfigs]
ReadPrec ListNotebookInstanceLifecycleConfigs
Int -> ReadS ListNotebookInstanceLifecycleConfigs
ReadS [ListNotebookInstanceLifecycleConfigs]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListNotebookInstanceLifecycleConfigs]
$creadListPrec :: ReadPrec [ListNotebookInstanceLifecycleConfigs]
readPrec :: ReadPrec ListNotebookInstanceLifecycleConfigs
$creadPrec :: ReadPrec ListNotebookInstanceLifecycleConfigs
readList :: ReadS [ListNotebookInstanceLifecycleConfigs]
$creadList :: ReadS [ListNotebookInstanceLifecycleConfigs]
readsPrec :: Int -> ReadS ListNotebookInstanceLifecycleConfigs
$creadsPrec :: Int -> ReadS ListNotebookInstanceLifecycleConfigs
Prelude.Read, Int -> ListNotebookInstanceLifecycleConfigs -> ShowS
[ListNotebookInstanceLifecycleConfigs] -> ShowS
ListNotebookInstanceLifecycleConfigs -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListNotebookInstanceLifecycleConfigs] -> ShowS
$cshowList :: [ListNotebookInstanceLifecycleConfigs] -> ShowS
show :: ListNotebookInstanceLifecycleConfigs -> String
$cshow :: ListNotebookInstanceLifecycleConfigs -> String
showsPrec :: Int -> ListNotebookInstanceLifecycleConfigs -> ShowS
$cshowsPrec :: Int -> ListNotebookInstanceLifecycleConfigs -> ShowS
Prelude.Show, forall x.
Rep ListNotebookInstanceLifecycleConfigs x
-> ListNotebookInstanceLifecycleConfigs
forall x.
ListNotebookInstanceLifecycleConfigs
-> Rep ListNotebookInstanceLifecycleConfigs x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListNotebookInstanceLifecycleConfigs x
-> ListNotebookInstanceLifecycleConfigs
$cfrom :: forall x.
ListNotebookInstanceLifecycleConfigs
-> Rep ListNotebookInstanceLifecycleConfigs x
Prelude.Generic)

-- |
-- Create a value of 'ListNotebookInstanceLifecycleConfigs' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'creationTimeAfter', 'listNotebookInstanceLifecycleConfigs_creationTimeAfter' - A filter that returns only lifecycle configurations that were created
-- after the specified time (timestamp).
--
-- 'creationTimeBefore', 'listNotebookInstanceLifecycleConfigs_creationTimeBefore' - A filter that returns only lifecycle configurations that were created
-- before the specified time (timestamp).
--
-- 'lastModifiedTimeAfter', 'listNotebookInstanceLifecycleConfigs_lastModifiedTimeAfter' - A filter that returns only lifecycle configurations that were modified
-- after the specified time (timestamp).
--
-- 'lastModifiedTimeBefore', 'listNotebookInstanceLifecycleConfigs_lastModifiedTimeBefore' - A filter that returns only lifecycle configurations that were modified
-- before the specified time (timestamp).
--
-- 'maxResults', 'listNotebookInstanceLifecycleConfigs_maxResults' - The maximum number of lifecycle configurations to return in the
-- response.
--
-- 'nameContains', 'listNotebookInstanceLifecycleConfigs_nameContains' - A string in the lifecycle configuration name. This filter returns only
-- lifecycle configurations whose name contains the specified string.
--
-- 'nextToken', 'listNotebookInstanceLifecycleConfigs_nextToken' - If the result of a @ListNotebookInstanceLifecycleConfigs@ request was
-- truncated, the response includes a @NextToken@. To get the next set of
-- lifecycle configurations, use the token in the next request.
--
-- 'sortBy', 'listNotebookInstanceLifecycleConfigs_sortBy' - Sorts the list of results. The default is @CreationTime@.
--
-- 'sortOrder', 'listNotebookInstanceLifecycleConfigs_sortOrder' - The sort order for results.
newListNotebookInstanceLifecycleConfigs ::
  ListNotebookInstanceLifecycleConfigs
newListNotebookInstanceLifecycleConfigs :: ListNotebookInstanceLifecycleConfigs
newListNotebookInstanceLifecycleConfigs =
  ListNotebookInstanceLifecycleConfigs'
    { $sel:creationTimeAfter:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
creationTimeAfter =
        forall a. Maybe a
Prelude.Nothing,
      $sel:creationTimeBefore:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
creationTimeBefore = forall a. Maybe a
Prelude.Nothing,
      $sel:lastModifiedTimeAfter:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
lastModifiedTimeAfter =
        forall a. Maybe a
Prelude.Nothing,
      $sel:lastModifiedTimeBefore:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
lastModifiedTimeBefore =
        forall a. Maybe a
Prelude.Nothing,
      $sel:maxResults:ListNotebookInstanceLifecycleConfigs' :: Maybe Natural
maxResults = forall a. Maybe a
Prelude.Nothing,
      $sel:nameContains:ListNotebookInstanceLifecycleConfigs' :: Maybe Text
nameContains = forall a. Maybe a
Prelude.Nothing,
      $sel:nextToken:ListNotebookInstanceLifecycleConfigs' :: Maybe Text
nextToken = forall a. Maybe a
Prelude.Nothing,
      $sel:sortBy:ListNotebookInstanceLifecycleConfigs' :: Maybe NotebookInstanceLifecycleConfigSortKey
sortBy = forall a. Maybe a
Prelude.Nothing,
      $sel:sortOrder:ListNotebookInstanceLifecycleConfigs' :: Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder = forall a. Maybe a
Prelude.Nothing
    }

-- | A filter that returns only lifecycle configurations that were created
-- after the specified time (timestamp).
listNotebookInstanceLifecycleConfigs_creationTimeAfter :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.UTCTime)
listNotebookInstanceLifecycleConfigs_creationTimeAfter :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe UTCTime)
listNotebookInstanceLifecycleConfigs_creationTimeAfter = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe POSIX
creationTimeAfter :: Maybe POSIX
$sel:creationTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
creationTimeAfter} -> Maybe POSIX
creationTimeAfter) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe POSIX
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:creationTimeAfter:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
creationTimeAfter = Maybe POSIX
a} :: ListNotebookInstanceLifecycleConfigs) 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 (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | A filter that returns only lifecycle configurations that were created
-- before the specified time (timestamp).
listNotebookInstanceLifecycleConfigs_creationTimeBefore :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.UTCTime)
listNotebookInstanceLifecycleConfigs_creationTimeBefore :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe UTCTime)
listNotebookInstanceLifecycleConfigs_creationTimeBefore = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe POSIX
creationTimeBefore :: Maybe POSIX
$sel:creationTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
creationTimeBefore} -> Maybe POSIX
creationTimeBefore) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe POSIX
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:creationTimeBefore:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
creationTimeBefore = Maybe POSIX
a} :: ListNotebookInstanceLifecycleConfigs) 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 (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | A filter that returns only lifecycle configurations that were modified
-- after the specified time (timestamp).
listNotebookInstanceLifecycleConfigs_lastModifiedTimeAfter :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.UTCTime)
listNotebookInstanceLifecycleConfigs_lastModifiedTimeAfter :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe UTCTime)
listNotebookInstanceLifecycleConfigs_lastModifiedTimeAfter = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe POSIX
lastModifiedTimeAfter :: Maybe POSIX
$sel:lastModifiedTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
lastModifiedTimeAfter} -> Maybe POSIX
lastModifiedTimeAfter) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe POSIX
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:lastModifiedTimeAfter:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
lastModifiedTimeAfter = Maybe POSIX
a} :: ListNotebookInstanceLifecycleConfigs) 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 (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | A filter that returns only lifecycle configurations that were modified
-- before the specified time (timestamp).
listNotebookInstanceLifecycleConfigs_lastModifiedTimeBefore :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.UTCTime)
listNotebookInstanceLifecycleConfigs_lastModifiedTimeBefore :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe UTCTime)
listNotebookInstanceLifecycleConfigs_lastModifiedTimeBefore = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe POSIX
lastModifiedTimeBefore :: Maybe POSIX
$sel:lastModifiedTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
lastModifiedTimeBefore} -> Maybe POSIX
lastModifiedTimeBefore) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe POSIX
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:lastModifiedTimeBefore:ListNotebookInstanceLifecycleConfigs' :: Maybe POSIX
lastModifiedTimeBefore = Maybe POSIX
a} :: ListNotebookInstanceLifecycleConfigs) 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 (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | The maximum number of lifecycle configurations to return in the
-- response.
listNotebookInstanceLifecycleConfigs_maxResults :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.Natural)
listNotebookInstanceLifecycleConfigs_maxResults :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe Natural)
listNotebookInstanceLifecycleConfigs_maxResults = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe Natural
maxResults :: Maybe Natural
$sel:maxResults:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Natural
maxResults} -> Maybe Natural
maxResults) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe Natural
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:maxResults:ListNotebookInstanceLifecycleConfigs' :: Maybe Natural
maxResults = Maybe Natural
a} :: ListNotebookInstanceLifecycleConfigs)

-- | A string in the lifecycle configuration name. This filter returns only
-- lifecycle configurations whose name contains the specified string.
listNotebookInstanceLifecycleConfigs_nameContains :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.Text)
listNotebookInstanceLifecycleConfigs_nameContains :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe Text)
listNotebookInstanceLifecycleConfigs_nameContains = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe Text
nameContains :: Maybe Text
$sel:nameContains:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
nameContains} -> Maybe Text
nameContains) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe Text
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:nameContains:ListNotebookInstanceLifecycleConfigs' :: Maybe Text
nameContains = Maybe Text
a} :: ListNotebookInstanceLifecycleConfigs)

-- | If the result of a @ListNotebookInstanceLifecycleConfigs@ request was
-- truncated, the response includes a @NextToken@. To get the next set of
-- lifecycle configurations, use the token in the next request.
listNotebookInstanceLifecycleConfigs_nextToken :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe Prelude.Text)
listNotebookInstanceLifecycleConfigs_nextToken :: Lens' ListNotebookInstanceLifecycleConfigs (Maybe Text)
listNotebookInstanceLifecycleConfigs_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe Text
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:nextToken:ListNotebookInstanceLifecycleConfigs' :: Maybe Text
nextToken = Maybe Text
a} :: ListNotebookInstanceLifecycleConfigs)

-- | Sorts the list of results. The default is @CreationTime@.
listNotebookInstanceLifecycleConfigs_sortBy :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe NotebookInstanceLifecycleConfigSortKey)
listNotebookInstanceLifecycleConfigs_sortBy :: Lens'
  ListNotebookInstanceLifecycleConfigs
  (Maybe NotebookInstanceLifecycleConfigSortKey)
listNotebookInstanceLifecycleConfigs_sortBy = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe NotebookInstanceLifecycleConfigSortKey
sortBy :: Maybe NotebookInstanceLifecycleConfigSortKey
$sel:sortBy:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortKey
sortBy} -> Maybe NotebookInstanceLifecycleConfigSortKey
sortBy) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe NotebookInstanceLifecycleConfigSortKey
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:sortBy:ListNotebookInstanceLifecycleConfigs' :: Maybe NotebookInstanceLifecycleConfigSortKey
sortBy = Maybe NotebookInstanceLifecycleConfigSortKey
a} :: ListNotebookInstanceLifecycleConfigs)

-- | The sort order for results.
listNotebookInstanceLifecycleConfigs_sortOrder :: Lens.Lens' ListNotebookInstanceLifecycleConfigs (Prelude.Maybe NotebookInstanceLifecycleConfigSortOrder)
listNotebookInstanceLifecycleConfigs_sortOrder :: Lens'
  ListNotebookInstanceLifecycleConfigs
  (Maybe NotebookInstanceLifecycleConfigSortOrder)
listNotebookInstanceLifecycleConfigs_sortOrder = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigs' {Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder :: Maybe NotebookInstanceLifecycleConfigSortOrder
$sel:sortOrder:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder} -> Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder) (\s :: ListNotebookInstanceLifecycleConfigs
s@ListNotebookInstanceLifecycleConfigs' {} Maybe NotebookInstanceLifecycleConfigSortOrder
a -> ListNotebookInstanceLifecycleConfigs
s {$sel:sortOrder:ListNotebookInstanceLifecycleConfigs' :: Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder = Maybe NotebookInstanceLifecycleConfigSortOrder
a} :: ListNotebookInstanceLifecycleConfigs)

instance
  Core.AWSPager
    ListNotebookInstanceLifecycleConfigs
  where
  page :: ListNotebookInstanceLifecycleConfigs
-> AWSResponse ListNotebookInstanceLifecycleConfigs
-> Maybe ListNotebookInstanceLifecycleConfigs
page ListNotebookInstanceLifecycleConfigs
rq AWSResponse ListNotebookInstanceLifecycleConfigs
rs
    | forall a. AWSTruncated a => a -> Bool
Core.stop
        ( AWSResponse ListNotebookInstanceLifecycleConfigs
rs
            forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListNotebookInstanceLifecycleConfigsResponse (Maybe Text)
listNotebookInstanceLifecycleConfigsResponse_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 ListNotebookInstanceLifecycleConfigs
rs
            forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens'
  ListNotebookInstanceLifecycleConfigsResponse
  (Maybe [NotebookInstanceLifecycleConfigSummary])
listNotebookInstanceLifecycleConfigsResponse_notebookInstanceLifecycleConfigs
            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.$ ListNotebookInstanceLifecycleConfigs
rq
          forall a b. a -> (a -> b) -> b
Prelude.& Lens' ListNotebookInstanceLifecycleConfigs (Maybe Text)
listNotebookInstanceLifecycleConfigs_nextToken
          forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse ListNotebookInstanceLifecycleConfigs
rs
          forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? Lens' ListNotebookInstanceLifecycleConfigsResponse (Maybe Text)
listNotebookInstanceLifecycleConfigsResponse_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
    ListNotebookInstanceLifecycleConfigs
  where
  type
    AWSResponse ListNotebookInstanceLifecycleConfigs =
      ListNotebookInstanceLifecycleConfigsResponse
  request :: (Service -> Service)
-> ListNotebookInstanceLifecycleConfigs
-> Request ListNotebookInstanceLifecycleConfigs
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 ListNotebookInstanceLifecycleConfigs
-> ClientResponse ClientBody
-> m (Either
        Error
        (ClientResponse
           (AWSResponse ListNotebookInstanceLifecycleConfigs)))
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 Text
-> Maybe [NotebookInstanceLifecycleConfigSummary]
-> Int
-> ListNotebookInstanceLifecycleConfigsResponse
ListNotebookInstanceLifecycleConfigsResponse'
            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
"NextToken")
            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
"NotebookInstanceLifecycleConfigs"
                            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.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance
  Prelude.Hashable
    ListNotebookInstanceLifecycleConfigs
  where
  hashWithSalt :: Int -> ListNotebookInstanceLifecycleConfigs -> Int
hashWithSalt
    Int
_salt
    ListNotebookInstanceLifecycleConfigs' {Maybe Natural
Maybe Text
Maybe POSIX
Maybe NotebookInstanceLifecycleConfigSortKey
Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder :: Maybe NotebookInstanceLifecycleConfigSortOrder
sortBy :: Maybe NotebookInstanceLifecycleConfigSortKey
nextToken :: Maybe Text
nameContains :: Maybe Text
maxResults :: Maybe Natural
lastModifiedTimeBefore :: Maybe POSIX
lastModifiedTimeAfter :: Maybe POSIX
creationTimeBefore :: Maybe POSIX
creationTimeAfter :: Maybe POSIX
$sel:sortOrder:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortOrder
$sel:sortBy:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortKey
$sel:nextToken:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
$sel:nameContains:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
$sel:maxResults:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Natural
$sel:lastModifiedTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:lastModifiedTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:creationTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:creationTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
..} =
      Int
_salt
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
creationTimeAfter
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
creationTimeBefore
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
lastModifiedTimeAfter
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe POSIX
lastModifiedTimeBefore
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Natural
maxResults
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nameContains
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe Text
nextToken
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NotebookInstanceLifecycleConfigSortKey
sortBy
        forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder

instance
  Prelude.NFData
    ListNotebookInstanceLifecycleConfigs
  where
  rnf :: ListNotebookInstanceLifecycleConfigs -> ()
rnf ListNotebookInstanceLifecycleConfigs' {Maybe Natural
Maybe Text
Maybe POSIX
Maybe NotebookInstanceLifecycleConfigSortKey
Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder :: Maybe NotebookInstanceLifecycleConfigSortOrder
sortBy :: Maybe NotebookInstanceLifecycleConfigSortKey
nextToken :: Maybe Text
nameContains :: Maybe Text
maxResults :: Maybe Natural
lastModifiedTimeBefore :: Maybe POSIX
lastModifiedTimeAfter :: Maybe POSIX
creationTimeBefore :: Maybe POSIX
creationTimeAfter :: Maybe POSIX
$sel:sortOrder:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortOrder
$sel:sortBy:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortKey
$sel:nextToken:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
$sel:nameContains:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
$sel:maxResults:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Natural
$sel:lastModifiedTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:lastModifiedTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:creationTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:creationTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
creationTimeAfter
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
creationTimeBefore
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastModifiedTimeAfter
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastModifiedTimeBefore
      seq :: forall a b. a -> b -> b
`Prelude.seq` 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
nameContains
      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 NotebookInstanceLifecycleConfigSortKey
sortBy
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder

instance
  Data.ToHeaders
    ListNotebookInstanceLifecycleConfigs
  where
  toHeaders :: ListNotebookInstanceLifecycleConfigs -> 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.ListNotebookInstanceLifecycleConfigs" ::
                          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
    ListNotebookInstanceLifecycleConfigs
  where
  toJSON :: ListNotebookInstanceLifecycleConfigs -> Value
toJSON ListNotebookInstanceLifecycleConfigs' {Maybe Natural
Maybe Text
Maybe POSIX
Maybe NotebookInstanceLifecycleConfigSortKey
Maybe NotebookInstanceLifecycleConfigSortOrder
sortOrder :: Maybe NotebookInstanceLifecycleConfigSortOrder
sortBy :: Maybe NotebookInstanceLifecycleConfigSortKey
nextToken :: Maybe Text
nameContains :: Maybe Text
maxResults :: Maybe Natural
lastModifiedTimeBefore :: Maybe POSIX
lastModifiedTimeAfter :: Maybe POSIX
creationTimeBefore :: Maybe POSIX
creationTimeAfter :: Maybe POSIX
$sel:sortOrder:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortOrder
$sel:sortBy:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs
-> Maybe NotebookInstanceLifecycleConfigSortKey
$sel:nextToken:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
$sel:nameContains:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Text
$sel:maxResults:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe Natural
$sel:lastModifiedTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:lastModifiedTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:creationTimeBefore:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
$sel:creationTimeAfter:ListNotebookInstanceLifecycleConfigs' :: ListNotebookInstanceLifecycleConfigs -> Maybe POSIX
..} =
    [Pair] -> Value
Data.object
      ( forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Key
"CreationTimeAfter" 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 POSIX
creationTimeAfter,
            (Key
"CreationTimeBefore" 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 POSIX
creationTimeBefore,
            (Key
"LastModifiedTimeAfter" 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 POSIX
lastModifiedTimeAfter,
            (Key
"LastModifiedTimeBefore" 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 POSIX
lastModifiedTimeBefore,
            (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
"NameContains" 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
nameContains,
            (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
"SortBy" 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 NotebookInstanceLifecycleConfigSortKey
sortBy,
            (Key
"SortOrder" 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 NotebookInstanceLifecycleConfigSortOrder
sortOrder
          ]
      )

instance
  Data.ToPath
    ListNotebookInstanceLifecycleConfigs
  where
  toPath :: ListNotebookInstanceLifecycleConfigs -> ByteString
toPath = forall a b. a -> b -> a
Prelude.const ByteString
"/"

instance
  Data.ToQuery
    ListNotebookInstanceLifecycleConfigs
  where
  toQuery :: ListNotebookInstanceLifecycleConfigs -> QueryString
toQuery = forall a b. a -> b -> a
Prelude.const forall a. Monoid a => a
Prelude.mempty

-- | /See:/ 'newListNotebookInstanceLifecycleConfigsResponse' smart constructor.
data ListNotebookInstanceLifecycleConfigsResponse = ListNotebookInstanceLifecycleConfigsResponse'
  { -- | If the response is truncated, SageMaker returns this token. To get the
    -- next set of lifecycle configurations, use it in the next request.
    ListNotebookInstanceLifecycleConfigsResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | An array of @NotebookInstanceLifecycleConfiguration@ objects, each
    -- listing a lifecycle configuration.
    ListNotebookInstanceLifecycleConfigsResponse
-> Maybe [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs :: Prelude.Maybe [NotebookInstanceLifecycleConfigSummary],
    -- | The response's http status code.
    ListNotebookInstanceLifecycleConfigsResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (ListNotebookInstanceLifecycleConfigsResponse
-> ListNotebookInstanceLifecycleConfigsResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListNotebookInstanceLifecycleConfigsResponse
-> ListNotebookInstanceLifecycleConfigsResponse -> Bool
$c/= :: ListNotebookInstanceLifecycleConfigsResponse
-> ListNotebookInstanceLifecycleConfigsResponse -> Bool
== :: ListNotebookInstanceLifecycleConfigsResponse
-> ListNotebookInstanceLifecycleConfigsResponse -> Bool
$c== :: ListNotebookInstanceLifecycleConfigsResponse
-> ListNotebookInstanceLifecycleConfigsResponse -> Bool
Prelude.Eq, ReadPrec [ListNotebookInstanceLifecycleConfigsResponse]
ReadPrec ListNotebookInstanceLifecycleConfigsResponse
Int -> ReadS ListNotebookInstanceLifecycleConfigsResponse
ReadS [ListNotebookInstanceLifecycleConfigsResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListNotebookInstanceLifecycleConfigsResponse]
$creadListPrec :: ReadPrec [ListNotebookInstanceLifecycleConfigsResponse]
readPrec :: ReadPrec ListNotebookInstanceLifecycleConfigsResponse
$creadPrec :: ReadPrec ListNotebookInstanceLifecycleConfigsResponse
readList :: ReadS [ListNotebookInstanceLifecycleConfigsResponse]
$creadList :: ReadS [ListNotebookInstanceLifecycleConfigsResponse]
readsPrec :: Int -> ReadS ListNotebookInstanceLifecycleConfigsResponse
$creadsPrec :: Int -> ReadS ListNotebookInstanceLifecycleConfigsResponse
Prelude.Read, Int -> ListNotebookInstanceLifecycleConfigsResponse -> ShowS
[ListNotebookInstanceLifecycleConfigsResponse] -> ShowS
ListNotebookInstanceLifecycleConfigsResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListNotebookInstanceLifecycleConfigsResponse] -> ShowS
$cshowList :: [ListNotebookInstanceLifecycleConfigsResponse] -> ShowS
show :: ListNotebookInstanceLifecycleConfigsResponse -> String
$cshow :: ListNotebookInstanceLifecycleConfigsResponse -> String
showsPrec :: Int -> ListNotebookInstanceLifecycleConfigsResponse -> ShowS
$cshowsPrec :: Int -> ListNotebookInstanceLifecycleConfigsResponse -> ShowS
Prelude.Show, forall x.
Rep ListNotebookInstanceLifecycleConfigsResponse x
-> ListNotebookInstanceLifecycleConfigsResponse
forall x.
ListNotebookInstanceLifecycleConfigsResponse
-> Rep ListNotebookInstanceLifecycleConfigsResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListNotebookInstanceLifecycleConfigsResponse x
-> ListNotebookInstanceLifecycleConfigsResponse
$cfrom :: forall x.
ListNotebookInstanceLifecycleConfigsResponse
-> Rep ListNotebookInstanceLifecycleConfigsResponse x
Prelude.Generic)

-- |
-- Create a value of 'ListNotebookInstanceLifecycleConfigsResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'nextToken', 'listNotebookInstanceLifecycleConfigsResponse_nextToken' - If the response is truncated, SageMaker returns this token. To get the
-- next set of lifecycle configurations, use it in the next request.
--
-- 'notebookInstanceLifecycleConfigs', 'listNotebookInstanceLifecycleConfigsResponse_notebookInstanceLifecycleConfigs' - An array of @NotebookInstanceLifecycleConfiguration@ objects, each
-- listing a lifecycle configuration.
--
-- 'httpStatus', 'listNotebookInstanceLifecycleConfigsResponse_httpStatus' - The response's http status code.
newListNotebookInstanceLifecycleConfigsResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  ListNotebookInstanceLifecycleConfigsResponse
newListNotebookInstanceLifecycleConfigsResponse :: Int -> ListNotebookInstanceLifecycleConfigsResponse
newListNotebookInstanceLifecycleConfigsResponse
  Int
pHttpStatus_ =
    ListNotebookInstanceLifecycleConfigsResponse'
      { $sel:nextToken:ListNotebookInstanceLifecycleConfigsResponse' :: Maybe Text
nextToken =
          forall a. Maybe a
Prelude.Nothing,
        $sel:notebookInstanceLifecycleConfigs:ListNotebookInstanceLifecycleConfigsResponse' :: Maybe [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs =
          forall a. Maybe a
Prelude.Nothing,
        $sel:httpStatus:ListNotebookInstanceLifecycleConfigsResponse' :: Int
httpStatus = Int
pHttpStatus_
      }

-- | If the response is truncated, SageMaker returns this token. To get the
-- next set of lifecycle configurations, use it in the next request.
listNotebookInstanceLifecycleConfigsResponse_nextToken :: Lens.Lens' ListNotebookInstanceLifecycleConfigsResponse (Prelude.Maybe Prelude.Text)
listNotebookInstanceLifecycleConfigsResponse_nextToken :: Lens' ListNotebookInstanceLifecycleConfigsResponse (Maybe Text)
listNotebookInstanceLifecycleConfigsResponse_nextToken = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigsResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListNotebookInstanceLifecycleConfigsResponse' :: ListNotebookInstanceLifecycleConfigsResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListNotebookInstanceLifecycleConfigsResponse
s@ListNotebookInstanceLifecycleConfigsResponse' {} Maybe Text
a -> ListNotebookInstanceLifecycleConfigsResponse
s {$sel:nextToken:ListNotebookInstanceLifecycleConfigsResponse' :: Maybe Text
nextToken = Maybe Text
a} :: ListNotebookInstanceLifecycleConfigsResponse)

-- | An array of @NotebookInstanceLifecycleConfiguration@ objects, each
-- listing a lifecycle configuration.
listNotebookInstanceLifecycleConfigsResponse_notebookInstanceLifecycleConfigs :: Lens.Lens' ListNotebookInstanceLifecycleConfigsResponse (Prelude.Maybe [NotebookInstanceLifecycleConfigSummary])
listNotebookInstanceLifecycleConfigsResponse_notebookInstanceLifecycleConfigs :: Lens'
  ListNotebookInstanceLifecycleConfigsResponse
  (Maybe [NotebookInstanceLifecycleConfigSummary])
listNotebookInstanceLifecycleConfigsResponse_notebookInstanceLifecycleConfigs = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigsResponse' {Maybe [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs :: Maybe [NotebookInstanceLifecycleConfigSummary]
$sel:notebookInstanceLifecycleConfigs:ListNotebookInstanceLifecycleConfigsResponse' :: ListNotebookInstanceLifecycleConfigsResponse
-> Maybe [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs} -> Maybe [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs) (\s :: ListNotebookInstanceLifecycleConfigsResponse
s@ListNotebookInstanceLifecycleConfigsResponse' {} Maybe [NotebookInstanceLifecycleConfigSummary]
a -> ListNotebookInstanceLifecycleConfigsResponse
s {$sel:notebookInstanceLifecycleConfigs:ListNotebookInstanceLifecycleConfigsResponse' :: Maybe [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs = Maybe [NotebookInstanceLifecycleConfigSummary]
a} :: ListNotebookInstanceLifecycleConfigsResponse) 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

-- | The response's http status code.
listNotebookInstanceLifecycleConfigsResponse_httpStatus :: Lens.Lens' ListNotebookInstanceLifecycleConfigsResponse Prelude.Int
listNotebookInstanceLifecycleConfigsResponse_httpStatus :: Lens' ListNotebookInstanceLifecycleConfigsResponse Int
listNotebookInstanceLifecycleConfigsResponse_httpStatus = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListNotebookInstanceLifecycleConfigsResponse' {Int
httpStatus :: Int
$sel:httpStatus:ListNotebookInstanceLifecycleConfigsResponse' :: ListNotebookInstanceLifecycleConfigsResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: ListNotebookInstanceLifecycleConfigsResponse
s@ListNotebookInstanceLifecycleConfigsResponse' {} Int
a -> ListNotebookInstanceLifecycleConfigsResponse
s {$sel:httpStatus:ListNotebookInstanceLifecycleConfigsResponse' :: Int
httpStatus = Int
a} :: ListNotebookInstanceLifecycleConfigsResponse)

instance
  Prelude.NFData
    ListNotebookInstanceLifecycleConfigsResponse
  where
  rnf :: ListNotebookInstanceLifecycleConfigsResponse -> ()
rnf ListNotebookInstanceLifecycleConfigsResponse' {Int
Maybe [NotebookInstanceLifecycleConfigSummary]
Maybe Text
httpStatus :: Int
notebookInstanceLifecycleConfigs :: Maybe [NotebookInstanceLifecycleConfigSummary]
nextToken :: Maybe Text
$sel:httpStatus:ListNotebookInstanceLifecycleConfigsResponse' :: ListNotebookInstanceLifecycleConfigsResponse -> Int
$sel:notebookInstanceLifecycleConfigs:ListNotebookInstanceLifecycleConfigsResponse' :: ListNotebookInstanceLifecycleConfigsResponse
-> Maybe [NotebookInstanceLifecycleConfigSummary]
$sel:nextToken:ListNotebookInstanceLifecycleConfigsResponse' :: ListNotebookInstanceLifecycleConfigsResponse -> Maybe Text
..} =
    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 [NotebookInstanceLifecycleConfigSummary]
notebookInstanceLifecycleConfigs
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus