{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
module Network.AWS.MQ.DescribeBroker
(
describeBroker
, DescribeBroker
, desBrokerId
, describeBrokerResponse
, DescribeBrokerResponse
, dbrsBrokerName
, dbrsEngineVersion
, dbrsBrokerState
, dbrsPubliclyAccessible
, dbrsAutoMinorVersionUpgrade
, dbrsSecurityGroups
, dbrsUsers
, dbrsSubnetIds
, dbrsConfigurations
, dbrsMaintenanceWindowStartTime
, dbrsDeploymentMode
, dbrsBrokerId
, dbrsEngineType
, dbrsBrokerARN
, dbrsBrokerInstances
, dbrsHostInstanceType
, dbrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.MQ.Types
import Network.AWS.MQ.Types.Product
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
newtype DescribeBroker = DescribeBroker'
{ _desBrokerId :: Text
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeBroker
:: Text
-> DescribeBroker
describeBroker pBrokerId_ = DescribeBroker' {_desBrokerId = pBrokerId_}
desBrokerId :: Lens' DescribeBroker Text
desBrokerId = lens _desBrokerId (\ s a -> s{_desBrokerId = a})
instance AWSRequest DescribeBroker where
type Rs DescribeBroker = DescribeBrokerResponse
request = get mq
response
= receiveJSON
(\ s h x ->
DescribeBrokerResponse' <$>
(x .?> "brokerName") <*> (x .?> "engineVersion") <*>
(x .?> "brokerState")
<*> (x .?> "publiclyAccessible")
<*> (x .?> "autoMinorVersionUpgrade")
<*> (x .?> "securityGroups" .!@ mempty)
<*> (x .?> "users" .!@ mempty)
<*> (x .?> "subnetIds" .!@ mempty)
<*> (x .?> "configurations")
<*> (x .?> "maintenanceWindowStartTime")
<*> (x .?> "deploymentMode")
<*> (x .?> "brokerId")
<*> (x .?> "engineType")
<*> (x .?> "brokerArn")
<*> (x .?> "brokerInstances" .!@ mempty)
<*> (x .?> "hostInstanceType")
<*> (pure (fromEnum s)))
instance Hashable DescribeBroker where
instance NFData DescribeBroker where
instance ToHeaders DescribeBroker where
toHeaders
= const
(mconcat
["Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToPath DescribeBroker where
toPath DescribeBroker'{..}
= mconcat ["/v1/brokers/", toBS _desBrokerId]
instance ToQuery DescribeBroker where
toQuery = const mempty
data DescribeBrokerResponse = DescribeBrokerResponse'
{ _dbrsBrokerName :: !(Maybe Text)
, _dbrsEngineVersion :: !(Maybe Text)
, _dbrsBrokerState :: !(Maybe BrokerState)
, _dbrsPubliclyAccessible :: !(Maybe Bool)
, _dbrsAutoMinorVersionUpgrade :: !(Maybe Bool)
, _dbrsSecurityGroups :: !(Maybe [Text])
, _dbrsUsers :: !(Maybe [UserSummary])
, _dbrsSubnetIds :: !(Maybe [Text])
, _dbrsConfigurations :: !(Maybe Configurations)
, _dbrsMaintenanceWindowStartTime :: !(Maybe WeeklyStartTime)
, _dbrsDeploymentMode :: !(Maybe DeploymentMode)
, _dbrsBrokerId :: !(Maybe Text)
, _dbrsEngineType :: !(Maybe EngineType)
, _dbrsBrokerARN :: !(Maybe Text)
, _dbrsBrokerInstances :: !(Maybe [BrokerInstance])
, _dbrsHostInstanceType :: !(Maybe Text)
, _dbrsResponseStatus :: !Int
} deriving (Eq, Read, Show, Data, Typeable, Generic)
describeBrokerResponse
:: Int
-> DescribeBrokerResponse
describeBrokerResponse pResponseStatus_ =
DescribeBrokerResponse'
{ _dbrsBrokerName = Nothing
, _dbrsEngineVersion = Nothing
, _dbrsBrokerState = Nothing
, _dbrsPubliclyAccessible = Nothing
, _dbrsAutoMinorVersionUpgrade = Nothing
, _dbrsSecurityGroups = Nothing
, _dbrsUsers = Nothing
, _dbrsSubnetIds = Nothing
, _dbrsConfigurations = Nothing
, _dbrsMaintenanceWindowStartTime = Nothing
, _dbrsDeploymentMode = Nothing
, _dbrsBrokerId = Nothing
, _dbrsEngineType = Nothing
, _dbrsBrokerARN = Nothing
, _dbrsBrokerInstances = Nothing
, _dbrsHostInstanceType = Nothing
, _dbrsResponseStatus = pResponseStatus_
}
dbrsBrokerName :: Lens' DescribeBrokerResponse (Maybe Text)
dbrsBrokerName = lens _dbrsBrokerName (\ s a -> s{_dbrsBrokerName = a})
dbrsEngineVersion :: Lens' DescribeBrokerResponse (Maybe Text)
dbrsEngineVersion = lens _dbrsEngineVersion (\ s a -> s{_dbrsEngineVersion = a})
dbrsBrokerState :: Lens' DescribeBrokerResponse (Maybe BrokerState)
dbrsBrokerState = lens _dbrsBrokerState (\ s a -> s{_dbrsBrokerState = a})
dbrsPubliclyAccessible :: Lens' DescribeBrokerResponse (Maybe Bool)
dbrsPubliclyAccessible = lens _dbrsPubliclyAccessible (\ s a -> s{_dbrsPubliclyAccessible = a})
dbrsAutoMinorVersionUpgrade :: Lens' DescribeBrokerResponse (Maybe Bool)
dbrsAutoMinorVersionUpgrade = lens _dbrsAutoMinorVersionUpgrade (\ s a -> s{_dbrsAutoMinorVersionUpgrade = a})
dbrsSecurityGroups :: Lens' DescribeBrokerResponse [Text]
dbrsSecurityGroups = lens _dbrsSecurityGroups (\ s a -> s{_dbrsSecurityGroups = a}) . _Default . _Coerce
dbrsUsers :: Lens' DescribeBrokerResponse [UserSummary]
dbrsUsers = lens _dbrsUsers (\ s a -> s{_dbrsUsers = a}) . _Default . _Coerce
dbrsSubnetIds :: Lens' DescribeBrokerResponse [Text]
dbrsSubnetIds = lens _dbrsSubnetIds (\ s a -> s{_dbrsSubnetIds = a}) . _Default . _Coerce
dbrsConfigurations :: Lens' DescribeBrokerResponse (Maybe Configurations)
dbrsConfigurations = lens _dbrsConfigurations (\ s a -> s{_dbrsConfigurations = a})
dbrsMaintenanceWindowStartTime :: Lens' DescribeBrokerResponse (Maybe WeeklyStartTime)
dbrsMaintenanceWindowStartTime = lens _dbrsMaintenanceWindowStartTime (\ s a -> s{_dbrsMaintenanceWindowStartTime = a})
dbrsDeploymentMode :: Lens' DescribeBrokerResponse (Maybe DeploymentMode)
dbrsDeploymentMode = lens _dbrsDeploymentMode (\ s a -> s{_dbrsDeploymentMode = a})
dbrsBrokerId :: Lens' DescribeBrokerResponse (Maybe Text)
dbrsBrokerId = lens _dbrsBrokerId (\ s a -> s{_dbrsBrokerId = a})
dbrsEngineType :: Lens' DescribeBrokerResponse (Maybe EngineType)
dbrsEngineType = lens _dbrsEngineType (\ s a -> s{_dbrsEngineType = a})
dbrsBrokerARN :: Lens' DescribeBrokerResponse (Maybe Text)
dbrsBrokerARN = lens _dbrsBrokerARN (\ s a -> s{_dbrsBrokerARN = a})
dbrsBrokerInstances :: Lens' DescribeBrokerResponse [BrokerInstance]
dbrsBrokerInstances = lens _dbrsBrokerInstances (\ s a -> s{_dbrsBrokerInstances = a}) . _Default . _Coerce
dbrsHostInstanceType :: Lens' DescribeBrokerResponse (Maybe Text)
dbrsHostInstanceType = lens _dbrsHostInstanceType (\ s a -> s{_dbrsHostInstanceType = a})
dbrsResponseStatus :: Lens' DescribeBrokerResponse Int
dbrsResponseStatus = lens _dbrsResponseStatus (\ s a -> s{_dbrsResponseStatus = a})
instance NFData DescribeBrokerResponse where