@distributed_trace_async
async def begin_validate_move_resources(self, source_resource_group_name: str, parameters: '_models.ResourcesMoveInfo', **kwargs: Any) -> AsyncLROPoller[None]:
    'Validates whether resources can be moved from one resource group to another resource group.\n\n        This operation checks whether the specified resources can be moved to the target. The resources\n        to move must be in the same source resource group. The target resource group may be in a\n        different subscription. If validation succeeds, it returns HTTP response code 204 (no content).\n        If validation fails, it returns HTTP response code 409 (Conflict) with an error message.\n        Retrieve the URL in the Location header value to check the result of the long-running\n        operation.\n\n        :param source_resource_group_name: The name of the resource group containing the resources to\n         validate for move.\n        :type source_resource_group_name: str\n        :param parameters: Parameters for moving resources.\n        :type parameters: ~azure.mgmt.resource.resources.v2019_08_01.models.ResourcesMoveInfo\n        :keyword callable cls: A custom type or function that will be passed the direct response\n        :keyword str continuation_token: A continuation token to restart a poller from a saved state.\n        :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for\n         this operation to not poll, or pass in your own initialized polling object for a personal\n         polling strategy.\n        :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod\n        :keyword int polling_interval: Default waiting time between two polls for LRO operations if no\n         Retry-After header is present.\n        :return: An instance of AsyncLROPoller that returns either None or the result of cls(response)\n        :rtype: ~azure.core.polling.AsyncLROPoller[None]\n        :raises: ~azure.core.exceptions.HttpResponseError\n        '
    api_version = kwargs.pop('api_version', '2019-08-01')
    content_type = kwargs.pop('content_type', 'application/json')
    polling = kwargs.pop('polling', True)
    cls = kwargs.pop('cls', None)
    lro_delay = kwargs.pop('polling_interval', self._config.polling_interval)
    cont_token = kwargs.pop('continuation_token', None)
    if (cont_token is None):
        raw_result = (await self._validate_move_resources_initial(source_resource_group_name=source_resource_group_name, parameters=parameters, api_version=api_version, content_type=content_type, cls=(lambda x, y, z: x), **kwargs))
    kwargs.pop('error_map', None)

    def get_long_running_output(pipeline_response):
        if cls:
            return cls(pipeline_response, None, {})
    if (polling is True):
        polling_method = AsyncARMPolling(lro_delay, **kwargs)
    elif (polling is False):
        polling_method = AsyncNoPolling()
    else:
        polling_method = polling
    if cont_token:
        return AsyncLROPoller.from_continuation_token(polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output)
    return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method)
Validates whether resources can be moved from one resource group to another resource group.

This operation checks whether the specified resources can be moved to the target. The resources
to move must be in the same source resource group. The target resource group may be in a
different subscription. If validation succeeds, it returns HTTP response code 204 (no content).
If validation fails, it returns HTTP response code 409 (Conflict) with an error message.
Retrieve the URL in the Location header value to check the result of the long-running
operation.

:param source_resource_group_name: The name of the resource group containing the resources to
 validate for move.
:type source_resource_group_name: str
:param parameters: Parameters for moving resources.
:type parameters: ~azure.mgmt.resource.resources.v2019_08_01.models.ResourcesMoveInfo
:keyword callable cls: A custom type or function that will be passed the direct response
:keyword str continuation_token: A continuation token to restart a poller from a saved state.
:keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for
 this operation to not poll, or pass in your own initialized polling object for a personal
 polling strategy.
:paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no
 Retry-After header is present.
:return: An instance of AsyncLROPoller that returns either None or the result of cls(response)
:rtype: ~azure.core.polling.AsyncLROPoller[None]
:raises: ~azure.core.exceptions.HttpResponseError
@distributed_trace_async
async def begin_validate_move_resources(self, source_resource_group_name: str, parameters: '_models.ResourcesMoveInfo', **kwargs: Any) -> AsyncLROPoller[None]:
    'Validates whether resources can be moved from one resource group to another resource group.\n\n        This operation checks whether the specified resources can be moved to the target. The resources\n        to move must be in the same source resource group. The target resource group may be in a\n        different subscription. If validation succeeds, it returns HTTP response code 204 (no content).\n        If validation fails, it returns HTTP response code 409 (Conflict) with an error message.\n        Retrieve the URL in the Location header value to check the result of the long-running\n        operation.\n\n        :param source_resource_group_name: The name of the resource group containing the resources to\n         validate for move.\n        :type source_resource_group_name: str\n        :param parameters: Parameters for moving resources.\n        :type parameters: ~azure.mgmt.resource.resources.v2019_08_01.models.ResourcesMoveInfo\n        :keyword callable cls: A custom type or function that will be passed the direct response\n        :keyword str continuation_token: A continuation token to restart a poller from a saved state.\n        :keyword polling: By default, your polling method will be AsyncARMPolling. Pass in False for\n         this operation to not poll, or pass in your own initialized polling object for a personal\n         polling strategy.\n        :paramtype polling: bool or ~azure.core.polling.AsyncPollingMethod\n        :keyword int polling_interval: Default waiting time between two polls for LRO operations if no\n         Retry-After header is present.\n        :return: An instance of AsyncLROPoller that returns either None or the result of cls(response)\n        :rtype: ~azure.core.polling.AsyncLROPoller[None]\n        :raises: ~azure.core.exceptions.HttpResponseError\n        '
    api_version = kwargs.pop('api_version', '2019-08-01')
    content_type = kwargs.pop('content_type', 'application/json')
    polling = kwargs.pop('polling', True)
    cls = kwargs.pop('cls', None)
    lro_delay = kwargs.pop('polling_interval', self._config.polling_interval)
    cont_token = kwargs.pop('continuation_token', None)
    if (cont_token is None):
        raw_result = (await self._validate_move_resources_initial(source_resource_group_name=source_resource_group_name, parameters=parameters, api_version=api_version, content_type=content_type, cls=(lambda x, y, z: x), **kwargs))
    kwargs.pop('error_map', None)

    def get_long_running_output(pipeline_response):
        if cls:
            return cls(pipeline_response, None, {})
    if (polling is True):
        polling_method = AsyncARMPolling(lro_delay, **kwargs)
    elif (polling is False):
        polling_method = AsyncNoPolling()
    else:
        polling_method = polling
    if cont_token:
        return AsyncLROPoller.from_continuation_token(polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output)
    return AsyncLROPoller(self._client, raw_result, get_long_running_output, polling_method)