{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DuplicateRecordFields #-}
{-# LANGUAGE NamedFieldPuns #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE NoImplicitPrelude #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}

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

-- |
-- Module      : Amazonka.ComputeOptimizer.GetEnrollmentStatus
-- Copyright   : (c) 2013-2023 Brendan Hay
-- License     : Mozilla Public License, v. 2.0.
-- Maintainer  : Brendan Hay
-- Stability   : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Returns the enrollment (opt in) status of an account to the Compute
-- Optimizer service.
--
-- If the account is the management account of an organization, this action
-- also confirms the enrollment status of member accounts of the
-- organization. Use the GetEnrollmentStatusesForOrganization action to get
-- detailed information about the enrollment status of member accounts of
-- an organization.
module Amazonka.ComputeOptimizer.GetEnrollmentStatus
  ( -- * Creating a Request
    GetEnrollmentStatus (..),
    newGetEnrollmentStatus,

    -- * Destructuring the Response
    GetEnrollmentStatusResponse (..),
    newGetEnrollmentStatusResponse,

    -- * Response Lenses
    getEnrollmentStatusResponse_lastUpdatedTimestamp,
    getEnrollmentStatusResponse_memberAccountsEnrolled,
    getEnrollmentStatusResponse_numberOfMemberAccountsOptedIn,
    getEnrollmentStatusResponse_status,
    getEnrollmentStatusResponse_statusReason,
    getEnrollmentStatusResponse_httpStatus,
  )
where

import Amazonka.ComputeOptimizer.Types
import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import qualified Amazonka.Data as Data
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Request as Request
import qualified Amazonka.Response as Response

-- | /See:/ 'newGetEnrollmentStatus' smart constructor.
data GetEnrollmentStatus = GetEnrollmentStatus'
  {
  }
  deriving (GetEnrollmentStatus -> GetEnrollmentStatus -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetEnrollmentStatus -> GetEnrollmentStatus -> Bool
$c/= :: GetEnrollmentStatus -> GetEnrollmentStatus -> Bool
== :: GetEnrollmentStatus -> GetEnrollmentStatus -> Bool
$c== :: GetEnrollmentStatus -> GetEnrollmentStatus -> Bool
Prelude.Eq, ReadPrec [GetEnrollmentStatus]
ReadPrec GetEnrollmentStatus
Int -> ReadS GetEnrollmentStatus
ReadS [GetEnrollmentStatus]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetEnrollmentStatus]
$creadListPrec :: ReadPrec [GetEnrollmentStatus]
readPrec :: ReadPrec GetEnrollmentStatus
$creadPrec :: ReadPrec GetEnrollmentStatus
readList :: ReadS [GetEnrollmentStatus]
$creadList :: ReadS [GetEnrollmentStatus]
readsPrec :: Int -> ReadS GetEnrollmentStatus
$creadsPrec :: Int -> ReadS GetEnrollmentStatus
Prelude.Read, Int -> GetEnrollmentStatus -> ShowS
[GetEnrollmentStatus] -> ShowS
GetEnrollmentStatus -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetEnrollmentStatus] -> ShowS
$cshowList :: [GetEnrollmentStatus] -> ShowS
show :: GetEnrollmentStatus -> String
$cshow :: GetEnrollmentStatus -> String
showsPrec :: Int -> GetEnrollmentStatus -> ShowS
$cshowsPrec :: Int -> GetEnrollmentStatus -> ShowS
Prelude.Show, forall x. Rep GetEnrollmentStatus x -> GetEnrollmentStatus
forall x. GetEnrollmentStatus -> Rep GetEnrollmentStatus x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x. Rep GetEnrollmentStatus x -> GetEnrollmentStatus
$cfrom :: forall x. GetEnrollmentStatus -> Rep GetEnrollmentStatus x
Prelude.Generic)

-- |
-- Create a value of 'GetEnrollmentStatus' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
newGetEnrollmentStatus ::
  GetEnrollmentStatus
newGetEnrollmentStatus :: GetEnrollmentStatus
newGetEnrollmentStatus = GetEnrollmentStatus
GetEnrollmentStatus'

instance Core.AWSRequest GetEnrollmentStatus where
  type
    AWSResponse GetEnrollmentStatus =
      GetEnrollmentStatusResponse
  request :: (Service -> Service)
-> GetEnrollmentStatus -> Request GetEnrollmentStatus
request Service -> Service
overrides =
    forall a. (ToRequest a, ToJSON a) => Service -> a -> Request a
Request.postJSON (Service -> Service
overrides Service
defaultService)
  response :: forall (m :: * -> *).
MonadResource m =>
(ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy GetEnrollmentStatus
-> ClientResponse ClientBody
-> m (Either
        Error (ClientResponse (AWSResponse GetEnrollmentStatus)))
response =
    forall (m :: * -> *) a.
MonadResource m =>
(Int -> ResponseHeaders -> Object -> Either String (AWSResponse a))
-> (ByteStringLazy -> IO ByteStringLazy)
-> Service
-> Proxy a
-> ClientResponse ClientBody
-> m (Either Error (ClientResponse (AWSResponse a)))
Response.receiveJSON
      ( \Int
s ResponseHeaders
h Object
x ->
          Maybe POSIX
-> Maybe Bool
-> Maybe Int
-> Maybe Status
-> Maybe Text
-> Int
-> GetEnrollmentStatusResponse
GetEnrollmentStatusResponse'
            forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
Prelude.<$> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"lastUpdatedTimestamp")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"memberAccountsEnrolled")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"numberOfMemberAccountsOptedIn")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"status")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (Object
x forall a. FromJSON a => Object -> Key -> Either String (Maybe a)
Data..?> Key
"statusReason")
            forall (f :: * -> *) a b. Applicative f => f (a -> b) -> f a -> f b
Prelude.<*> (forall (f :: * -> *) a. Applicative f => a -> f a
Prelude.pure (forall a. Enum a => a -> Int
Prelude.fromEnum Int
s))
      )

instance Prelude.Hashable GetEnrollmentStatus where
  hashWithSalt :: Int -> GetEnrollmentStatus -> Int
hashWithSalt Int
_salt GetEnrollmentStatus
_ =
    Int
_salt forall a. Hashable a => Int -> a -> Int
`Prelude.hashWithSalt` ()

instance Prelude.NFData GetEnrollmentStatus where
  rnf :: GetEnrollmentStatus -> ()
rnf GetEnrollmentStatus
_ = ()

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

instance Data.ToJSON GetEnrollmentStatus where
  toJSON :: GetEnrollmentStatus -> Value
toJSON = forall a b. a -> b -> a
Prelude.const (Object -> Value
Data.Object forall a. Monoid a => a
Prelude.mempty)

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

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

-- | /See:/ 'newGetEnrollmentStatusResponse' smart constructor.
data GetEnrollmentStatusResponse = GetEnrollmentStatusResponse'
  { -- | The Unix epoch timestamp, in seconds, of when the account enrollment
    -- status was last updated.
    GetEnrollmentStatusResponse -> Maybe POSIX
lastUpdatedTimestamp :: Prelude.Maybe Data.POSIX,
    -- | Confirms the enrollment status of member accounts of the organization,
    -- if the account is a management account of an organization.
    GetEnrollmentStatusResponse -> Maybe Bool
memberAccountsEnrolled :: Prelude.Maybe Prelude.Bool,
    -- | The count of organization member accounts that are opted in to the
    -- service, if your account is an organization management account.
    GetEnrollmentStatusResponse -> Maybe Int
numberOfMemberAccountsOptedIn :: Prelude.Maybe Prelude.Int,
    -- | The enrollment status of the account.
    GetEnrollmentStatusResponse -> Maybe Status
status :: Prelude.Maybe Status,
    -- | The reason for the enrollment status of the account.
    --
    -- For example, an account might show a status of @Pending@ because member
    -- accounts of an organization require more time to be enrolled in the
    -- service.
    GetEnrollmentStatusResponse -> Maybe Text
statusReason :: Prelude.Maybe Prelude.Text,
    -- | The response's http status code.
    GetEnrollmentStatusResponse -> Int
httpStatus :: Prelude.Int
  }
  deriving (GetEnrollmentStatusResponse -> GetEnrollmentStatusResponse -> Bool
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: GetEnrollmentStatusResponse -> GetEnrollmentStatusResponse -> Bool
$c/= :: GetEnrollmentStatusResponse -> GetEnrollmentStatusResponse -> Bool
== :: GetEnrollmentStatusResponse -> GetEnrollmentStatusResponse -> Bool
$c== :: GetEnrollmentStatusResponse -> GetEnrollmentStatusResponse -> Bool
Prelude.Eq, ReadPrec [GetEnrollmentStatusResponse]
ReadPrec GetEnrollmentStatusResponse
Int -> ReadS GetEnrollmentStatusResponse
ReadS [GetEnrollmentStatusResponse]
forall a.
(Int -> ReadS a)
-> ReadS [a] -> ReadPrec a -> ReadPrec [a] -> Read a
readListPrec :: ReadPrec [GetEnrollmentStatusResponse]
$creadListPrec :: ReadPrec [GetEnrollmentStatusResponse]
readPrec :: ReadPrec GetEnrollmentStatusResponse
$creadPrec :: ReadPrec GetEnrollmentStatusResponse
readList :: ReadS [GetEnrollmentStatusResponse]
$creadList :: ReadS [GetEnrollmentStatusResponse]
readsPrec :: Int -> ReadS GetEnrollmentStatusResponse
$creadsPrec :: Int -> ReadS GetEnrollmentStatusResponse
Prelude.Read, Int -> GetEnrollmentStatusResponse -> ShowS
[GetEnrollmentStatusResponse] -> ShowS
GetEnrollmentStatusResponse -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [GetEnrollmentStatusResponse] -> ShowS
$cshowList :: [GetEnrollmentStatusResponse] -> ShowS
show :: GetEnrollmentStatusResponse -> String
$cshow :: GetEnrollmentStatusResponse -> String
showsPrec :: Int -> GetEnrollmentStatusResponse -> ShowS
$cshowsPrec :: Int -> GetEnrollmentStatusResponse -> ShowS
Prelude.Show, forall x.
Rep GetEnrollmentStatusResponse x -> GetEnrollmentStatusResponse
forall x.
GetEnrollmentStatusResponse -> Rep GetEnrollmentStatusResponse x
forall a.
(forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a
$cto :: forall x.
Rep GetEnrollmentStatusResponse x -> GetEnrollmentStatusResponse
$cfrom :: forall x.
GetEnrollmentStatusResponse -> Rep GetEnrollmentStatusResponse x
Prelude.Generic)

-- |
-- Create a value of 'GetEnrollmentStatusResponse' with all optional fields omitted.
--
-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.
--
-- The following record fields are available, with the corresponding lenses provided
-- for backwards compatibility:
--
-- 'lastUpdatedTimestamp', 'getEnrollmentStatusResponse_lastUpdatedTimestamp' - The Unix epoch timestamp, in seconds, of when the account enrollment
-- status was last updated.
--
-- 'memberAccountsEnrolled', 'getEnrollmentStatusResponse_memberAccountsEnrolled' - Confirms the enrollment status of member accounts of the organization,
-- if the account is a management account of an organization.
--
-- 'numberOfMemberAccountsOptedIn', 'getEnrollmentStatusResponse_numberOfMemberAccountsOptedIn' - The count of organization member accounts that are opted in to the
-- service, if your account is an organization management account.
--
-- 'status', 'getEnrollmentStatusResponse_status' - The enrollment status of the account.
--
-- 'statusReason', 'getEnrollmentStatusResponse_statusReason' - The reason for the enrollment status of the account.
--
-- For example, an account might show a status of @Pending@ because member
-- accounts of an organization require more time to be enrolled in the
-- service.
--
-- 'httpStatus', 'getEnrollmentStatusResponse_httpStatus' - The response's http status code.
newGetEnrollmentStatusResponse ::
  -- | 'httpStatus'
  Prelude.Int ->
  GetEnrollmentStatusResponse
newGetEnrollmentStatusResponse :: Int -> GetEnrollmentStatusResponse
newGetEnrollmentStatusResponse Int
pHttpStatus_ =
  GetEnrollmentStatusResponse'
    { $sel:lastUpdatedTimestamp:GetEnrollmentStatusResponse' :: Maybe POSIX
lastUpdatedTimestamp =
        forall a. Maybe a
Prelude.Nothing,
      $sel:memberAccountsEnrolled:GetEnrollmentStatusResponse' :: Maybe Bool
memberAccountsEnrolled = forall a. Maybe a
Prelude.Nothing,
      $sel:numberOfMemberAccountsOptedIn:GetEnrollmentStatusResponse' :: Maybe Int
numberOfMemberAccountsOptedIn =
        forall a. Maybe a
Prelude.Nothing,
      $sel:status:GetEnrollmentStatusResponse' :: Maybe Status
status = forall a. Maybe a
Prelude.Nothing,
      $sel:statusReason:GetEnrollmentStatusResponse' :: Maybe Text
statusReason = forall a. Maybe a
Prelude.Nothing,
      $sel:httpStatus:GetEnrollmentStatusResponse' :: Int
httpStatus = Int
pHttpStatus_
    }

-- | The Unix epoch timestamp, in seconds, of when the account enrollment
-- status was last updated.
getEnrollmentStatusResponse_lastUpdatedTimestamp :: Lens.Lens' GetEnrollmentStatusResponse (Prelude.Maybe Prelude.UTCTime)
getEnrollmentStatusResponse_lastUpdatedTimestamp :: Lens' GetEnrollmentStatusResponse (Maybe UTCTime)
getEnrollmentStatusResponse_lastUpdatedTimestamp = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetEnrollmentStatusResponse' {Maybe POSIX
lastUpdatedTimestamp :: Maybe POSIX
$sel:lastUpdatedTimestamp:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe POSIX
lastUpdatedTimestamp} -> Maybe POSIX
lastUpdatedTimestamp) (\s :: GetEnrollmentStatusResponse
s@GetEnrollmentStatusResponse' {} Maybe POSIX
a -> GetEnrollmentStatusResponse
s {$sel:lastUpdatedTimestamp:GetEnrollmentStatusResponse' :: Maybe POSIX
lastUpdatedTimestamp = Maybe POSIX
a} :: GetEnrollmentStatusResponse) forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (g :: * -> *) s t a b.
(Functor f, Functor g) =>
AnIso s t a b -> Iso (f s) (g t) (f a) (g b)
Lens.mapping forall (a :: Format). Iso' (Time a) UTCTime
Data._Time

-- | Confirms the enrollment status of member accounts of the organization,
-- if the account is a management account of an organization.
getEnrollmentStatusResponse_memberAccountsEnrolled :: Lens.Lens' GetEnrollmentStatusResponse (Prelude.Maybe Prelude.Bool)
getEnrollmentStatusResponse_memberAccountsEnrolled :: Lens' GetEnrollmentStatusResponse (Maybe Bool)
getEnrollmentStatusResponse_memberAccountsEnrolled = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetEnrollmentStatusResponse' {Maybe Bool
memberAccountsEnrolled :: Maybe Bool
$sel:memberAccountsEnrolled:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Bool
memberAccountsEnrolled} -> Maybe Bool
memberAccountsEnrolled) (\s :: GetEnrollmentStatusResponse
s@GetEnrollmentStatusResponse' {} Maybe Bool
a -> GetEnrollmentStatusResponse
s {$sel:memberAccountsEnrolled:GetEnrollmentStatusResponse' :: Maybe Bool
memberAccountsEnrolled = Maybe Bool
a} :: GetEnrollmentStatusResponse)

-- | The count of organization member accounts that are opted in to the
-- service, if your account is an organization management account.
getEnrollmentStatusResponse_numberOfMemberAccountsOptedIn :: Lens.Lens' GetEnrollmentStatusResponse (Prelude.Maybe Prelude.Int)
getEnrollmentStatusResponse_numberOfMemberAccountsOptedIn :: Lens' GetEnrollmentStatusResponse (Maybe Int)
getEnrollmentStatusResponse_numberOfMemberAccountsOptedIn = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetEnrollmentStatusResponse' {Maybe Int
numberOfMemberAccountsOptedIn :: Maybe Int
$sel:numberOfMemberAccountsOptedIn:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Int
numberOfMemberAccountsOptedIn} -> Maybe Int
numberOfMemberAccountsOptedIn) (\s :: GetEnrollmentStatusResponse
s@GetEnrollmentStatusResponse' {} Maybe Int
a -> GetEnrollmentStatusResponse
s {$sel:numberOfMemberAccountsOptedIn:GetEnrollmentStatusResponse' :: Maybe Int
numberOfMemberAccountsOptedIn = Maybe Int
a} :: GetEnrollmentStatusResponse)

-- | The enrollment status of the account.
getEnrollmentStatusResponse_status :: Lens.Lens' GetEnrollmentStatusResponse (Prelude.Maybe Status)
getEnrollmentStatusResponse_status :: Lens' GetEnrollmentStatusResponse (Maybe Status)
getEnrollmentStatusResponse_status = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetEnrollmentStatusResponse' {Maybe Status
status :: Maybe Status
$sel:status:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Status
status} -> Maybe Status
status) (\s :: GetEnrollmentStatusResponse
s@GetEnrollmentStatusResponse' {} Maybe Status
a -> GetEnrollmentStatusResponse
s {$sel:status:GetEnrollmentStatusResponse' :: Maybe Status
status = Maybe Status
a} :: GetEnrollmentStatusResponse)

-- | The reason for the enrollment status of the account.
--
-- For example, an account might show a status of @Pending@ because member
-- accounts of an organization require more time to be enrolled in the
-- service.
getEnrollmentStatusResponse_statusReason :: Lens.Lens' GetEnrollmentStatusResponse (Prelude.Maybe Prelude.Text)
getEnrollmentStatusResponse_statusReason :: Lens' GetEnrollmentStatusResponse (Maybe Text)
getEnrollmentStatusResponse_statusReason = forall s a b t. (s -> a) -> (s -> b -> t) -> Lens s t a b
Lens.lens (\GetEnrollmentStatusResponse' {Maybe Text
statusReason :: Maybe Text
$sel:statusReason:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Text
statusReason} -> Maybe Text
statusReason) (\s :: GetEnrollmentStatusResponse
s@GetEnrollmentStatusResponse' {} Maybe Text
a -> GetEnrollmentStatusResponse
s {$sel:statusReason:GetEnrollmentStatusResponse' :: Maybe Text
statusReason = Maybe Text
a} :: GetEnrollmentStatusResponse)

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

instance Prelude.NFData GetEnrollmentStatusResponse where
  rnf :: GetEnrollmentStatusResponse -> ()
rnf GetEnrollmentStatusResponse' {Int
Maybe Bool
Maybe Int
Maybe Text
Maybe POSIX
Maybe Status
httpStatus :: Int
statusReason :: Maybe Text
status :: Maybe Status
numberOfMemberAccountsOptedIn :: Maybe Int
memberAccountsEnrolled :: Maybe Bool
lastUpdatedTimestamp :: Maybe POSIX
$sel:httpStatus:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Int
$sel:statusReason:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Text
$sel:status:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Status
$sel:numberOfMemberAccountsOptedIn:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Int
$sel:memberAccountsEnrolled:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe Bool
$sel:lastUpdatedTimestamp:GetEnrollmentStatusResponse' :: GetEnrollmentStatusResponse -> Maybe POSIX
..} =
    forall a. NFData a => a -> ()
Prelude.rnf Maybe POSIX
lastUpdatedTimestamp
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Bool
memberAccountsEnrolled
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Int
numberOfMemberAccountsOptedIn
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Status
status
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Maybe Text
statusReason
      seq :: forall a b. a -> b -> b
`Prelude.seq` forall a. NFData a => a -> ()
Prelude.rnf Int
httpStatus