<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _get_storage_resource(self):
 """Gets the SmartStorage resource if exists. :raises: IloCommandNotSupportedError if the resource SmartStorage doesn't exist. :returns the tuple of SmartStorage URI, Headers and settings. """

        system = self._get_host_details()
        if ('links' in system['Oem']['Hp'] and
                'SmartStorage' in system['Oem']['Hp']['links']):
            # Get the SmartStorage URI and Settings
            storage_uri = system['Oem']['Hp']['links']['SmartStorage']['href']
            status, headers, storage_settings = self._rest_get(storage_uri)

            if status >= 300:
                msg = self._get_extended_error(storage_settings)
                raise exception.IloError(msg)

            return headers, storage_uri, storage_settings
        else:
            msg = ('"links/SmartStorage" section in ComputerSystem/Oem/Hp'
                   ' does not exist')
            raise exception.IloCommandNotSupportedError(msg)