{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}

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

-- |
-- Module      : Amazonka.OpsWorks.Waiters
-- 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)
module Amazonka.OpsWorks.Waiters where

import qualified Amazonka.Core as Core
import qualified Amazonka.Lens as Lens
import Amazonka.OpsWorks.DescribeApps
import Amazonka.OpsWorks.DescribeDeployments
import Amazonka.OpsWorks.DescribeInstances
import Amazonka.OpsWorks.Lens
import Amazonka.OpsWorks.Types
import qualified Amazonka.Prelude as Prelude

-- | Polls 'Amazonka.OpsWorks.DescribeInstances' every 15 seconds until a successful state is reached. An error is returned after 40 failed checks.
newInstanceTerminated :: Core.Wait DescribeInstances
newInstanceTerminated :: Wait DescribeInstances
newInstanceTerminated =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"InstanceTerminated",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
15,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeInstances]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"terminated"
            Accept
Core.AcceptSuccess
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          ErrorCode -> Accept -> Acceptor DescribeInstances
forall a. ErrorCode -> Accept -> Acceptor a
Core.matchError
            ErrorCode
"ResourceNotFoundException"
            Accept
Core.AcceptSuccess,
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"booting"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"online"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"pending"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"rebooting"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"requested"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"running_setup"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"setup_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"start_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.OpsWorks.DescribeDeployments' every 15 seconds until a successful state is reached. An error is returned after 40 failed checks.
newDeploymentSuccessful :: Core.Wait DescribeDeployments
newDeploymentSuccessful :: Wait DescribeDeployments
newDeploymentSuccessful =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"DeploymentSuccessful",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
15,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeDeployments]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeDeployments) (CI Text)
-> Acceptor DescribeDeployments
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"successful"
            Accept
Core.AcceptSuccess
            ( (DescribeDeploymentsResponse -> [Deployment])
-> Fold DescribeDeploymentsResponse Deployment
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Deployment] DescribeDeploymentsResponse [Deployment]
-> DescribeDeploymentsResponse -> [Deployment]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment]))
-> DescribeDeploymentsResponse
-> Const [Deployment] DescribeDeploymentsResponse
Lens' DescribeDeploymentsResponse (Maybe [Deployment])
describeDeploymentsResponse_deployments
                        ((Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment]))
 -> DescribeDeploymentsResponse
 -> Const [Deployment] DescribeDeploymentsResponse)
-> (([Deployment] -> Const [Deployment] [Deployment])
    -> Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment]))
-> Getting [Deployment] DescribeDeploymentsResponse [Deployment]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Deployment] -> Const [Deployment] [Deployment])
-> Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Deployment -> f Deployment)
 -> DescribeDeploymentsResponse -> f DescribeDeploymentsResponse)
-> ((CI Text -> f (CI Text)) -> Deployment -> f Deployment)
-> (CI Text -> f (CI Text))
-> DescribeDeploymentsResponse
-> f DescribeDeploymentsResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Deployment -> f Deployment
Lens' Deployment (Maybe Text)
deployment_status
                ((Maybe Text -> f (Maybe Text)) -> Deployment -> f Deployment)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Deployment
-> f Deployment
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeDeployments) (CI Text)
-> Acceptor DescribeDeployments
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"failed"
            Accept
Core.AcceptFailure
            ( (DescribeDeploymentsResponse -> [Deployment])
-> Fold DescribeDeploymentsResponse Deployment
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Deployment] DescribeDeploymentsResponse [Deployment]
-> DescribeDeploymentsResponse -> [Deployment]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment]))
-> DescribeDeploymentsResponse
-> Const [Deployment] DescribeDeploymentsResponse
Lens' DescribeDeploymentsResponse (Maybe [Deployment])
describeDeploymentsResponse_deployments
                        ((Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment]))
 -> DescribeDeploymentsResponse
 -> Const [Deployment] DescribeDeploymentsResponse)
-> (([Deployment] -> Const [Deployment] [Deployment])
    -> Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment]))
-> Getting [Deployment] DescribeDeploymentsResponse [Deployment]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Deployment] -> Const [Deployment] [Deployment])
-> Maybe [Deployment] -> Const [Deployment] (Maybe [Deployment])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Deployment -> f Deployment)
 -> DescribeDeploymentsResponse -> f DescribeDeploymentsResponse)
-> ((CI Text -> f (CI Text)) -> Deployment -> f Deployment)
-> (CI Text -> f (CI Text))
-> DescribeDeploymentsResponse
-> f DescribeDeploymentsResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Deployment -> f Deployment
Lens' Deployment (Maybe Text)
deployment_status
                ((Maybe Text -> f (Maybe Text)) -> Deployment -> f Deployment)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Deployment
-> f Deployment
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.OpsWorks.DescribeInstances' every 15 seconds until a successful state is reached. An error is returned after 40 failed checks.
newInstanceStopped :: Core.Wait DescribeInstances
newInstanceStopped :: Wait DescribeInstances
newInstanceStopped =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"InstanceStopped",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
15,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeInstances]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"stopped"
            Accept
Core.AcceptSuccess
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"booting"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"pending"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"rebooting"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"requested"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"running_setup"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"setup_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"start_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stop_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.OpsWorks.DescribeInstances' every 15 seconds until a successful state is reached. An error is returned after 40 failed checks.
newInstanceOnline :: Core.Wait DescribeInstances
newInstanceOnline :: Wait DescribeInstances
newInstanceOnline =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"InstanceOnline",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
15,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeInstances]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"online"
            Accept
Core.AcceptSuccess
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"setup_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"shutting_down"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"start_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stopped"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stopping"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"terminating"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"terminated"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stop_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }

-- | Polls 'Amazonka.OpsWorks.DescribeApps' every 1 seconds until a successful state is reached. An error is returned after 40 failed checks.
newAppExists :: Core.Wait DescribeApps
newAppExists :: Wait DescribeApps
newAppExists =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"AppExists",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
1,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeApps]
Core._waitAcceptors =
        [ Int -> Accept -> Acceptor DescribeApps
forall a. Int -> Accept -> Acceptor a
Core.matchStatus Int
200 Accept
Core.AcceptSuccess,
          Int -> Accept -> Acceptor DescribeApps
forall a. Int -> Accept -> Acceptor a
Core.matchStatus Int
400 Accept
Core.AcceptFailure
        ]
    }

-- | Polls 'Amazonka.OpsWorks.DescribeInstances' every 15 seconds until a successful state is reached. An error is returned after 40 failed checks.
newInstanceRegistered :: Core.Wait DescribeInstances
newInstanceRegistered :: Wait DescribeInstances
newInstanceRegistered =
  Wait :: forall a. ByteString -> Int -> Seconds -> [Acceptor a] -> Wait a
Core.Wait
    { $sel:_waitName:Wait :: ByteString
Core._waitName = ByteString
"InstanceRegistered",
      $sel:_waitAttempts:Wait :: Int
Core._waitAttempts = Int
40,
      $sel:_waitDelay:Wait :: Seconds
Core._waitDelay = Seconds
15,
      $sel:_waitAcceptors:Wait :: [Acceptor DescribeInstances]
Core._waitAcceptors =
        [ CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAll
            CI Text
"registered"
            Accept
Core.AcceptSuccess
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"setup_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"shutting_down"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stopped"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stopping"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"terminating"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"terminated"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            ),
          CI Text
-> Accept
-> Fold (AWSResponse DescribeInstances) (CI Text)
-> Acceptor DescribeInstances
forall b a.
Eq b =>
b -> Accept -> Fold (AWSResponse a) b -> Acceptor a
Core.matchAny
            CI Text
"stop_failed"
            Accept
Core.AcceptFailure
            ( (DescribeInstancesResponse -> [Instance])
-> Fold DescribeInstancesResponse Instance
forall (f :: * -> *) s a. Foldable f => (s -> f a) -> Fold s a
Lens.folding
                ( Getting [Instance] DescribeInstancesResponse [Instance]
-> DescribeInstancesResponse -> [Instance]
forall r s. Getting [r] s [r] -> s -> [r]
Lens.concatOf
                    ( (Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> DescribeInstancesResponse
-> Const [Instance] DescribeInstancesResponse
Lens' DescribeInstancesResponse (Maybe [Instance])
describeInstancesResponse_instances
                        ((Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
 -> DescribeInstancesResponse
 -> Const [Instance] DescribeInstancesResponse)
-> (([Instance] -> Const [Instance] [Instance])
    -> Maybe [Instance] -> Const [Instance] (Maybe [Instance]))
-> Getting [Instance] DescribeInstancesResponse [Instance]
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. ([Instance] -> Const [Instance] [Instance])
-> Maybe [Instance] -> Const [Instance] (Maybe [Instance])
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                    )
                )
                ((Instance -> f Instance)
 -> DescribeInstancesResponse -> f DescribeInstancesResponse)
-> ((CI Text -> f (CI Text)) -> Instance -> f Instance)
-> (CI Text -> f (CI Text))
-> DescribeInstancesResponse
-> f DescribeInstancesResponse
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Maybe Text -> f (Maybe Text)) -> Instance -> f Instance
Lens' Instance (Maybe Text)
instance_status
                ((Maybe Text -> f (Maybe Text)) -> Instance -> f Instance)
-> ((CI Text -> f (CI Text)) -> Maybe Text -> f (Maybe Text))
-> (CI Text -> f (CI Text))
-> Instance
-> f Instance
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> f Text) -> Maybe Text -> f (Maybe Text)
forall a b. Prism (Maybe a) (Maybe b) a b
Lens._Just
                ((Text -> f Text) -> Maybe Text -> f (Maybe Text))
-> ((CI Text -> f (CI Text)) -> Text -> f Text)
-> (CI Text -> f (CI Text))
-> Maybe Text
-> f (Maybe Text)
forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. (Text -> CI Text) -> (CI Text -> f (CI Text)) -> Text -> f Text
forall (p :: * -> * -> *) (f :: * -> *) s a.
(Profunctor p, Contravariant f) =>
(s -> a) -> Optic' p f s a
Lens.to Text -> CI Text
forall a. ToText a => a -> CI Text
Core.toTextCI
            )
        ]
    }