{-# 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.Forecast.DescribePredictor
-- 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)
--
-- Describes a predictor created using the CreatePredictor operation.
--
-- In addition to listing the properties provided in the @CreatePredictor@
-- request, this operation lists the following properties:
--
-- -   @DatasetImportJobArns@ - The dataset import jobs used to import
--     training data.
--
-- -   @AutoMLAlgorithmArns@ - If AutoML is performed, the algorithms that
--     were evaluated.
--
-- -   @CreationTime@
--
-- -   @LastModificationTime@
--
-- -   @Status@
--
-- -   @Message@ - If an error occurred, information about the error.
module Amazonka.Forecast.DescribePredictor
  ( -- * Creating a Request
    DescribePredictor (..),
    newDescribePredictor,

    -- * Request Lenses
    describePredictor_predictorArn,

    -- * Destructuring the Response
    DescribePredictorResponse (..),
    newDescribePredictorResponse,

    -- * Response Lenses
    describePredictorResponse_creationTime,
    describePredictorResponse_forecastHorizon,
    describePredictorResponse_status,
    describePredictorResponse_performAutoML,
    describePredictorResponse_autoMLAlgorithmArns,
    describePredictorResponse_trainingParameters,
    describePredictorResponse_algorithmArn,
    describePredictorResponse_hPOConfig,
    describePredictorResponse_predictorArn,
    describePredictorResponse_optimizationMetric,
    describePredictorResponse_predictorExecutionDetails,
    describePredictorResponse_datasetImportJobArns,
    describePredictorResponse_estimatedTimeRemainingInMinutes,
    describePredictorResponse_autoMLOverrideStrategy,
    describePredictorResponse_evaluationParameters,
    describePredictorResponse_inputDataConfig,
    describePredictorResponse_predictorName,
    describePredictorResponse_featurizationConfig,
    describePredictorResponse_encryptionConfig,
    describePredictorResponse_forecastTypes,
    describePredictorResponse_message,
    describePredictorResponse_performHPO,
    describePredictorResponse_lastModificationTime,
    describePredictorResponse_httpStatus,
  )
where

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

-- | /See:/ 'newDescribePredictor' smart constructor.
data DescribePredictor = DescribePredictor'
  { -- | The Amazon Resource Name (ARN) of the predictor that you want
    -- information about.
    DescribePredictor -> Text
predictorArn :: Prelude.Text
  }
  deriving (DescribePredictor -> DescribePredictor -> Bool
(DescribePredictor -> DescribePredictor -> Bool)
-> (DescribePredictor -> DescribePredictor -> Bool)
-> Eq DescribePredictor
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribePredictor -> DescribePredictor -> Bool
$c/= :: DescribePredictor -> DescribePredictor -> Bool
== :: DescribePredictor -> DescribePredictor -> Bool
$c== :: DescribePredictor -> DescribePredictor -> Bool
Prelude.Eq, ReadPrec [DescribePredictor]
ReadPrec DescribePredictor
Int -> ReadS DescribePredictor
ReadS [DescribePredictor]
(Int -> ReadS DescribePredictor)
-> ReadS [DescribePredictor]
-> ReadPrec DescribePredictor
-> ReadPrec [DescribePredictor]
-> Read DescribePredictor
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribePredictor]
$creadListPrec :: ReadPrec [DescribePredictor]
readPrec :: ReadPrec DescribePredictor
$creadPrec :: ReadPrec DescribePredictor
readList :: ReadS [DescribePredictor]
$creadList :: ReadS [DescribePredictor]
readsPrec :: Int -> ReadS DescribePredictor
$creadsPrec :: Int -> ReadS DescribePredictor
Prelude.Read, Int -> DescribePredictor -> ShowS
[DescribePredictor] -> ShowS
DescribePredictor -> String
(Int -> DescribePredictor -> ShowS)
-> (DescribePredictor -> String)
-> ([DescribePredictor] -> ShowS)
-> Show DescribePredictor
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribePredictor] -> ShowS
$cshowList :: [DescribePredictor] -> ShowS
show :: DescribePredictor -> String
$cshow :: DescribePredictor -> String
showsPrec :: Int -> DescribePredictor -> ShowS
$cshowsPrec :: Int -> DescribePredictor -> ShowS
Prelude.Show, (forall x. DescribePredictor -> Rep DescribePredictor x)
-> (forall x. Rep DescribePredictor x -> DescribePredictor)
-> Generic DescribePredictor
forall x. Rep DescribePredictor x -> DescribePredictor
forall x. DescribePredictor -> Rep DescribePredictor x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep DescribePredictor x -> DescribePredictor
$cfrom :: forall x. DescribePredictor -> Rep DescribePredictor x
Prelude.Generic)

-- |
-- Create a value of 'DescribePredictor' 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:
--
-- 'predictorArn', 'describePredictor_predictorArn' - The Amazon Resource Name (ARN) of the predictor that you want
-- information about.
newDescribePredictor ::
  -- | 'predictorArn'
  Prelude.Text ->
  DescribePredictor
newDescribePredictor :: Text -> DescribePredictor
newDescribePredictor Text
pPredictorArn_ =
  DescribePredictor' :: Text -> DescribePredictor
DescribePredictor' {$sel:predictorArn:DescribePredictor' :: Text
predictorArn = Text
pPredictorArn_}

-- | The Amazon Resource Name (ARN) of the predictor that you want
-- information about.
describePredictor_predictorArn :: Lens.Lens' DescribePredictor Prelude.Text
describePredictor_predictorArn :: (Text -> f Text) -> DescribePredictor -> f DescribePredictor
describePredictor_predictorArn = (DescribePredictor -> Text)
-> (DescribePredictor -> Text -> DescribePredictor)
-> Lens DescribePredictor DescribePredictor Text Text
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictor' {Text
predictorArn :: Text
$sel:predictorArn:DescribePredictor' :: DescribePredictor -> Text
predictorArn} -> Text
predictorArn) (\s :: DescribePredictor
s@DescribePredictor' {} Text
a -> DescribePredictor
s {$sel:predictorArn:DescribePredictor' :: Text
predictorArn = Text
a} :: DescribePredictor)

instance Core.AWSRequest DescribePredictor where
  type
    AWSResponse DescribePredictor =
      DescribePredictorResponse
  request :: DescribePredictor -> Request DescribePredictor
request = Service -> DescribePredictor -> Request DescribePredictor
forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON Service
defaultService
  response :: Logger
-> Service
-> Proxy DescribePredictor
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse DescribePredictor)))
response =
    (Int
 -> ResponseHeaders
 -> Object
 -> Either String (AWSResponse DescribePredictor))
-> Logger
-> Service
-> Proxy DescribePredictor
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse DescribePredictor)))
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 POSIX
-> Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [Text]
-> Maybe (HashMap Text Text)
-> Maybe Text
-> Maybe HyperParameterTuningJobConfig
-> Maybe Text
-> Maybe OptimizationMetric
-> Maybe PredictorExecutionDetails
-> Maybe [Text]
-> Maybe Integer
-> Maybe AutoMLOverrideStrategy
-> Maybe EvaluationParameters
-> Maybe InputDataConfig
-> Maybe Text
-> Maybe FeaturizationConfig
-> Maybe EncryptionConfig
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe Bool
-> Maybe POSIX
-> Int
-> DescribePredictorResponse
DescribePredictorResponse'
            (Maybe POSIX
 -> Maybe Int
 -> Maybe Text
 -> Maybe Bool
 -> Maybe [Text]
 -> Maybe (HashMap Text Text)
 -> Maybe Text
 -> Maybe HyperParameterTuningJobConfig
 -> Maybe Text
 -> Maybe OptimizationMetric
 -> Maybe PredictorExecutionDetails
 -> Maybe [Text]
 -> Maybe Integer
 -> Maybe AutoMLOverrideStrategy
 -> Maybe EvaluationParameters
 -> Maybe InputDataConfig
 -> Maybe Text
 -> Maybe FeaturizationConfig
 -> Maybe EncryptionConfig
 -> Maybe (NonEmpty Text)
 -> Maybe Text
 -> Maybe Bool
 -> Maybe POSIX
 -> Int
 -> DescribePredictorResponse)
-> Either String (Maybe POSIX)
-> Either
     String
     (Maybe Int
      -> Maybe Text
      -> Maybe Bool
      -> Maybe [Text]
      -> Maybe (HashMap Text Text)
      -> Maybe Text
      -> Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x Object -> Text -> Either String (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"CreationTime")
            Either
  String
  (Maybe Int
   -> Maybe Text
   -> Maybe Bool
   -> Maybe [Text]
   -> Maybe (HashMap Text Text)
   -> Maybe Text
   -> Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Int)
-> Either
     String
     (Maybe Text
      -> Maybe Bool
      -> Maybe [Text]
      -> Maybe (HashMap Text Text)
      -> Maybe Text
      -> Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Int)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"ForecastHorizon")
            Either
  String
  (Maybe Text
   -> Maybe Bool
   -> Maybe [Text]
   -> Maybe (HashMap Text Text)
   -> Maybe Text
   -> Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Bool
      -> Maybe [Text]
      -> Maybe (HashMap Text Text)
      -> Maybe Text
      -> Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => 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
"Status")
            Either
  String
  (Maybe Bool
   -> Maybe [Text]
   -> Maybe (HashMap Text Text)
   -> Maybe Text
   -> Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Bool)
-> Either
     String
     (Maybe [Text]
      -> Maybe (HashMap Text Text)
      -> Maybe Text
      -> Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"PerformAutoML")
            Either
  String
  (Maybe [Text]
   -> Maybe (HashMap Text Text)
   -> Maybe Text
   -> Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe [Text])
-> Either
     String
     (Maybe (HashMap Text Text)
      -> Maybe Text
      -> Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x Object -> Text -> Either String (Maybe (Maybe [Text]))
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"AutoMLAlgorithmArns"
                            Either String (Maybe (Maybe [Text]))
-> Maybe [Text] -> Either String (Maybe [Text])
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ Maybe [Text]
forall a. Monoid a => a
Prelude.mempty
                        )
            Either
  String
  (Maybe (HashMap Text Text)
   -> Maybe Text
   -> Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe (HashMap Text Text))
-> Either
     String
     (Maybe Text
      -> Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x Object -> Text -> Either String (Maybe (Maybe (HashMap Text Text)))
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"TrainingParameters"
                            Either String (Maybe (Maybe (HashMap Text Text)))
-> Maybe (HashMap Text Text)
-> Either String (Maybe (HashMap Text Text))
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ Maybe (HashMap Text Text)
forall a. Monoid a => a
Prelude.mempty
                        )
            Either
  String
  (Maybe Text
   -> Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe HyperParameterTuningJobConfig
      -> Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => 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
"AlgorithmArn")
            Either
  String
  (Maybe HyperParameterTuningJobConfig
   -> Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe HyperParameterTuningJobConfig)
-> Either
     String
     (Maybe Text
      -> Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object
-> Text -> Either String (Maybe HyperParameterTuningJobConfig)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"HPOConfig")
            Either
  String
  (Maybe Text
   -> Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe OptimizationMetric
      -> Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => 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
"PredictorArn")
            Either
  String
  (Maybe OptimizationMetric
   -> Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe OptimizationMetric)
-> Either
     String
     (Maybe PredictorExecutionDetails
      -> Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe OptimizationMetric)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"OptimizationMetric")
            Either
  String
  (Maybe PredictorExecutionDetails
   -> Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe PredictorExecutionDetails)
-> Either
     String
     (Maybe [Text]
      -> Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe PredictorExecutionDetails)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"PredictorExecutionDetails")
            Either
  String
  (Maybe [Text]
   -> Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe [Text])
-> Either
     String
     (Maybe Integer
      -> Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> ( Object
x Object -> Text -> Either String (Maybe (Maybe [Text]))
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"DatasetImportJobArns"
                            Either String (Maybe (Maybe [Text]))
-> Maybe [Text] -> Either String (Maybe [Text])
forall (f :: * -> *) a. Functor f => f (Maybe a) -> a -> f a
Core..!@ Maybe [Text]
forall a. Monoid a => a
Prelude.mempty
                        )
            Either
  String
  (Maybe Integer
   -> Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Integer)
-> Either
     String
     (Maybe AutoMLOverrideStrategy
      -> Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Integer)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"EstimatedTimeRemainingInMinutes")
            Either
  String
  (Maybe AutoMLOverrideStrategy
   -> Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe AutoMLOverrideStrategy)
-> Either
     String
     (Maybe EvaluationParameters
      -> Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe AutoMLOverrideStrategy)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"AutoMLOverrideStrategy")
            Either
  String
  (Maybe EvaluationParameters
   -> Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe EvaluationParameters)
-> Either
     String
     (Maybe InputDataConfig
      -> Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe EvaluationParameters)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"EvaluationParameters")
            Either
  String
  (Maybe InputDataConfig
   -> Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe InputDataConfig)
-> Either
     String
     (Maybe Text
      -> Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe InputDataConfig)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"InputDataConfig")
            Either
  String
  (Maybe Text
   -> Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe FeaturizationConfig
      -> Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => 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
"PredictorName")
            Either
  String
  (Maybe FeaturizationConfig
   -> Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe FeaturizationConfig)
-> Either
     String
     (Maybe EncryptionConfig
      -> Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe FeaturizationConfig)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"FeaturizationConfig")
            Either
  String
  (Maybe EncryptionConfig
   -> Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe EncryptionConfig)
-> Either
     String
     (Maybe (NonEmpty Text)
      -> Maybe Text
      -> Maybe Bool
      -> Maybe POSIX
      -> Int
      -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe EncryptionConfig)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"EncryptionConfig")
            Either
  String
  (Maybe (NonEmpty Text)
   -> Maybe Text
   -> Maybe Bool
   -> Maybe POSIX
   -> Int
   -> DescribePredictorResponse)
-> Either String (Maybe (NonEmpty Text))
-> Either
     String
     (Maybe Text
      -> Maybe Bool -> Maybe POSIX -> Int -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe (NonEmpty Text))
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"ForecastTypes")
            Either
  String
  (Maybe Text
   -> Maybe Bool -> Maybe POSIX -> Int -> DescribePredictorResponse)
-> Either String (Maybe Text)
-> Either
     String
     (Maybe Bool -> Maybe POSIX -> Int -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => 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
"Message")
            Either
  String
  (Maybe Bool -> Maybe POSIX -> Int -> DescribePredictorResponse)
-> Either String (Maybe Bool)
-> Either String (Maybe POSIX -> Int -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe Bool)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"PerformHPO")
            Either String (Maybe POSIX -> Int -> DescribePredictorResponse)
-> Either String (Maybe POSIX)
-> Either String (Int -> DescribePredictorResponse)
forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x Object -> Text -> Either String (Maybe POSIX)
forall a. FromJSON a => Object -> Text -> Either String (Maybe a)
Core..?> Text
"LastModificationTime")
            Either String (Int -> DescribePredictorResponse)
-> Either String Int -> Either String DescribePredictorResponse
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))
      )

instance Prelude.Hashable DescribePredictor

instance Prelude.NFData DescribePredictor

instance Core.ToHeaders DescribePredictor where
  toHeaders :: DescribePredictor -> ResponseHeaders
toHeaders =
    ResponseHeaders -> DescribePredictor -> 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
"AmazonForecast.DescribePredictor" ::
                          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 DescribePredictor where
  toJSON :: DescribePredictor -> Value
toJSON DescribePredictor' {Text
predictorArn :: Text
$sel:predictorArn:DescribePredictor' :: DescribePredictor -> Text
..} =
    [Pair] -> Value
Core.object
      ( [Maybe Pair] -> [Pair]
forall a. [Maybe a] -> [a]
Prelude.catMaybes
          [Pair -> Maybe Pair
forall a. a -> Maybe a
Prelude.Just (Text
"PredictorArn" Text -> Text -> Pair
forall kv v. (KeyValue kv, ToJSON v) => Text -> v -> kv
Core..= Text
predictorArn)]
      )

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

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

-- | /See:/ 'newDescribePredictorResponse' smart constructor.
data DescribePredictorResponse = DescribePredictorResponse'
  { -- | When the model training task was created.
    DescribePredictorResponse -> Maybe POSIX
creationTime :: Prelude.Maybe Core.POSIX,
    -- | The number of time-steps of the forecast. The forecast horizon is also
    -- called the prediction length.
    DescribePredictorResponse -> Maybe Int
forecastHorizon :: Prelude.Maybe Prelude.Int,
    -- | The status of the predictor. States include:
    --
    -- -   @ACTIVE@
    --
    -- -   @CREATE_PENDING@, @CREATE_IN_PROGRESS@, @CREATE_FAILED@
    --
    -- -   @DELETE_PENDING@, @DELETE_IN_PROGRESS@, @DELETE_FAILED@
    --
    -- -   @CREATE_STOPPING@, @CREATE_STOPPED@
    --
    -- The @Status@ of the predictor must be @ACTIVE@ before you can use the
    -- predictor to create a forecast.
    DescribePredictorResponse -> Maybe Text
status :: Prelude.Maybe Prelude.Text,
    -- | Whether the predictor is set to perform AutoML.
    DescribePredictorResponse -> Maybe Bool
performAutoML :: Prelude.Maybe Prelude.Bool,
    -- | When @PerformAutoML@ is specified, the ARN of the chosen algorithm.
    DescribePredictorResponse -> Maybe [Text]
autoMLAlgorithmArns :: Prelude.Maybe [Prelude.Text],
    -- | The default training parameters or overrides selected during model
    -- training. When running AutoML or choosing HPO with CNN-QR or DeepAR+,
    -- the optimized values for the chosen hyperparameters are returned. For
    -- more information, see aws-forecast-choosing-recipes.
    DescribePredictorResponse -> Maybe (HashMap Text Text)
trainingParameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),
    -- | The Amazon Resource Name (ARN) of the algorithm used for model training.
    DescribePredictorResponse -> Maybe Text
algorithmArn :: Prelude.Maybe Prelude.Text,
    -- | The hyperparameter override values for the algorithm.
    DescribePredictorResponse -> Maybe HyperParameterTuningJobConfig
hPOConfig :: Prelude.Maybe HyperParameterTuningJobConfig,
    -- | The ARN of the predictor.
    DescribePredictorResponse -> Maybe Text
predictorArn :: Prelude.Maybe Prelude.Text,
    -- | The accuracy metric used to optimize the predictor.
    DescribePredictorResponse -> Maybe OptimizationMetric
optimizationMetric :: Prelude.Maybe OptimizationMetric,
    -- | Details on the the status and results of the backtests performed to
    -- evaluate the accuracy of the predictor. You specify the number of
    -- backtests to perform when you call the operation.
    DescribePredictorResponse -> Maybe PredictorExecutionDetails
predictorExecutionDetails :: Prelude.Maybe PredictorExecutionDetails,
    -- | An array of the ARNs of the dataset import jobs used to import training
    -- data for the predictor.
    DescribePredictorResponse -> Maybe [Text]
datasetImportJobArns :: Prelude.Maybe [Prelude.Text],
    -- | The estimated time remaining in minutes for the predictor training job
    -- to complete.
    DescribePredictorResponse -> Maybe Integer
estimatedTimeRemainingInMinutes :: Prelude.Maybe Prelude.Integer,
    -- | The @LatencyOptimized@ AutoML override strategy is only available in
    -- private beta. Contact AWS Support or your account manager to learn more
    -- about access privileges.
    --
    -- The AutoML strategy used to train the predictor. Unless
    -- @LatencyOptimized@ is specified, the AutoML strategy optimizes predictor
    -- accuracy.
    --
    -- This parameter is only valid for predictors trained using AutoML.
    DescribePredictorResponse -> Maybe AutoMLOverrideStrategy
autoMLOverrideStrategy :: Prelude.Maybe AutoMLOverrideStrategy,
    -- | Used to override the default evaluation parameters of the specified
    -- algorithm. Amazon Forecast evaluates a predictor by splitting a dataset
    -- into training data and testing data. The evaluation parameters define
    -- how to perform the split and the number of iterations.
    DescribePredictorResponse -> Maybe EvaluationParameters
evaluationParameters :: Prelude.Maybe EvaluationParameters,
    -- | Describes the dataset group that contains the data to use to train the
    -- predictor.
    DescribePredictorResponse -> Maybe InputDataConfig
inputDataConfig :: Prelude.Maybe InputDataConfig,
    -- | The name of the predictor.
    DescribePredictorResponse -> Maybe Text
predictorName :: Prelude.Maybe Prelude.Text,
    -- | The featurization configuration.
    DescribePredictorResponse -> Maybe FeaturizationConfig
featurizationConfig :: Prelude.Maybe FeaturizationConfig,
    -- | An AWS Key Management Service (KMS) key and the AWS Identity and Access
    -- Management (IAM) role that Amazon Forecast can assume to access the key.
    DescribePredictorResponse -> Maybe EncryptionConfig
encryptionConfig :: Prelude.Maybe EncryptionConfig,
    -- | The forecast types used during predictor training. Default value is
    -- @[\"0.1\",\"0.5\",\"0.9\"]@
    DescribePredictorResponse -> Maybe (NonEmpty Text)
forecastTypes :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),
    -- | If an error occurred, an informational message about the error.
    DescribePredictorResponse -> Maybe Text
message :: Prelude.Maybe Prelude.Text,
    -- | Whether the predictor is set to perform hyperparameter optimization
    -- (HPO).
    DescribePredictorResponse -> Maybe Bool
performHPO :: Prelude.Maybe Prelude.Bool,
    -- | The last time the resource was modified. The timestamp depends on the
    -- status of the job:
    --
    -- -   @CREATE_PENDING@ - The @CreationTime@.
    --
    -- -   @CREATE_IN_PROGRESS@ - The current timestamp.
    --
    -- -   @CREATE_STOPPING@ - The current timestamp.
    --
    -- -   @CREATE_STOPPED@ - When the job stopped.
    --
    -- -   @ACTIVE@ or @CREATE_FAILED@ - When the job finished or failed.
    DescribePredictorResponse -> Maybe POSIX
lastModificationTime :: Prelude.Maybe Core.POSIX,
    -- | The response's http status code.
    DescribePredictorResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (DescribePredictorResponse -> DescribePredictorResponse -> Bool
(DescribePredictorResponse -> DescribePredictorResponse -> Bool)
-> (DescribePredictorResponse -> DescribePredictorResponse -> Bool)
-> Eq DescribePredictorResponse
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: DescribePredictorResponse -> DescribePredictorResponse -> Bool
$c/= :: DescribePredictorResponse -> DescribePredictorResponse -> Bool
== :: DescribePredictorResponse -> DescribePredictorResponse -> Bool
$c== :: DescribePredictorResponse -> DescribePredictorResponse -> Bool
Prelude.Eq, ReadPrec [DescribePredictorResponse]
ReadPrec DescribePredictorResponse
Int -> ReadS DescribePredictorResponse
ReadS [DescribePredictorResponse]
(Int -> ReadS DescribePredictorResponse)
-> ReadS [DescribePredictorResponse]
-> ReadPrec DescribePredictorResponse
-> ReadPrec [DescribePredictorResponse]
-> Read DescribePredictorResponse
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [DescribePredictorResponse]
$creadListPrec :: ReadPrec [DescribePredictorResponse]
readPrec :: ReadPrec DescribePredictorResponse
$creadPrec :: ReadPrec DescribePredictorResponse
readList :: ReadS [DescribePredictorResponse]
$creadList :: ReadS [DescribePredictorResponse]
readsPrec :: Int -> ReadS DescribePredictorResponse
$creadsPrec :: Int -> ReadS DescribePredictorResponse
Prelude.Read, Int -> DescribePredictorResponse -> ShowS
[DescribePredictorResponse] -> ShowS
DescribePredictorResponse -> String
(Int -> DescribePredictorResponse -> ShowS)
-> (DescribePredictorResponse -> String)
-> ([DescribePredictorResponse] -> ShowS)
-> Show DescribePredictorResponse
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [DescribePredictorResponse] -> ShowS
$cshowList :: [DescribePredictorResponse] -> ShowS
show :: DescribePredictorResponse -> String
$cshow :: DescribePredictorResponse -> String
showsPrec :: Int -> DescribePredictorResponse -> ShowS
$cshowsPrec :: Int -> DescribePredictorResponse -> ShowS
Prelude.Show, (forall x.
 DescribePredictorResponse -> Rep DescribePredictorResponse x)
-> (forall x.
    Rep DescribePredictorResponse x -> DescribePredictorResponse)
-> Generic DescribePredictorResponse
forall x.
Rep DescribePredictorResponse x -> DescribePredictorResponse
forall x.
DescribePredictorResponse -> Rep DescribePredictorResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep DescribePredictorResponse x -> DescribePredictorResponse
$cfrom :: forall x.
DescribePredictorResponse -> Rep DescribePredictorResponse x
Prelude.Generic)

-- |
-- Create a value of 'DescribePredictorResponse' 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:
--
-- 'creationTime', 'describePredictorResponse_creationTime' - When the model training task was created.
--
-- 'forecastHorizon', 'describePredictorResponse_forecastHorizon' - The number of time-steps of the forecast. The forecast horizon is also
-- called the prediction length.
--
-- 'status', 'describePredictorResponse_status' - The status of the predictor. States include:
--
-- -   @ACTIVE@
--
-- -   @CREATE_PENDING@, @CREATE_IN_PROGRESS@, @CREATE_FAILED@
--
-- -   @DELETE_PENDING@, @DELETE_IN_PROGRESS@, @DELETE_FAILED@
--
-- -   @CREATE_STOPPING@, @CREATE_STOPPED@
--
-- The @Status@ of the predictor must be @ACTIVE@ before you can use the
-- predictor to create a forecast.
--
-- 'performAutoML', 'describePredictorResponse_performAutoML' - Whether the predictor is set to perform AutoML.
--
-- 'autoMLAlgorithmArns', 'describePredictorResponse_autoMLAlgorithmArns' - When @PerformAutoML@ is specified, the ARN of the chosen algorithm.
--
-- 'trainingParameters', 'describePredictorResponse_trainingParameters' - The default training parameters or overrides selected during model
-- training. When running AutoML or choosing HPO with CNN-QR or DeepAR+,
-- the optimized values for the chosen hyperparameters are returned. For
-- more information, see aws-forecast-choosing-recipes.
--
-- 'algorithmArn', 'describePredictorResponse_algorithmArn' - The Amazon Resource Name (ARN) of the algorithm used for model training.
--
-- 'hPOConfig', 'describePredictorResponse_hPOConfig' - The hyperparameter override values for the algorithm.
--
-- 'predictorArn', 'describePredictorResponse_predictorArn' - The ARN of the predictor.
--
-- 'optimizationMetric', 'describePredictorResponse_optimizationMetric' - The accuracy metric used to optimize the predictor.
--
-- 'predictorExecutionDetails', 'describePredictorResponse_predictorExecutionDetails' - Details on the the status and results of the backtests performed to
-- evaluate the accuracy of the predictor. You specify the number of
-- backtests to perform when you call the operation.
--
-- 'datasetImportJobArns', 'describePredictorResponse_datasetImportJobArns' - An array of the ARNs of the dataset import jobs used to import training
-- data for the predictor.
--
-- 'estimatedTimeRemainingInMinutes', 'describePredictorResponse_estimatedTimeRemainingInMinutes' - The estimated time remaining in minutes for the predictor training job
-- to complete.
--
-- 'autoMLOverrideStrategy', 'describePredictorResponse_autoMLOverrideStrategy' - The @LatencyOptimized@ AutoML override strategy is only available in
-- private beta. Contact AWS Support or your account manager to learn more
-- about access privileges.
--
-- The AutoML strategy used to train the predictor. Unless
-- @LatencyOptimized@ is specified, the AutoML strategy optimizes predictor
-- accuracy.
--
-- This parameter is only valid for predictors trained using AutoML.
--
-- 'evaluationParameters', 'describePredictorResponse_evaluationParameters' - Used to override the default evaluation parameters of the specified
-- algorithm. Amazon Forecast evaluates a predictor by splitting a dataset
-- into training data and testing data. The evaluation parameters define
-- how to perform the split and the number of iterations.
--
-- 'inputDataConfig', 'describePredictorResponse_inputDataConfig' - Describes the dataset group that contains the data to use to train the
-- predictor.
--
-- 'predictorName', 'describePredictorResponse_predictorName' - The name of the predictor.
--
-- 'featurizationConfig', 'describePredictorResponse_featurizationConfig' - The featurization configuration.
--
-- 'encryptionConfig', 'describePredictorResponse_encryptionConfig' - An AWS Key Management Service (KMS) key and the AWS Identity and Access
-- Management (IAM) role that Amazon Forecast can assume to access the key.
--
-- 'forecastTypes', 'describePredictorResponse_forecastTypes' - The forecast types used during predictor training. Default value is
-- @[\"0.1\",\"0.5\",\"0.9\"]@
--
-- 'message', 'describePredictorResponse_message' - If an error occurred, an informational message about the error.
--
-- 'performHPO', 'describePredictorResponse_performHPO' - Whether the predictor is set to perform hyperparameter optimization
-- (HPO).
--
-- 'lastModificationTime', 'describePredictorResponse_lastModificationTime' - The last time the resource was modified. The timestamp depends on the
-- status of the job:
--
-- -   @CREATE_PENDING@ - The @CreationTime@.
--
-- -   @CREATE_IN_PROGRESS@ - The current timestamp.
--
-- -   @CREATE_STOPPING@ - The current timestamp.
--
-- -   @CREATE_STOPPED@ - When the job stopped.
--
-- -   @ACTIVE@ or @CREATE_FAILED@ - When the job finished or failed.
--
-- 'httpStatus', 'describePredictorResponse_httpStatus' - The response's http status code.
newDescribePredictorResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  DescribePredictorResponse
newDescribePredictorResponse :: Int -> DescribePredictorResponse
newDescribePredictorResponse Int
pHttpStatus_ =
  DescribePredictorResponse' :: Maybe POSIX
-> Maybe Int
-> Maybe Text
-> Maybe Bool
-> Maybe [Text]
-> Maybe (HashMap Text Text)
-> Maybe Text
-> Maybe HyperParameterTuningJobConfig
-> Maybe Text
-> Maybe OptimizationMetric
-> Maybe PredictorExecutionDetails
-> Maybe [Text]
-> Maybe Integer
-> Maybe AutoMLOverrideStrategy
-> Maybe EvaluationParameters
-> Maybe InputDataConfig
-> Maybe Text
-> Maybe FeaturizationConfig
-> Maybe EncryptionConfig
-> Maybe (NonEmpty Text)
-> Maybe Text
-> Maybe Bool
-> Maybe POSIX
-> Int
-> DescribePredictorResponse
DescribePredictorResponse'
    { $sel:creationTime:DescribePredictorResponse' :: Maybe POSIX
creationTime =
        Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
      $sel:forecastHorizon:DescribePredictorResponse' :: Maybe Int
forecastHorizon = Maybe Int
forall a. Maybe a
Prelude.Nothing,
      $sel:status:DescribePredictorResponse' :: Maybe Text
status = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:performAutoML:DescribePredictorResponse' :: Maybe Bool
performAutoML = Maybe Bool
forall a. Maybe a
Prelude.Nothing,
      $sel:autoMLAlgorithmArns:DescribePredictorResponse' :: Maybe [Text]
autoMLAlgorithmArns = Maybe [Text]
forall a. Maybe a
Prelude.Nothing,
      $sel:trainingParameters:DescribePredictorResponse' :: Maybe (HashMap Text Text)
trainingParameters = Maybe (HashMap Text Text)
forall a. Maybe a
Prelude.Nothing,
      $sel:algorithmArn:DescribePredictorResponse' :: Maybe Text
algorithmArn = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:hPOConfig:DescribePredictorResponse' :: Maybe HyperParameterTuningJobConfig
hPOConfig = Maybe HyperParameterTuningJobConfig
forall a. Maybe a
Prelude.Nothing,
      $sel:predictorArn:DescribePredictorResponse' :: Maybe Text
predictorArn = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:optimizationMetric:DescribePredictorResponse' :: Maybe OptimizationMetric
optimizationMetric = Maybe OptimizationMetric
forall a. Maybe a
Prelude.Nothing,
      $sel:predictorExecutionDetails:DescribePredictorResponse' :: Maybe PredictorExecutionDetails
predictorExecutionDetails = Maybe PredictorExecutionDetails
forall a. Maybe a
Prelude.Nothing,
      $sel:datasetImportJobArns:DescribePredictorResponse' :: Maybe [Text]
datasetImportJobArns = Maybe [Text]
forall a. Maybe a
Prelude.Nothing,
      $sel:estimatedTimeRemainingInMinutes:DescribePredictorResponse' :: Maybe Integer
estimatedTimeRemainingInMinutes =
        Maybe Integer
forall a. Maybe a
Prelude.Nothing,
      $sel:autoMLOverrideStrategy:DescribePredictorResponse' :: Maybe AutoMLOverrideStrategy
autoMLOverrideStrategy = Maybe AutoMLOverrideStrategy
forall a. Maybe a
Prelude.Nothing,
      $sel:evaluationParameters:DescribePredictorResponse' :: Maybe EvaluationParameters
evaluationParameters = Maybe EvaluationParameters
forall a. Maybe a
Prelude.Nothing,
      $sel:inputDataConfig:DescribePredictorResponse' :: Maybe InputDataConfig
inputDataConfig = Maybe InputDataConfig
forall a. Maybe a
Prelude.Nothing,
      $sel:predictorName:DescribePredictorResponse' :: Maybe Text
predictorName = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:featurizationConfig:DescribePredictorResponse' :: Maybe FeaturizationConfig
featurizationConfig = Maybe FeaturizationConfig
forall a. Maybe a
Prelude.Nothing,
      $sel:encryptionConfig:DescribePredictorResponse' :: Maybe EncryptionConfig
encryptionConfig = Maybe EncryptionConfig
forall a. Maybe a
Prelude.Nothing,
      $sel:forecastTypes:DescribePredictorResponse' :: Maybe (NonEmpty Text)
forecastTypes = Maybe (NonEmpty Text)
forall a. Maybe a
Prelude.Nothing,
      $sel:message:DescribePredictorResponse' :: Maybe Text
message = Maybe Text
forall a. Maybe a
Prelude.Nothing,
      $sel:performHPO:DescribePredictorResponse' :: Maybe Bool
performHPO = Maybe Bool
forall a. Maybe a
Prelude.Nothing,
      $sel:lastModificationTime:DescribePredictorResponse' :: Maybe POSIX
lastModificationTime = Maybe POSIX
forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:DescribePredictorResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | When the model training task was created.
describePredictorResponse_creationTime :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.UTCTime)
describePredictorResponse_creationTime :: (Maybe UTCTime -> f (Maybe UTCTime))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_creationTime = (DescribePredictorResponse -> Maybe POSIX)
-> (DescribePredictorResponse
    -> Maybe POSIX -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe POSIX)
     (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe POSIX
creationTime :: Maybe POSIX
$sel:creationTime:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe POSIX
creationTime} -> Maybe POSIX
creationTime) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe POSIX
a -> DescribePredictorResponse
s {$sel:creationTime:DescribePredictorResponse' :: Maybe POSIX
creationTime = Maybe POSIX
a} :: DescribePredictorResponse) ((Maybe POSIX -> f (Maybe POSIX))
 -> DescribePredictorResponse -> f DescribePredictorResponse)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
    -> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> DescribePredictorResponse
-> f DescribePredictorResponse
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 number of time-steps of the forecast. The forecast horizon is also
-- called the prediction length.
describePredictorResponse_forecastHorizon :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Int)
describePredictorResponse_forecastHorizon :: (Maybe Int -> f (Maybe Int))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_forecastHorizon = (DescribePredictorResponse -> Maybe Int)
-> (DescribePredictorResponse
    -> Maybe Int -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Int)
     (Maybe Int)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Int
forecastHorizon :: Maybe Int
$sel:forecastHorizon:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Int
forecastHorizon} -> Maybe Int
forecastHorizon) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Int
a -> DescribePredictorResponse
s {$sel:forecastHorizon:DescribePredictorResponse' :: Maybe Int
forecastHorizon = Maybe Int
a} :: DescribePredictorResponse)

-- | The status of the predictor. States include:
--
-- -   @ACTIVE@
--
-- -   @CREATE_PENDING@, @CREATE_IN_PROGRESS@, @CREATE_FAILED@
--
-- -   @DELETE_PENDING@, @DELETE_IN_PROGRESS@, @DELETE_FAILED@
--
-- -   @CREATE_STOPPING@, @CREATE_STOPPED@
--
-- The @Status@ of the predictor must be @ACTIVE@ before you can use the
-- predictor to create a forecast.
describePredictorResponse_status :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Text)
describePredictorResponse_status :: (Maybe Text -> f (Maybe Text))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_status = (DescribePredictorResponse -> Maybe Text)
-> (DescribePredictorResponse
    -> Maybe Text -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Text
status :: Maybe Text
$sel:status:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Text
status} -> Maybe Text
status) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Text
a -> DescribePredictorResponse
s {$sel:status:DescribePredictorResponse' :: Maybe Text
status = Maybe Text
a} :: DescribePredictorResponse)

-- | Whether the predictor is set to perform AutoML.
describePredictorResponse_performAutoML :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Bool)
describePredictorResponse_performAutoML :: (Maybe Bool -> f (Maybe Bool))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_performAutoML = (DescribePredictorResponse -> Maybe Bool)
-> (DescribePredictorResponse
    -> Maybe Bool -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Bool)
     (Maybe Bool)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Bool
performAutoML :: Maybe Bool
$sel:performAutoML:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Bool
performAutoML} -> Maybe Bool
performAutoML) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Bool
a -> DescribePredictorResponse
s {$sel:performAutoML:DescribePredictorResponse' :: Maybe Bool
performAutoML = Maybe Bool
a} :: DescribePredictorResponse)

-- | When @PerformAutoML@ is specified, the ARN of the chosen algorithm.
describePredictorResponse_autoMLAlgorithmArns :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe [Prelude.Text])
describePredictorResponse_autoMLAlgorithmArns :: (Maybe [Text] -> f (Maybe [Text]))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_autoMLAlgorithmArns = (DescribePredictorResponse -> Maybe [Text])
-> (DescribePredictorResponse
    -> Maybe [Text] -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe [Text])
     (Maybe [Text])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe [Text]
autoMLAlgorithmArns :: Maybe [Text]
$sel:autoMLAlgorithmArns:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe [Text]
autoMLAlgorithmArns} -> Maybe [Text]
autoMLAlgorithmArns) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe [Text]
a -> DescribePredictorResponse
s {$sel:autoMLAlgorithmArns:DescribePredictorResponse' :: Maybe [Text]
autoMLAlgorithmArns = Maybe [Text]
a} :: DescribePredictorResponse) ((Maybe [Text] -> f (Maybe [Text]))
 -> DescribePredictorResponse -> f DescribePredictorResponse)
-> ((Maybe [Text] -> f (Maybe [Text]))
    -> Maybe [Text] -> f (Maybe [Text]))
-> (Maybe [Text] -> f (Maybe [Text]))
-> DescribePredictorResponse
-> f DescribePredictorResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso [Text] [Text] [Text] [Text]
-> Iso (Maybe [Text]) (Maybe [Text]) (Maybe [Text]) (Maybe [Text])
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 [Text] [Text] [Text] [Text]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | The default training parameters or overrides selected during model
-- training. When running AutoML or choosing HPO with CNN-QR or DeepAR+,
-- the optimized values for the chosen hyperparameters are returned. For
-- more information, see aws-forecast-choosing-recipes.
describePredictorResponse_trainingParameters :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))
describePredictorResponse_trainingParameters :: (Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_trainingParameters = (DescribePredictorResponse -> Maybe (HashMap Text Text))
-> (DescribePredictorResponse
    -> Maybe (HashMap Text Text) -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe (HashMap Text Text))
     (Maybe (HashMap Text Text))
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe (HashMap Text Text)
trainingParameters :: Maybe (HashMap Text Text)
$sel:trainingParameters:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe (HashMap Text Text)
trainingParameters} -> Maybe (HashMap Text Text)
trainingParameters) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe (HashMap Text Text)
a -> DescribePredictorResponse
s {$sel:trainingParameters:DescribePredictorResponse' :: Maybe (HashMap Text Text)
trainingParameters = Maybe (HashMap Text Text)
a} :: DescribePredictorResponse) ((Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
 -> DescribePredictorResponse -> f DescribePredictorResponse)
-> ((Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
    -> Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> (Maybe (HashMap Text Text) -> f (Maybe (HashMap Text Text)))
-> DescribePredictorResponse
-> f DescribePredictorResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
  (HashMap Text Text)
  (HashMap Text Text)
  (HashMap Text Text)
  (HashMap Text Text)
-> Iso
     (Maybe (HashMap Text Text))
     (Maybe (HashMap Text Text))
     (Maybe (HashMap Text Text))
     (Maybe (HashMap Text Text))
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
  (HashMap Text Text)
  (HashMap Text Text)
  (HashMap Text Text)
  (HashMap Text Text)
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | The Amazon Resource Name (ARN) of the algorithm used for model training.
describePredictorResponse_algorithmArn :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Text)
describePredictorResponse_algorithmArn :: (Maybe Text -> f (Maybe Text))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_algorithmArn = (DescribePredictorResponse -> Maybe Text)
-> (DescribePredictorResponse
    -> Maybe Text -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Text
algorithmArn :: Maybe Text
$sel:algorithmArn:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Text
algorithmArn} -> Maybe Text
algorithmArn) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Text
a -> DescribePredictorResponse
s {$sel:algorithmArn:DescribePredictorResponse' :: Maybe Text
algorithmArn = Maybe Text
a} :: DescribePredictorResponse)

-- | The hyperparameter override values for the algorithm.
describePredictorResponse_hPOConfig :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe HyperParameterTuningJobConfig)
describePredictorResponse_hPOConfig :: (Maybe HyperParameterTuningJobConfig
 -> f (Maybe HyperParameterTuningJobConfig))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_hPOConfig = (DescribePredictorResponse -> Maybe HyperParameterTuningJobConfig)
-> (DescribePredictorResponse
    -> Maybe HyperParameterTuningJobConfig
    -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe HyperParameterTuningJobConfig)
     (Maybe HyperParameterTuningJobConfig)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe HyperParameterTuningJobConfig
hPOConfig :: Maybe HyperParameterTuningJobConfig
$sel:hPOConfig:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe HyperParameterTuningJobConfig
hPOConfig} -> Maybe HyperParameterTuningJobConfig
hPOConfig) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe HyperParameterTuningJobConfig
a -> DescribePredictorResponse
s {$sel:hPOConfig:DescribePredictorResponse' :: Maybe HyperParameterTuningJobConfig
hPOConfig = Maybe HyperParameterTuningJobConfig
a} :: DescribePredictorResponse)

-- | The ARN of the predictor.
describePredictorResponse_predictorArn :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Text)
describePredictorResponse_predictorArn :: (Maybe Text -> f (Maybe Text))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_predictorArn = (DescribePredictorResponse -> Maybe Text)
-> (DescribePredictorResponse
    -> Maybe Text -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Text
predictorArn :: Maybe Text
$sel:predictorArn:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Text
predictorArn} -> Maybe Text
predictorArn) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Text
a -> DescribePredictorResponse
s {$sel:predictorArn:DescribePredictorResponse' :: Maybe Text
predictorArn = Maybe Text
a} :: DescribePredictorResponse)

-- | The accuracy metric used to optimize the predictor.
describePredictorResponse_optimizationMetric :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe OptimizationMetric)
describePredictorResponse_optimizationMetric :: (Maybe OptimizationMetric -> f (Maybe OptimizationMetric))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_optimizationMetric = (DescribePredictorResponse -> Maybe OptimizationMetric)
-> (DescribePredictorResponse
    -> Maybe OptimizationMetric -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe OptimizationMetric)
     (Maybe OptimizationMetric)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe OptimizationMetric
optimizationMetric :: Maybe OptimizationMetric
$sel:optimizationMetric:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe OptimizationMetric
optimizationMetric} -> Maybe OptimizationMetric
optimizationMetric) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe OptimizationMetric
a -> DescribePredictorResponse
s {$sel:optimizationMetric:DescribePredictorResponse' :: Maybe OptimizationMetric
optimizationMetric = Maybe OptimizationMetric
a} :: DescribePredictorResponse)

-- | Details on the the status and results of the backtests performed to
-- evaluate the accuracy of the predictor. You specify the number of
-- backtests to perform when you call the operation.
describePredictorResponse_predictorExecutionDetails :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe PredictorExecutionDetails)
describePredictorResponse_predictorExecutionDetails :: (Maybe PredictorExecutionDetails
 -> f (Maybe PredictorExecutionDetails))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_predictorExecutionDetails = (DescribePredictorResponse -> Maybe PredictorExecutionDetails)
-> (DescribePredictorResponse
    -> Maybe PredictorExecutionDetails -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe PredictorExecutionDetails)
     (Maybe PredictorExecutionDetails)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe PredictorExecutionDetails
predictorExecutionDetails :: Maybe PredictorExecutionDetails
$sel:predictorExecutionDetails:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe PredictorExecutionDetails
predictorExecutionDetails} -> Maybe PredictorExecutionDetails
predictorExecutionDetails) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe PredictorExecutionDetails
a -> DescribePredictorResponse
s {$sel:predictorExecutionDetails:DescribePredictorResponse' :: Maybe PredictorExecutionDetails
predictorExecutionDetails = Maybe PredictorExecutionDetails
a} :: DescribePredictorResponse)

-- | An array of the ARNs of the dataset import jobs used to import training
-- data for the predictor.
describePredictorResponse_datasetImportJobArns :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe [Prelude.Text])
describePredictorResponse_datasetImportJobArns :: (Maybe [Text] -> f (Maybe [Text]))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_datasetImportJobArns = (DescribePredictorResponse -> Maybe [Text])
-> (DescribePredictorResponse
    -> Maybe [Text] -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe [Text])
     (Maybe [Text])
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe [Text]
datasetImportJobArns :: Maybe [Text]
$sel:datasetImportJobArns:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe [Text]
datasetImportJobArns} -> Maybe [Text]
datasetImportJobArns) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe [Text]
a -> DescribePredictorResponse
s {$sel:datasetImportJobArns:DescribePredictorResponse' :: Maybe [Text]
datasetImportJobArns = Maybe [Text]
a} :: DescribePredictorResponse) ((Maybe [Text] -> f (Maybe [Text]))
 -> DescribePredictorResponse -> f DescribePredictorResponse)
-> ((Maybe [Text] -> f (Maybe [Text]))
    -> Maybe [Text] -> f (Maybe [Text]))
-> (Maybe [Text] -> f (Maybe [Text]))
-> DescribePredictorResponse
-> f DescribePredictorResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso [Text] [Text] [Text] [Text]
-> Iso (Maybe [Text]) (Maybe [Text]) (Maybe [Text]) (Maybe [Text])
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 [Text] [Text] [Text] [Text]
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | The estimated time remaining in minutes for the predictor training job
-- to complete.
describePredictorResponse_estimatedTimeRemainingInMinutes :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Integer)
describePredictorResponse_estimatedTimeRemainingInMinutes :: (Maybe Integer -> f (Maybe Integer))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_estimatedTimeRemainingInMinutes = (DescribePredictorResponse -> Maybe Integer)
-> (DescribePredictorResponse
    -> Maybe Integer -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Integer)
     (Maybe Integer)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Integer
estimatedTimeRemainingInMinutes :: Maybe Integer
$sel:estimatedTimeRemainingInMinutes:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Integer
estimatedTimeRemainingInMinutes} -> Maybe Integer
estimatedTimeRemainingInMinutes) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Integer
a -> DescribePredictorResponse
s {$sel:estimatedTimeRemainingInMinutes:DescribePredictorResponse' :: Maybe Integer
estimatedTimeRemainingInMinutes = Maybe Integer
a} :: DescribePredictorResponse)

-- | The @LatencyOptimized@ AutoML override strategy is only available in
-- private beta. Contact AWS Support or your account manager to learn more
-- about access privileges.
--
-- The AutoML strategy used to train the predictor. Unless
-- @LatencyOptimized@ is specified, the AutoML strategy optimizes predictor
-- accuracy.
--
-- This parameter is only valid for predictors trained using AutoML.
describePredictorResponse_autoMLOverrideStrategy :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe AutoMLOverrideStrategy)
describePredictorResponse_autoMLOverrideStrategy :: (Maybe AutoMLOverrideStrategy -> f (Maybe AutoMLOverrideStrategy))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_autoMLOverrideStrategy = (DescribePredictorResponse -> Maybe AutoMLOverrideStrategy)
-> (DescribePredictorResponse
    -> Maybe AutoMLOverrideStrategy -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe AutoMLOverrideStrategy)
     (Maybe AutoMLOverrideStrategy)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe AutoMLOverrideStrategy
autoMLOverrideStrategy :: Maybe AutoMLOverrideStrategy
$sel:autoMLOverrideStrategy:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe AutoMLOverrideStrategy
autoMLOverrideStrategy} -> Maybe AutoMLOverrideStrategy
autoMLOverrideStrategy) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe AutoMLOverrideStrategy
a -> DescribePredictorResponse
s {$sel:autoMLOverrideStrategy:DescribePredictorResponse' :: Maybe AutoMLOverrideStrategy
autoMLOverrideStrategy = Maybe AutoMLOverrideStrategy
a} :: DescribePredictorResponse)

-- | Used to override the default evaluation parameters of the specified
-- algorithm. Amazon Forecast evaluates a predictor by splitting a dataset
-- into training data and testing data. The evaluation parameters define
-- how to perform the split and the number of iterations.
describePredictorResponse_evaluationParameters :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe EvaluationParameters)
describePredictorResponse_evaluationParameters :: (Maybe EvaluationParameters -> f (Maybe EvaluationParameters))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_evaluationParameters = (DescribePredictorResponse -> Maybe EvaluationParameters)
-> (DescribePredictorResponse
    -> Maybe EvaluationParameters -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe EvaluationParameters)
     (Maybe EvaluationParameters)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe EvaluationParameters
evaluationParameters :: Maybe EvaluationParameters
$sel:evaluationParameters:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe EvaluationParameters
evaluationParameters} -> Maybe EvaluationParameters
evaluationParameters) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe EvaluationParameters
a -> DescribePredictorResponse
s {$sel:evaluationParameters:DescribePredictorResponse' :: Maybe EvaluationParameters
evaluationParameters = Maybe EvaluationParameters
a} :: DescribePredictorResponse)

-- | Describes the dataset group that contains the data to use to train the
-- predictor.
describePredictorResponse_inputDataConfig :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe InputDataConfig)
describePredictorResponse_inputDataConfig :: (Maybe InputDataConfig -> f (Maybe InputDataConfig))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_inputDataConfig = (DescribePredictorResponse -> Maybe InputDataConfig)
-> (DescribePredictorResponse
    -> Maybe InputDataConfig -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe InputDataConfig)
     (Maybe InputDataConfig)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe InputDataConfig
inputDataConfig :: Maybe InputDataConfig
$sel:inputDataConfig:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe InputDataConfig
inputDataConfig} -> Maybe InputDataConfig
inputDataConfig) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe InputDataConfig
a -> DescribePredictorResponse
s {$sel:inputDataConfig:DescribePredictorResponse' :: Maybe InputDataConfig
inputDataConfig = Maybe InputDataConfig
a} :: DescribePredictorResponse)

-- | The name of the predictor.
describePredictorResponse_predictorName :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Text)
describePredictorResponse_predictorName :: (Maybe Text -> f (Maybe Text))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_predictorName = (DescribePredictorResponse -> Maybe Text)
-> (DescribePredictorResponse
    -> Maybe Text -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Text
predictorName :: Maybe Text
$sel:predictorName:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Text
predictorName} -> Maybe Text
predictorName) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Text
a -> DescribePredictorResponse
s {$sel:predictorName:DescribePredictorResponse' :: Maybe Text
predictorName = Maybe Text
a} :: DescribePredictorResponse)

-- | The featurization configuration.
describePredictorResponse_featurizationConfig :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe FeaturizationConfig)
describePredictorResponse_featurizationConfig :: (Maybe FeaturizationConfig -> f (Maybe FeaturizationConfig))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_featurizationConfig = (DescribePredictorResponse -> Maybe FeaturizationConfig)
-> (DescribePredictorResponse
    -> Maybe FeaturizationConfig -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe FeaturizationConfig)
     (Maybe FeaturizationConfig)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe FeaturizationConfig
featurizationConfig :: Maybe FeaturizationConfig
$sel:featurizationConfig:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe FeaturizationConfig
featurizationConfig} -> Maybe FeaturizationConfig
featurizationConfig) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe FeaturizationConfig
a -> DescribePredictorResponse
s {$sel:featurizationConfig:DescribePredictorResponse' :: Maybe FeaturizationConfig
featurizationConfig = Maybe FeaturizationConfig
a} :: DescribePredictorResponse)

-- | An AWS Key Management Service (KMS) key and the AWS Identity and Access
-- Management (IAM) role that Amazon Forecast can assume to access the key.
describePredictorResponse_encryptionConfig :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe EncryptionConfig)
describePredictorResponse_encryptionConfig :: (Maybe EncryptionConfig -> f (Maybe EncryptionConfig))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_encryptionConfig = (DescribePredictorResponse -> Maybe EncryptionConfig)
-> (DescribePredictorResponse
    -> Maybe EncryptionConfig -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe EncryptionConfig)
     (Maybe EncryptionConfig)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe EncryptionConfig
encryptionConfig :: Maybe EncryptionConfig
$sel:encryptionConfig:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe EncryptionConfig
encryptionConfig} -> Maybe EncryptionConfig
encryptionConfig) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe EncryptionConfig
a -> DescribePredictorResponse
s {$sel:encryptionConfig:DescribePredictorResponse' :: Maybe EncryptionConfig
encryptionConfig = Maybe EncryptionConfig
a} :: DescribePredictorResponse)

-- | The forecast types used during predictor training. Default value is
-- @[\"0.1\",\"0.5\",\"0.9\"]@
describePredictorResponse_forecastTypes :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))
describePredictorResponse_forecastTypes :: (Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_forecastTypes = (DescribePredictorResponse -> Maybe (NonEmpty Text))
-> (DescribePredictorResponse
    -> Maybe (NonEmpty Text) -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe (NonEmpty Text))
     (Maybe (NonEmpty Text))
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe (NonEmpty Text)
forecastTypes :: Maybe (NonEmpty Text)
$sel:forecastTypes:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe (NonEmpty Text)
forecastTypes} -> Maybe (NonEmpty Text)
forecastTypes) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe (NonEmpty Text)
a -> DescribePredictorResponse
s {$sel:forecastTypes:DescribePredictorResponse' :: Maybe (NonEmpty Text)
forecastTypes = Maybe (NonEmpty Text)
a} :: DescribePredictorResponse) ((Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
 -> DescribePredictorResponse -> f DescribePredictorResponse)
-> ((Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
    -> Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> (Maybe (NonEmpty Text) -> f (Maybe (NonEmpty Text)))
-> DescribePredictorResponse
-> f DescribePredictorResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. AnIso
  (NonEmpty Text) (NonEmpty Text) (NonEmpty Text) (NonEmpty Text)
-> Iso
     (Maybe (NonEmpty Text))
     (Maybe (NonEmpty Text))
     (Maybe (NonEmpty Text))
     (Maybe (NonEmpty Text))
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
  (NonEmpty Text) (NonEmpty Text) (NonEmpty Text) (NonEmpty Text)
forall s t a b. (Coercible s a, Coercible t b) => Iso s t a b
Lens.coerced

-- | If an error occurred, an informational message about the error.
describePredictorResponse_message :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Text)
describePredictorResponse_message :: (Maybe Text -> f (Maybe Text))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_message = (DescribePredictorResponse -> Maybe Text)
-> (DescribePredictorResponse
    -> Maybe Text -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Text)
     (Maybe Text)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Text
message :: Maybe Text
$sel:message:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Text
message} -> Maybe Text
message) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Text
a -> DescribePredictorResponse
s {$sel:message:DescribePredictorResponse' :: Maybe Text
message = Maybe Text
a} :: DescribePredictorResponse)

-- | Whether the predictor is set to perform hyperparameter optimization
-- (HPO).
describePredictorResponse_performHPO :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.Bool)
describePredictorResponse_performHPO :: (Maybe Bool -> f (Maybe Bool))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_performHPO = (DescribePredictorResponse -> Maybe Bool)
-> (DescribePredictorResponse
    -> Maybe Bool -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe Bool)
     (Maybe Bool)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe Bool
performHPO :: Maybe Bool
$sel:performHPO:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe Bool
performHPO} -> Maybe Bool
performHPO) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe Bool
a -> DescribePredictorResponse
s {$sel:performHPO:DescribePredictorResponse' :: Maybe Bool
performHPO = Maybe Bool
a} :: DescribePredictorResponse)

-- | The last time the resource was modified. The timestamp depends on the
-- status of the job:
--
-- -   @CREATE_PENDING@ - The @CreationTime@.
--
-- -   @CREATE_IN_PROGRESS@ - The current timestamp.
--
-- -   @CREATE_STOPPING@ - The current timestamp.
--
-- -   @CREATE_STOPPED@ - When the job stopped.
--
-- -   @ACTIVE@ or @CREATE_FAILED@ - When the job finished or failed.
describePredictorResponse_lastModificationTime :: Lens.Lens' DescribePredictorResponse (Prelude.Maybe Prelude.UTCTime)
describePredictorResponse_lastModificationTime :: (Maybe UTCTime -> f (Maybe UTCTime))
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_lastModificationTime = (DescribePredictorResponse -> Maybe POSIX)
-> (DescribePredictorResponse
    -> Maybe POSIX -> DescribePredictorResponse)
-> Lens
     DescribePredictorResponse
     DescribePredictorResponse
     (Maybe POSIX)
     (Maybe POSIX)
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Maybe POSIX
lastModificationTime :: Maybe POSIX
$sel:lastModificationTime:DescribePredictorResponse' :: DescribePredictorResponse -> Maybe POSIX
lastModificationTime} -> Maybe POSIX
lastModificationTime) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Maybe POSIX
a -> DescribePredictorResponse
s {$sel:lastModificationTime:DescribePredictorResponse' :: Maybe POSIX
lastModificationTime = Maybe POSIX
a} :: DescribePredictorResponse) ((Maybe POSIX -> f (Maybe POSIX))
 -> DescribePredictorResponse -> f DescribePredictorResponse)
-> ((Maybe UTCTime -> f (Maybe UTCTime))
    -> Maybe POSIX -> f (Maybe POSIX))
-> (Maybe UTCTime -> f (Maybe UTCTime))
-> DescribePredictorResponse
-> f DescribePredictorResponse
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 response's http status code.
describePredictorResponse_httpStatus :: Lens.Lens' DescribePredictorResponse Prelude.Int
describePredictorResponse_httpStatus :: (Int -> f Int)
-> DescribePredictorResponse -> f DescribePredictorResponse
describePredictorResponse_httpStatus = (DescribePredictorResponse -> Int)
-> (DescribePredictorResponse -> Int -> DescribePredictorResponse)
-> Lens DescribePredictorResponse DescribePredictorResponse Int Int
forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\DescribePredictorResponse' {Int
httpStatus :: Int
$sel:httpStatus:DescribePredictorResponse' :: DescribePredictorResponse -> Int
httpStatus} -> Int
httpStatus) (\s :: DescribePredictorResponse
s@DescribePredictorResponse' {} Int
a -> DescribePredictorResponse
s {$sel:httpStatus:DescribePredictorResponse' :: Int
httpStatus = Int
a} :: DescribePredictorResponse)

instance Prelude.NFData DescribePredictorResponse