amazonka-route53-domains-1.4.5: gen/Network/AWS/Route53Domains/EnableDomainAutoRenew.hs
{-# 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 #-}
-- Derived from AWS service descriptions, licensed under Apache 2.0.
-- |
-- Module : Network.AWS.Route53Domains.EnableDomainAutoRenew
-- Copyright : (c) 2013-2016 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- This operation configures Amazon Route 53 to automatically renew the specified domain before the domain registration expires. The cost of renewing your domain registration is billed to your AWS account.
--
--
-- The period during which you can renew a domain name varies by TLD. For a list of TLDs and their renewal policies, see <http://wiki.gandi.net/en/domains/renew#renewal_restoration_and_deletion_times "Renewal, restoration, and deletion times"> on the website for our registrar partner, Gandi. Route 53 requires that you renew before the end of the renewal period that is listed on the Gandi website so we can complete processing before the deadline.
--
module Network.AWS.Route53Domains.EnableDomainAutoRenew
(
-- * Creating a Request
enableDomainAutoRenew
, EnableDomainAutoRenew
-- * Request Lenses
, edarDomainName
-- * Destructuring the Response
, enableDomainAutoRenewResponse
, EnableDomainAutoRenewResponse
-- * Response Lenses
, edarrsResponseStatus
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.Route53Domains.Types
import Network.AWS.Route53Domains.Types.Product
-- | /See:/ 'enableDomainAutoRenew' smart constructor.
newtype EnableDomainAutoRenew = EnableDomainAutoRenew'
{ _edarDomainName :: Text
} deriving (Eq,Read,Show,Data,Typeable,Generic)
-- | Creates a value of 'EnableDomainAutoRenew' with the minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
-- * 'edarDomainName' - Undocumented member.
enableDomainAutoRenew
:: Text -- ^ 'edarDomainName'
-> EnableDomainAutoRenew
enableDomainAutoRenew pDomainName_ =
EnableDomainAutoRenew'
{ _edarDomainName = pDomainName_
}
-- | Undocumented member.
edarDomainName :: Lens' EnableDomainAutoRenew Text
edarDomainName = lens _edarDomainName (\ s a -> s{_edarDomainName = a});
instance AWSRequest EnableDomainAutoRenew where
type Rs EnableDomainAutoRenew =
EnableDomainAutoRenewResponse
request = postJSON route53Domains
response
= receiveEmpty
(\ s h x ->
EnableDomainAutoRenewResponse' <$>
(pure (fromEnum s)))
instance Hashable EnableDomainAutoRenew
instance NFData EnableDomainAutoRenew
instance ToHeaders EnableDomainAutoRenew where
toHeaders
= const
(mconcat
["X-Amz-Target" =#
("Route53Domains_v20140515.EnableDomainAutoRenew" ::
ByteString),
"Content-Type" =#
("application/x-amz-json-1.1" :: ByteString)])
instance ToJSON EnableDomainAutoRenew where
toJSON EnableDomainAutoRenew'{..}
= object
(catMaybes [Just ("DomainName" .= _edarDomainName)])
instance ToPath EnableDomainAutoRenew where
toPath = const "/"
instance ToQuery EnableDomainAutoRenew where
toQuery = const mempty
-- | /See:/ 'enableDomainAutoRenewResponse' smart constructor.
newtype EnableDomainAutoRenewResponse = EnableDomainAutoRenewResponse'
{ _edarrsResponseStatus :: Int
} deriving (Eq,Read,Show,Data,Typeable,Generic)
-- | Creates a value of 'EnableDomainAutoRenewResponse' with the minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
-- * 'edarrsResponseStatus' - -- | The response status code.
enableDomainAutoRenewResponse
:: Int -- ^ 'edarrsResponseStatus'
-> EnableDomainAutoRenewResponse
enableDomainAutoRenewResponse pResponseStatus_ =
EnableDomainAutoRenewResponse'
{ _edarrsResponseStatus = pResponseStatus_
}
-- | -- | The response status code.
edarrsResponseStatus :: Lens' EnableDomainAutoRenewResponse Int
edarrsResponseStatus = lens _edarrsResponseStatus (\ s a -> s{_edarrsResponseStatus = a});
instance NFData EnableDomainAutoRenewResponse