{-# 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.ListLabelingJobsForWorkteam
-- Copyright   : (c) 2013-2021 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Gets a list of labeling jobs assigned to a specified work team.
--
-- This operation returns paginated results.
module Amazonka.SageMaker.ListLabelingJobsForWorkteam
  ( -- * Creating a Request
    ListLabelingJobsForWorkteam (..),
    newListLabelingJobsForWorkteam,

    -- * Request Lenses
    listLabelingJobsForWorkteam_jobReferenceCodeContains,
    listLabelingJobsForWorkteam_creationTimeAfter,
    listLabelingJobsForWorkteam_nextToken,
    listLabelingJobsForWorkteam_sortOrder,
    listLabelingJobsForWorkteam_creationTimeBefore,
    listLabelingJobsForWorkteam_maxResults,
    listLabelingJobsForWorkteam_sortBy,
    listLabelingJobsForWorkteam_workteamArn,

    -- * Destructuring the Response
    ListLabelingJobsForWorkteamResponse (..),
    newListLabelingJobsForWorkteamResponse,

    -- * Response Lenses
    listLabelingJobsForWorkteamResponse_nextToken,
    listLabelingJobsForWorkteamResponse_httpStatus,
    listLabelingJobsForWorkteamResponse_labelingJobSummaryList,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response
import Amazonka.SageMaker.Types

-- | /See:/ 'newListLabelingJobsForWorkteam' smart constructor.
data ListLabelingJobsForWorkteam = ListLabelingJobsForWorkteam'
  { -- | A filter the limits jobs to only the ones whose job reference code
    -- contains the specified string.
    ListLabelingJobsForWorkteam -> Maybe Text
jobReferenceCodeContains :: Prelude.Maybe Prelude.Text,
    -- | A filter that returns only labeling jobs created after the specified
    -- time (timestamp).
    ListLabelingJobsForWorkteam -> Maybe POSIX
creationTimeAfter :: Prelude.Maybe Core.POSIX,
    -- | If the result of the previous @ListLabelingJobsForWorkteam@ request was
    -- truncated, the response includes a @NextToken@. To retrieve the next set
    -- of labeling jobs, use the token in the next request.
    ListLabelingJobsForWorkteam -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | The sort order for results. The default is @Ascending@.
    ListLabelingJobsForWorkteam -> Maybe SortOrder
sortOrder :: Prelude.Maybe SortOrder,
    -- | A filter that returns only labeling jobs created before the specified
    -- time (timestamp).
    ListLabelingJobsForWorkteam -> Maybe POSIX
creationTimeBefore :: Prelude.Maybe Core.POSIX,
    -- | The maximum number of labeling jobs to return in each page of the
    -- response.
    ListLabelingJobsForWorkteam -> Maybe Natural
maxResults :: Prelude.Maybe Prelude.Natural,
    -- | The field to sort results by. The default is @CreationTime@.
    ListLabelingJobsForWorkteam
-> Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy :: Prelude.Maybe ListLabelingJobsForWorkteamSortByOptions,
    -- | The Amazon Resource Name (ARN) of the work team for which you want to
    -- see labeling jobs for.
    ListLabelingJobsForWorkteam -> Text
workteamArn :: Prelude.Text
  }
  deriving (ListLabelingJobsForWorkteam -> ListLabelingJobsForWorkteam -> Bool
(ListLabelingJobsForWorkteam
 -> ListLabelingJobsForWorkteam -> Bool)
-> (ListLabelingJobsForWorkteam
    -> ListLabelingJobsForWorkteam -> Bool)
-> Eq ListLabelingJobsForWorkteam
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListLabelingJobsForWorkteam -> ListLabelingJobsForWorkteam -> Bool
$c/= :: ListLabelingJobsForWorkteam -> ListLabelingJobsForWorkteam -> Bool
== :: ListLabelingJobsForWorkteam -> ListLabelingJobsForWorkteam -> Bool
$c== :: ListLabelingJobsForWorkteam -> ListLabelingJobsForWorkteam -> Bool
Prelude.Eq, ReadPrec [ListLabelingJobsForWorkteam]
ReadPrec ListLabelingJobsForWorkteam
Int -> ReadS ListLabelingJobsForWorkteam
ReadS [ListLabelingJobsForWorkteam]
(Int -> ReadS ListLabelingJobsForWorkteam)
-> ReadS [ListLabelingJobsForWorkteam]
-> ReadPrec ListLabelingJobsForWorkteam
-> ReadPrec [ListLabelingJobsForWorkteam]
-> Read ListLabelingJobsForWorkteam
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListLabelingJobsForWorkteam]
$creadListPrec :: ReadPrec [ListLabelingJobsForWorkteam]
readPrec :: ReadPrec ListLabelingJobsForWorkteam
$creadPrec :: ReadPrec ListLabelingJobsForWorkteam
readList :: ReadS [ListLabelingJobsForWorkteam]
$creadList :: ReadS [ListLabelingJobsForWorkteam]
readsPrec :: Int -> ReadS ListLabelingJobsForWorkteam
$creadsPrec :: Int -> ReadS ListLabelingJobsForWorkteam
Prelude.Read, Int -> ListLabelingJobsForWorkteam -> ShowS
[ListLabelingJobsForWorkteam] -> ShowS
ListLabelingJobsForWorkteam -> String
(Int -> ListLabelingJobsForWorkteam -> ShowS)
-> (ListLabelingJobsForWorkteam -> String)
-> ([ListLabelingJobsForWorkteam] -> ShowS)
-> Show ListLabelingJobsForWorkteam
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListLabelingJobsForWorkteam] -> ShowS
$cshowList :: [ListLabelingJobsForWorkteam] -> ShowS
show :: ListLabelingJobsForWorkteam -> String
$cshow :: ListLabelingJobsForWorkteam -> String
showsPrec :: Int -> ListLabelingJobsForWorkteam -> ShowS
$cshowsPrec :: Int -> ListLabelingJobsForWorkteam -> ShowS
Prelude.Show, (forall x.
 ListLabelingJobsForWorkteam -> Rep ListLabelingJobsForWorkteam x)
-> (forall x.
    Rep ListLabelingJobsForWorkteam x -> ListLabelingJobsForWorkteam)
-> Generic ListLabelingJobsForWorkteam
forall x.
Rep ListLabelingJobsForWorkteam x -> ListLabelingJobsForWorkteam
forall x.
ListLabelingJobsForWorkteam -> Rep ListLabelingJobsForWorkteam x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListLabelingJobsForWorkteam x -> ListLabelingJobsForWorkteam
$cfrom :: forall x.
ListLabelingJobsForWorkteam -> Rep ListLabelingJobsForWorkteam x
Prelude.Generic)

-- |
-- Create a value of 'ListLabelingJobsForWorkteam' 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:
--
-- 'jobReferenceCodeContains', 'listLabelingJobsForWorkteam_jobReferenceCodeContains' - A filter the limits jobs to only the ones whose job reference code
-- contains the specified string.
--
-- 'creationTimeAfter', 'listLabelingJobsForWorkteam_creationTimeAfter' - A filter that returns only labeling jobs created after the specified
-- time (timestamp).
--
-- 'nextToken', 'listLabelingJobsForWorkteam_nextToken' - If the result of the previous @ListLabelingJobsForWorkteam@ request was
-- truncated, the response includes a @NextToken@. To retrieve the next set
-- of labeling jobs, use the token in the next request.
--
-- 'sortOrder', 'listLabelingJobsForWorkteam_sortOrder' - The sort order for results. The default is @Ascending@.
--
-- 'creationTimeBefore', 'listLabelingJobsForWorkteam_creationTimeBefore' - A filter that returns only labeling jobs created before the specified
-- time (timestamp).
--
-- 'maxResults', 'listLabelingJobsForWorkteam_maxResults' - The maximum number of labeling jobs to return in each page of the
-- response.
--
-- 'sortBy', 'listLabelingJobsForWorkteam_sortBy' - The field to sort results by. The default is @CreationTime@.
--
-- 'workteamArn', 'listLabelingJobsForWorkteam_workteamArn' - The Amazon Resource Name (ARN) of the work team for which you want to
-- see labeling jobs for.
newListLabelingJobsForWorkteam ::
  -- | 'workteamArn'
  Prelude.Text ->
  ListLabelingJobsForWorkteam
newListLabelingJobsForWorkteam :: Text -> ListLabelingJobsForWorkteam
newListLabelingJobsForWorkteam Text
pWorkteamArn_ =
  ListLabelingJobsForWorkteam' :: Maybe Text
-> Maybe POSIX
-> Maybe Text
-> Maybe SortOrder
-> Maybe POSIX
-> Maybe Natural
-> Maybe ListLabelingJobsForWorkteamSortByOptions
-> Text
-> ListLabelingJobsForWorkteam
ListLabelingJobsForWorkteam'
    { $sel:jobReferenceCodeContains:ListLabelingJobsForWorkteam' :: Maybe Text
jobReferenceCodeContains =
        Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:creationTimeAfter:ListLabelingJobsForWorkteam' :: Maybe POSIX
creationTimeAfter = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
      $sel:nextToken:ListLabelingJobsForWorkteam' :: Maybe Text
nextToken = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:sortOrder:ListLabelingJobsForWorkteam' :: Maybe SortOrder
sortOrder = Maybe SortOrder
forall a. Maybe a
Prelude.Nothing,
      $sel:creationTimeBefore:ListLabelingJobsForWorkteam' :: Maybe POSIX
creationTimeBefore = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
      $sel:maxResults:ListLabelingJobsForWorkteam' :: Maybe Natural
maxResults = Maybe Natural
forall a. Maybe a
Prelude.Nothing,
      $sel:sortBy:ListLabelingJobsForWorkteam' :: Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy = Maybe ListLabelingJobsForWorkteamSortByOptions
forall a. Maybe a
Prelude.Nothing,
      $sel:workteamArn:ListLabelingJobsForWorkteam' :: Text
workteamArn = Text
pWorkteamArn_
    }

-- | A filter the limits jobs to only the ones whose job reference code
-- contains the specified string.
listLabelingJobsForWorkteam_jobReferenceCodeContains :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe Prelude.Text)
listLabelingJobsForWorkteam_jobReferenceCodeContains :: (Maybe Text -> f (Maybe Text))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_jobReferenceCodeContains = (ListLabelingJobsForWorkteam -> Maybe Text)
-> (ListLabelingJobsForWorkteam
    -> Maybe Text -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe Text
jobReferenceCodeContains :: Maybe Text
$sel:jobReferenceCodeContains:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe Text
jobReferenceCodeContains} -> Maybe Text
jobReferenceCodeContains) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe Text
a -> ListLabelingJobsForWorkteam
s {$sel:jobReferenceCodeContains:ListLabelingJobsForWorkteam' :: Maybe Text
jobReferenceCodeContains = Maybe Text
a} :: ListLabelingJobsForWorkteam)

-- | A filter that returns only labeling jobs created after the specified
-- time (timestamp).
listLabelingJobsForWorkteam_creationTimeAfter :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe Prelude.UTCTime)
listLabelingJobsForWorkteam_creationTimeAfter :: (Maybe UTCTime -> f (Maybe UTCTime))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_creationTimeAfter = (ListLabelingJobsForWorkteam -> Maybe POSIX)
-> (ListLabelingJobsForWorkteam
    -> Maybe POSIX -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe POSIX)
     (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe POSIX
creationTimeAfter :: Maybe POSIX
$sel:creationTimeAfter:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe POSIX
creationTimeAfter} -> Maybe POSIX
creationTimeAfter) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe POSIX
a -> ListLabelingJobsForWorkteam
s {$sel:creationTimeAfter:ListLabelingJobsForWorkteam' :: Maybe POSIX
creationTimeAfter = Maybe POSIX
a} :: ListLabelingJobsForWorkteam) ((Maybe POSIX -> f (Maybe POSIX))
 -> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
    -> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> ListLabelingJobsForWorkteam
-> f ListLabelingJobsForWorkteam
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time

-- | If the result of the previous @ListLabelingJobsForWorkteam@ request was
-- truncated, the response includes a @NextToken@. To retrieve the next set
-- of labeling jobs, use the token in the next request.
listLabelingJobsForWorkteam_nextToken :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe Prelude.Text)
listLabelingJobsForWorkteam_nextToken :: (Maybe Text -> f (Maybe Text))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_nextToken = (ListLabelingJobsForWorkteam -> Maybe Text)
-> (ListLabelingJobsForWorkteam
    -> Maybe Text -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe Text
a -> ListLabelingJobsForWorkteam
s {$sel:nextToken:ListLabelingJobsForWorkteam' :: Maybe Text
nextToken = Maybe Text
a} :: ListLabelingJobsForWorkteam)

-- | The sort order for results. The default is @Ascending@.
listLabelingJobsForWorkteam_sortOrder :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe SortOrder)
listLabelingJobsForWorkteam_sortOrder :: (Maybe SortOrder -> f (Maybe SortOrder))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_sortOrder = (ListLabelingJobsForWorkteam -> Maybe SortOrder)
-> (ListLabelingJobsForWorkteam
    -> Maybe SortOrder -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe SortOrder)
     (Maybe SortOrder)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe SortOrder
sortOrder :: Maybe SortOrder
$sel:sortOrder:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe SortOrder
sortOrder} -> Maybe SortOrder
sortOrder) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe SortOrder
a -> ListLabelingJobsForWorkteam
s {$sel:sortOrder:ListLabelingJobsForWorkteam' :: Maybe SortOrder
sortOrder = Maybe SortOrder
a} :: ListLabelingJobsForWorkteam)

-- | A filter that returns only labeling jobs created before the specified
-- time (timestamp).
listLabelingJobsForWorkteam_creationTimeBefore :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe Prelude.UTCTime)
listLabelingJobsForWorkteam_creationTimeBefore :: (Maybe UTCTime -> f (Maybe UTCTime))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_creationTimeBefore = (ListLabelingJobsForWorkteam -> Maybe POSIX)
-> (ListLabelingJobsForWorkteam
    -> Maybe POSIX -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe POSIX)
     (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe POSIX
creationTimeBefore :: Maybe POSIX
$sel:creationTimeBefore:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe POSIX
creationTimeBefore} -> Maybe POSIX
creationTimeBefore) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe POSIX
a -> ListLabelingJobsForWorkteam
s {$sel:creationTimeBefore:ListLabelingJobsForWorkteam' :: Maybe POSIX
creationTimeBefore = Maybe POSIX
a} :: ListLabelingJobsForWorkteam) ((Maybe POSIX -> f (Maybe POSIX))
 -> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
    -> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> ListLabelingJobsForWorkteam
-> f ListLabelingJobsForWorkteam
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso POSIX POSIX UTCTime UTCTime
-> Iso (Maybe POSIX) (Maybe POSIX) (Maybe UTCTime) (Maybe UTCTime)
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 AnIso POSIX POSIX UTCTime UTCTime
forall (a :: Format). Iso' (Time a) UTCTime
Core._Time

-- | The maximum number of labeling jobs to return in each page of the
-- response.
listLabelingJobsForWorkteam_maxResults :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe Prelude.Natural)
listLabelingJobsForWorkteam_maxResults :: (Maybe Natural -> f (Maybe Natural))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_maxResults = (ListLabelingJobsForWorkteam -> Maybe Natural)
-> (ListLabelingJobsForWorkteam
    -> Maybe Natural -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe Natural)
     (Maybe Natural)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe Natural
maxResults :: Maybe Natural
$sel:maxResults:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe Natural
maxResults} -> Maybe Natural
maxResults) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe Natural
a -> ListLabelingJobsForWorkteam
s {$sel:maxResults:ListLabelingJobsForWorkteam' :: Maybe Natural
maxResults = Maybe Natural
a} :: ListLabelingJobsForWorkteam)

-- | The field to sort results by. The default is @CreationTime@.
listLabelingJobsForWorkteam_sortBy :: Lens.Lens' ListLabelingJobsForWorkteam (Prelude.Maybe ListLabelingJobsForWorkteamSortByOptions)
listLabelingJobsForWorkteam_sortBy :: (Maybe ListLabelingJobsForWorkteamSortByOptions
 -> f (Maybe ListLabelingJobsForWorkteamSortByOptions))
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_sortBy = (ListLabelingJobsForWorkteam
 -> Maybe ListLabelingJobsForWorkteamSortByOptions)
-> (ListLabelingJobsForWorkteam
    -> Maybe ListLabelingJobsForWorkteamSortByOptions
    -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam
     ListLabelingJobsForWorkteam
     (Maybe ListLabelingJobsForWorkteamSortByOptions)
     (Maybe ListLabelingJobsForWorkteamSortByOptions)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy :: Maybe ListLabelingJobsForWorkteamSortByOptions
$sel:sortBy:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam
-> Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy} -> Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Maybe ListLabelingJobsForWorkteamSortByOptions
a -> ListLabelingJobsForWorkteam
s {$sel:sortBy:ListLabelingJobsForWorkteam' :: Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy = Maybe ListLabelingJobsForWorkteamSortByOptions
a} :: ListLabelingJobsForWorkteam)

-- | The Amazon Resource Name (ARN) of the work team for which you want to
-- see labeling jobs for.
listLabelingJobsForWorkteam_workteamArn :: Lens.Lens' ListLabelingJobsForWorkteam Prelude.Text
listLabelingJobsForWorkteam_workteamArn :: (Text -> f Text)
-> ListLabelingJobsForWorkteam -> f ListLabelingJobsForWorkteam
listLabelingJobsForWorkteam_workteamArn = (ListLabelingJobsForWorkteam -> Text)
-> (ListLabelingJobsForWorkteam
    -> Text -> ListLabelingJobsForWorkteam)
-> Lens
     ListLabelingJobsForWorkteam ListLabelingJobsForWorkteam Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteam' {Text
workteamArn :: Text
$sel:workteamArn:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Text
workteamArn} -> Text
workteamArn) (\s :: ListLabelingJobsForWorkteam
s@ListLabelingJobsForWorkteam' {} Text
a -> ListLabelingJobsForWorkteam
s {$sel:workteamArn:ListLabelingJobsForWorkteam' :: Text
workteamArn = Text
a} :: ListLabelingJobsForWorkteam)

instance Core.AWSPager ListLabelingJobsForWorkteam where
  page :: ListLabelingJobsForWorkteam
-> AWSResponse ListLabelingJobsForWorkteam
-> Maybe ListLabelingJobsForWorkteam
page ListLabelingJobsForWorkteam
rq AWSResponse ListLabelingJobsForWorkteam
rs
    | Maybe Text -> Bool
forall a. AWSTruncated a => a -> Bool
Core.stop
        ( AWSResponse ListLabelingJobsForWorkteam
ListLabelingJobsForWorkteamResponse
rs
            ListLabelingJobsForWorkteamResponse
-> Getting (First Text) ListLabelingJobsForWorkteamResponse Text
-> Maybe Text
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? (Maybe Text -> Const (First Text) (Maybe Text))
-> ListLabelingJobsForWorkteamResponse
-> Const (First Text) ListLabelingJobsForWorkteamResponse
Lens' ListLabelingJobsForWorkteamResponse (Maybe Text)
listLabelingJobsForWorkteamResponse_nextToken
              ((Maybe Text -> Const (First Text) (Maybe Text))
 -> ListLabelingJobsForWorkteamResponse
 -> Const (First Text) ListLabelingJobsForWorkteamResponse)
-> ((Text -> Const (First Text) Text)
    -> Maybe Text -> Const (First Text) (Maybe Text))
-> Getting (First Text) ListLabelingJobsForWorkteamResponse Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> Const (First Text) Text)
-> Maybe Text -> Const (First Text) (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
        ) =
      Maybe ListLabelingJobsForWorkteam
forall a. Maybe a
Prelude.Nothing
    | [LabelingJobForWorkteamSummary] -> Bool
forall a. AWSTruncated a => a -> Bool
Core.stop
        ( AWSResponse ListLabelingJobsForWorkteam
ListLabelingJobsForWorkteamResponse
rs
            ListLabelingJobsForWorkteamResponse
-> Getting
     [LabelingJobForWorkteamSummary]
     ListLabelingJobsForWorkteamResponse
     [LabelingJobForWorkteamSummary]
-> [LabelingJobForWorkteamSummary]
forall s a. s -> Getting a s a -> a
Lens.^. Getting
  [LabelingJobForWorkteamSummary]
  ListLabelingJobsForWorkteamResponse
  [LabelingJobForWorkteamSummary]
Lens'
  ListLabelingJobsForWorkteamResponse [LabelingJobForWorkteamSummary]
listLabelingJobsForWorkteamResponse_labelingJobSummaryList
        ) =
      Maybe ListLabelingJobsForWorkteam
forall a. Maybe a
Prelude.Nothing
    | Bool
Prelude.otherwise =
      ListLabelingJobsForWorkteam -> Maybe ListLabelingJobsForWorkteam
forall a. a -> Maybe a
Prelude.Just (ListLabelingJobsForWorkteam -> Maybe ListLabelingJobsForWorkteam)
-> ListLabelingJobsForWorkteam -> Maybe ListLabelingJobsForWorkteam
forall a b. (a -> b) -> a -> b
Prelude.$
        ListLabelingJobsForWorkteam
rq
          ListLabelingJobsForWorkteam
-> (ListLabelingJobsForWorkteam -> ListLabelingJobsForWorkteam)
-> ListLabelingJobsForWorkteam
forall a b. a -> (a -> b) -> b
Prelude.& (Maybe Text -> Identity (Maybe Text))
-> ListLabelingJobsForWorkteam
-> Identity ListLabelingJobsForWorkteam
Lens
  ListLabelingJobsForWorkteam
  ListLabelingJobsForWorkteam
  (Maybe Text)
  (Maybe Text)
listLabelingJobsForWorkteam_nextToken
          ((Maybe Text -> Identity (Maybe Text))
 -> ListLabelingJobsForWorkteam
 -> Identity ListLabelingJobsForWorkteam)
-> Maybe Text
-> ListLabelingJobsForWorkteam
-> ListLabelingJobsForWorkteam
forall s t a b. ASetter s t a b -> b -> s -> t
Lens..~ AWSResponse ListLabelingJobsForWorkteam
ListLabelingJobsForWorkteamResponse
rs
          ListLabelingJobsForWorkteamResponse
-> Getting (First Text) ListLabelingJobsForWorkteamResponse Text
-> Maybe Text
forall s a. s -> Getting (First a) s a -> Maybe a
Lens.^? (Maybe Text -> Const (First Text) (Maybe Text))
-> ListLabelingJobsForWorkteamResponse
-> Const (First Text) ListLabelingJobsForWorkteamResponse
Lens' ListLabelingJobsForWorkteamResponse (Maybe Text)
listLabelingJobsForWorkteamResponse_nextToken
            ((Maybe Text -> Const (First Text) (Maybe Text))
 -> ListLabelingJobsForWorkteamResponse
 -> Const (First Text) ListLabelingJobsForWorkteamResponse)
-> ((Text -> Const (First Text) Text)
    -> Maybe Text -> Const (First Text) (Maybe Text))
-> Getting (First Text) ListLabelingJobsForWorkteamResponse Text
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> Const (First Text) Text)
-> Maybe Text -> Const (First Text) (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just

instance Core.AWSRequest ListLabelingJobsForWorkteam where
  type
    AWSResponse ListLabelingJobsForWorkteam =
      ListLabelingJobsForWorkteamResponse
  request :: ListLabelingJobsForWorkteam -> Request ListLabelingJobsForWorkteam
request = Service
-> ListLabelingJobsForWorkteam
-> Request ListLabelingJobsForWorkteam
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON Service
defaultService
  response :: Logger
-> Service
-> Proxy ListLabelingJobsForWorkteam
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse ListLabelingJobsForWorkteam)))
response =
    (Int
 -> ResponseHeaders
 -> Object
 -> Either String (AWSResponse ListLabelingJobsForWorkteam))
-> Logger
-> Service
-> Proxy ListLabelingJobsForWorkteam
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse ListLabelingJobsForWorkteam)))
forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> Logger
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe Text
-> Int
-> [LabelingJobForWorkteamSummary]
-> ListLabelingJobsForWorkteamResponse
ListLabelingJobsForWorkteamResponse'
            (Maybe Text
 -> Int
 -> [LabelingJobForWorkteamSummary]
 -> ListLabelingJobsForWorkteamResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Int
      -> [LabelingJobForWorkteamSummary]
      -> ListLabelingJobsForWorkteamResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Either String (Maybe Text)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"NextToken")
            Either
  String
  (Int
   -> [LabelingJobForWorkteamSummary]
   -> ListLabelingJobsForWorkteamResponse)
-> Either String Int
-> Either
     String
     ([LabelingJobForWorkteamSummary]
      -> ListLabelingJobsForWorkteamResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Int -> Either String Int
forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (Int -> Int
forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
            Either
  String
  ([LabelingJobForWorkteamSummary]
   -> ListLabelingJobsForWorkteamResponse)
-> Either String [LabelingJobForWorkteamSummary]
-> Either String ListLabelingJobsForWorkteamResponse
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x Object
-> Text -> Either String (Maybe [LabelingJobForWorkteamSummary])
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"LabelingJobSummaryList"
                            Either String (Maybe [LabelingJobForWorkteamSummary])
-> [LabelingJobForWorkteamSummary]
-> Either String [LabelingJobForWorkteamSummary]
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ [LabelingJobForWorkteamSummary]
forall a. Monoid a => a
Prelude.mempty
                        )
      )

instance Prelude.Hashable ListLabelingJobsForWorkteam

instance Prelude.NFData ListLabelingJobsForWorkteam

instance Core.ToHeaders ListLabelingJobsForWorkteam where
  toHeaders :: ListLabelingJobsForWorkteam -> ResponseHeaders
toHeaders =
    ResponseHeaders -> ListLabelingJobsForWorkteam -> ResponseHeaders
forall a b. a -> b -> a
Prelude.const
      ( [ResponseHeaders] -> ResponseHeaders
forall a. Monoid a => [a] -> a
Prelude.mconcat
          [ HeaderName
"X-Amz-Target"
              HeaderName -> ByteString -> ResponseHeaders
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Core.=# ( ByteString
"SageMaker.ListLabelingJobsForWorkteam" ::
                          Prelude.ByteString
                      ),
            HeaderName
"Content-Type"
              HeaderName -> ByteString -> ResponseHeaders
forall a. ToHeader a => HeaderName -> a -> ResponseHeaders
Core.=# ( ByteString
"application/x-amz-json-1.1" ::
                          Prelude.ByteString
                      )
          ]
      )

instance Core.ToJSON ListLabelingJobsForWorkteam where
  toJSON :: ListLabelingJobsForWorkteam -> Value
toJSON ListLabelingJobsForWorkteam' {Maybe Natural
Maybe Text
Maybe POSIX
Maybe ListLabelingJobsForWorkteamSortByOptions
Maybe SortOrder
Text
workteamArn :: Text
sortBy :: Maybe ListLabelingJobsForWorkteamSortByOptions
maxResults :: Maybe Natural
creationTimeBefore :: Maybe POSIX
sortOrder :: Maybe SortOrder
nextToken :: Maybe Text
creationTimeAfter :: Maybe POSIX
jobReferenceCodeContains :: Maybe Text
$sel:workteamArn:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Text
$sel:sortBy:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam
-> Maybe ListLabelingJobsForWorkteamSortByOptions
$sel:maxResults:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe Natural
$sel:creationTimeBefore:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe POSIX
$sel:sortOrder:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe SortOrder
$sel:nextToken:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe Text
$sel:creationTimeAfter:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe POSIX
$sel:jobReferenceCodeContains:ListLabelingJobsForWorkteam' :: ListLabelingJobsForWorkteam -> Maybe Text
..} =
    [Pair] -> Value
Core.object
      ( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [ (Text
"JobReferenceCodeContains" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
jobReferenceCodeContains,
            (Text
"CreationTimeAfter" Text -> POSIX -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (POSIX -> Pair) -> Maybe POSIX -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe POSIX
creationTimeAfter,
            (Text
"NextToken" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Text -> Pair) -> Maybe Text -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Text
nextToken,
            (Text
"SortOrder" Text -> SortOrder -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (SortOrder -> Pair) -> Maybe SortOrder -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe SortOrder
sortOrder,
            (Text
"CreationTimeBefore" Text -> POSIX -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=)
              (POSIX -> Pair) -> Maybe POSIX -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe POSIX
creationTimeBefore,
            (Text
"MaxResults" Text -> Natural -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (Natural -> Pair) -> Maybe Natural -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe Natural
maxResults,
            (Text
"SortBy" Text -> ListLabelingJobsForWorkteamSortByOptions -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..=) (ListLabelingJobsForWorkteamSortByOptions -> Pair)
-> Maybe ListLabelingJobsForWorkteamSortByOptions -> Maybe Pair
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> Maybe ListLabelingJobsForWorkteamSortByOptions
sortBy,
            Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"WorkteamArn" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
workteamArn)
          ]
      )

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

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

-- | /See:/ 'newListLabelingJobsForWorkteamResponse' smart constructor.
data ListLabelingJobsForWorkteamResponse = ListLabelingJobsForWorkteamResponse'
  { -- | If the response is truncated, Amazon SageMaker returns this token. To
    -- retrieve the next set of labeling jobs, use it in the subsequent
    -- request.
    ListLabelingJobsForWorkteamResponse -> Maybe Text
nextToken :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    ListLabelingJobsForWorkteamResponse -> Int
httpStatus :: Prelude.Int,
    -- | An array of @LabelingJobSummary@ objects, each describing a labeling
    -- job.
    ListLabelingJobsForWorkteamResponse
-> [LabelingJobForWorkteamSummary]
labelingJobSummaryList :: [LabelingJobForWorkteamSummary]
  }
  deriving (ListLabelingJobsForWorkteamResponse
-> ListLabelingJobsForWorkteamResponse -> Bool
(ListLabelingJobsForWorkteamResponse
 -> ListLabelingJobsForWorkteamResponse -> Bool)
-> (ListLabelingJobsForWorkteamResponse
    -> ListLabelingJobsForWorkteamResponse -> Bool)
-> Eq ListLabelingJobsForWorkteamResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: ListLabelingJobsForWorkteamResponse
-> ListLabelingJobsForWorkteamResponse -> Bool
$c/= :: ListLabelingJobsForWorkteamResponse
-> ListLabelingJobsForWorkteamResponse -> Bool
== :: ListLabelingJobsForWorkteamResponse
-> ListLabelingJobsForWorkteamResponse -> Bool
$c== :: ListLabelingJobsForWorkteamResponse
-> ListLabelingJobsForWorkteamResponse -> Bool
Prelude.Eq, ReadPrec [ListLabelingJobsForWorkteamResponse]
ReadPrec ListLabelingJobsForWorkteamResponse
Int -> ReadS ListLabelingJobsForWorkteamResponse
ReadS [ListLabelingJobsForWorkteamResponse]
(Int -> ReadS ListLabelingJobsForWorkteamResponse)
-> ReadS [ListLabelingJobsForWorkteamResponse]
-> ReadPrec ListLabelingJobsForWorkteamResponse
-> ReadPrec [ListLabelingJobsForWorkteamResponse]
-> Read ListLabelingJobsForWorkteamResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [ListLabelingJobsForWorkteamResponse]
$creadListPrec :: ReadPrec [ListLabelingJobsForWorkteamResponse]
readPrec :: ReadPrec ListLabelingJobsForWorkteamResponse
$creadPrec :: ReadPrec ListLabelingJobsForWorkteamResponse
readList :: ReadS [ListLabelingJobsForWorkteamResponse]
$creadList :: ReadS [ListLabelingJobsForWorkteamResponse]
readsPrec :: Int -> ReadS ListLabelingJobsForWorkteamResponse
$creadsPrec :: Int -> ReadS ListLabelingJobsForWorkteamResponse
Prelude.Read, Int -> ListLabelingJobsForWorkteamResponse -> ShowS
[ListLabelingJobsForWorkteamResponse] -> ShowS
ListLabelingJobsForWorkteamResponse -> String
(Int -> ListLabelingJobsForWorkteamResponse -> ShowS)
-> (ListLabelingJobsForWorkteamResponse -> String)
-> ([ListLabelingJobsForWorkteamResponse] -> ShowS)
-> Show ListLabelingJobsForWorkteamResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [ListLabelingJobsForWorkteamResponse] -> ShowS
$cshowList :: [ListLabelingJobsForWorkteamResponse] -> ShowS
show :: ListLabelingJobsForWorkteamResponse -> String
$cshow :: ListLabelingJobsForWorkteamResponse -> String
showsPrec :: Int -> ListLabelingJobsForWorkteamResponse -> ShowS
$cshowsPrec :: Int -> ListLabelingJobsForWorkteamResponse -> ShowS
Prelude.Show, (forall x.
 ListLabelingJobsForWorkteamResponse
 -> Rep ListLabelingJobsForWorkteamResponse x)
-> (forall x.
    Rep ListLabelingJobsForWorkteamResponse x
    -> ListLabelingJobsForWorkteamResponse)
-> Generic ListLabelingJobsForWorkteamResponse
forall x.
Rep ListLabelingJobsForWorkteamResponse x
-> ListLabelingJobsForWorkteamResponse
forall x.
ListLabelingJobsForWorkteamResponse
-> Rep ListLabelingJobsForWorkteamResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep ListLabelingJobsForWorkteamResponse x
-> ListLabelingJobsForWorkteamResponse
$cfrom :: forall x.
ListLabelingJobsForWorkteamResponse
-> Rep ListLabelingJobsForWorkteamResponse x
Prelude.Generic)

-- |
-- Create a value of 'ListLabelingJobsForWorkteamResponse' 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', 'listLabelingJobsForWorkteamResponse_nextToken' - If the response is truncated, Amazon SageMaker returns this token. To
-- retrieve the next set of labeling jobs, use it in the subsequent
-- request.
--
-- 'httpStatus', 'listLabelingJobsForWorkteamResponse_httpStatus' - The response's http status code.
--
-- 'labelingJobSummaryList', 'listLabelingJobsForWorkteamResponse_labelingJobSummaryList' - An array of @LabelingJobSummary@ objects, each describing a labeling
-- job.
newListLabelingJobsForWorkteamResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  ListLabelingJobsForWorkteamResponse
newListLabelingJobsForWorkteamResponse :: Int -> ListLabelingJobsForWorkteamResponse
newListLabelingJobsForWorkteamResponse Int
pHttpStatus_ =
  ListLabelingJobsForWorkteamResponse' :: Maybe Text
-> Int
-> [LabelingJobForWorkteamSummary]
-> ListLabelingJobsForWorkteamResponse
ListLabelingJobsForWorkteamResponse'
    { $sel:nextToken:ListLabelingJobsForWorkteamResponse' :: Maybe Text
nextToken =
        Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:ListLabelingJobsForWorkteamResponse' :: Int
httpStatus = Int
pHttpStatus_,
      $sel:labelingJobSummaryList:ListLabelingJobsForWorkteamResponse' :: [LabelingJobForWorkteamSummary]
labelingJobSummaryList =
        [LabelingJobForWorkteamSummary]
forall a. Monoid a => a
Prelude.mempty
    }

-- | If the response is truncated, Amazon SageMaker returns this token. To
-- retrieve the next set of labeling jobs, use it in the subsequent
-- request.
listLabelingJobsForWorkteamResponse_nextToken :: Lens.Lens' ListLabelingJobsForWorkteamResponse (Prelude.Maybe Prelude.Text)
listLabelingJobsForWorkteamResponse_nextToken :: (Maybe Text -> f (Maybe Text))
-> ListLabelingJobsForWorkteamResponse
-> f ListLabelingJobsForWorkteamResponse
listLabelingJobsForWorkteamResponse_nextToken = (ListLabelingJobsForWorkteamResponse -> Maybe Text)
-> (ListLabelingJobsForWorkteamResponse
    -> Maybe Text -> ListLabelingJobsForWorkteamResponse)
-> Lens' ListLabelingJobsForWorkteamResponse (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteamResponse' {Maybe Text
nextToken :: Maybe Text
$sel:nextToken:ListLabelingJobsForWorkteamResponse' :: ListLabelingJobsForWorkteamResponse -> Maybe Text
nextToken} -> Maybe Text
nextToken) (\s :: ListLabelingJobsForWorkteamResponse
s@ListLabelingJobsForWorkteamResponse' {} Maybe Text
a -> ListLabelingJobsForWorkteamResponse
s {$sel:nextToken:ListLabelingJobsForWorkteamResponse' :: Maybe Text
nextToken = Maybe Text
a} :: ListLabelingJobsForWorkteamResponse)

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

-- | An array of @LabelingJobSummary@ objects, each describing a labeling
-- job.
listLabelingJobsForWorkteamResponse_labelingJobSummaryList :: Lens.Lens' ListLabelingJobsForWorkteamResponse [LabelingJobForWorkteamSummary]
listLabelingJobsForWorkteamResponse_labelingJobSummaryList :: ([LabelingJobForWorkteamSummary]
 -> f [LabelingJobForWorkteamSummary])
-> ListLabelingJobsForWorkteamResponse
-> f ListLabelingJobsForWorkteamResponse
listLabelingJobsForWorkteamResponse_labelingJobSummaryList = (ListLabelingJobsForWorkteamResponse
 -> [LabelingJobForWorkteamSummary])
-> (ListLabelingJobsForWorkteamResponse
    -> [LabelingJobForWorkteamSummary]
    -> ListLabelingJobsForWorkteamResponse)
-> Lens'
     ListLabelingJobsForWorkteamResponse [LabelingJobForWorkteamSummary]
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\ListLabelingJobsForWorkteamResponse' {[LabelingJobForWorkteamSummary]
labelingJobSummaryList :: [LabelingJobForWorkteamSummary]
$sel:labelingJobSummaryList:ListLabelingJobsForWorkteamResponse' :: ListLabelingJobsForWorkteamResponse
-> [LabelingJobForWorkteamSummary]
labelingJobSummaryList} -> [LabelingJobForWorkteamSummary]
labelingJobSummaryList) (\s :: ListLabelingJobsForWorkteamResponse
s@ListLabelingJobsForWorkteamResponse' {} [LabelingJobForWorkteamSummary]
a -> ListLabelingJobsForWorkteamResponse
s {$sel:labelingJobSummaryList:ListLabelingJobsForWorkteamResponse' :: [LabelingJobForWorkteamSummary]
labelingJobSummaryList = [LabelingJobForWorkteamSummary]
a} :: ListLabelingJobsForWorkteamResponse) (([LabelingJobForWorkteamSummary]
  -> f [LabelingJobForWorkteamSummary])
 -> ListLabelingJobsForWorkteamResponse
 -> f ListLabelingJobsForWorkteamResponse)
-> (([LabelingJobForWorkteamSummary]
     -> f [LabelingJobForWorkteamSummary])
    -> [LabelingJobForWorkteamSummary]
    -> f [LabelingJobForWorkteamSummary])
-> ([LabelingJobForWorkteamSummary]
    -> f [LabelingJobForWorkteamSummary])
-> ListLabelingJobsForWorkteamResponse
-> f ListLabelingJobsForWorkteamResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([LabelingJobForWorkteamSummary]
 -> f [LabelingJobForWorkteamSummary])
-> [LabelingJobForWorkteamSummary]
-> f [LabelingJobForWorkteamSummary]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

instance
  Prelude.NFData
    ListLabelingJobsForWorkteamResponse