def _handle_get_application_request(self, app_id, semver, key, logical_id):
get_application = (lambda app_id, semver: self._sar_client.get_application(<EOL>ApplicationId=self._sanitize_sar_str_param(app_id),<EOL>SemanticVersion=self._sanitize_sar_str_param(semver)))<EOL>try:<EOL><INDENT>self._sar_service_call(get_application, logical_id, app_id, semver)<EOL>self._applications[key] = {'<STR_LIT>'}<EOL><DEDENT>except EndpointConnectionError as e:<EOL><INDENT>warning_message = "<STR_LIT>".format(e, app_id, semver)<EOL>logging.warning(warning_message)<EOL>self._applications[key] = {'<STR_LIT>'}<EOL><DEDENT>
Method that handles the get_application API call to the serverless application repo

This method puts something in the `_applications` dictionary because the plugin expects
something there in a later event.

:param string app_id: ApplicationId
:param string semver: SemanticVersion
:param string key: The dictionary key consisting of (ApplicationId, SemanticVersion)
:param string logical_id: the logical_id of this application resource