{-# 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.Lambda.GetFunctionConfiguration -- Copyright : (c) 2013-2015 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Returns the configuration information of the Lambda function. This the -- same information you provided as parameters when uploading the function -- by using CreateFunction. -- -- You can use the optional 'Qualifier' parameter to retrieve configuration -- information for a specific Lambda function version. If you don\'t -- provide it, the API returns information about the $LATEST version of the -- function. For more information about versioning, see -- . -- -- This operation requires permission for the -- 'lambda:GetFunctionConfiguration' operation. -- -- /See:/ for GetFunctionConfiguration. module Network.AWS.Lambda.GetFunctionConfiguration ( -- * Creating a Request getFunctionConfiguration , GetFunctionConfiguration -- * Request Lenses , gfcQualifier , gfcFunctionName -- * Destructuring the Response , functionConfiguration , FunctionConfiguration -- * Response Lenses , fcMemorySize , fcRuntime , fcFunctionARN , fcRole , fcVersion , fcFunctionName , fcCodeSize , fcHandler , fcTimeout , fcLastModified , fcCodeSha256 , fcDescription ) where import Network.AWS.Lambda.Types import Network.AWS.Lambda.Types.Product import Network.AWS.Prelude import Network.AWS.Request import Network.AWS.Response -- | /See:/ 'getFunctionConfiguration' smart constructor. data GetFunctionConfiguration = GetFunctionConfiguration' { _gfcQualifier :: !(Maybe Text) , _gfcFunctionName :: !Text } deriving (Eq,Read,Show,Data,Typeable,Generic) -- | Creates a value of 'GetFunctionConfiguration' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: -- -- * 'gfcQualifier' -- -- * 'gfcFunctionName' getFunctionConfiguration :: Text -- ^ 'gfcFunctionName' -> GetFunctionConfiguration getFunctionConfiguration pFunctionName_ = GetFunctionConfiguration' { _gfcQualifier = Nothing , _gfcFunctionName = pFunctionName_ } -- | Using this optional parameter you can specify function version or alias -- name. If you specify function version, the API uses qualified function -- ARN and returns information about the specific function version. if you -- specify alias name, the API uses alias ARN and returns information about -- the function version to which the alias points. -- -- If you don\'t specify this parameter, the API uses unqualified function -- ARN, and returns information about the $LATEST function version. gfcQualifier :: Lens' GetFunctionConfiguration (Maybe Text) gfcQualifier = lens _gfcQualifier (\ s a -> s{_gfcQualifier = a}); -- | The name of the Lambda function for which you want to retrieve the -- configuration information. -- -- You can specify an unqualified function name (for example, -- \"Thumbnail\") or you can specify Amazon Resource Name (ARN) of the -- function (for example, -- \"arn:aws:lambda:us-west-2:account-id:function:ThumbNail\"). AWS Lambda -- also allows you to specify only the account ID qualifier (for example, -- \"account-id:Thumbnail\"). Note that the length constraint applies only -- to the ARN. If you specify only the function name, it is limited to 64 -- character in length. gfcFunctionName :: Lens' GetFunctionConfiguration Text gfcFunctionName = lens _gfcFunctionName (\ s a -> s{_gfcFunctionName = a}); instance AWSRequest GetFunctionConfiguration where type Rs GetFunctionConfiguration = FunctionConfiguration request = get lambda response = receiveJSON (\ s h x -> eitherParseJSON x) instance ToHeaders GetFunctionConfiguration where toHeaders = const mempty instance ToPath GetFunctionConfiguration where toPath GetFunctionConfiguration'{..} = mconcat ["/2015-03-31/functions/", toBS _gfcFunctionName, "/configuration"] instance ToQuery GetFunctionConfiguration where toQuery GetFunctionConfiguration'{..} = mconcat ["Qualifier" =: _gfcQualifier]