def begin_create_or_update(self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, **kwargs):
    "Creates or updates a service endpoint policy definition in the specified service endpoint\n        policy.\n\n        :param resource_group_name: The name of the resource group.\n        :type resource_group_name: str\n        :param service_endpoint_policy_name: The name of the service endpoint policy.\n        :type service_endpoint_policy_name: str\n        :param service_endpoint_policy_definition_name: The name of the service endpoint policy\n         definition name.\n        :type service_endpoint_policy_definition_name: str\n        :param service_endpoint_policy_definitions: Parameters supplied to the create or update service\n         endpoint policy operation.\n        :type service_endpoint_policy_definitions: ~azure.mgmt.network.v2019_02_01.models.ServiceEndpointPolicyDefinition\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: Pass in True if you'd like the ARMPolling polling method,\n         False for no polling, or your own initialized polling object for a personal polling strategy.\n        :paramtype polling: bool or ~azure.core.polling.PollingMethod\n        :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present.\n        :return: An instance of LROPoller that returns either ServiceEndpointPolicyDefinition or the result of cls(response)\n        :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.network.v2019_02_01.models.ServiceEndpointPolicyDefinition]\n        :raises ~azure.core.exceptions.HttpResponseError:\n        "
    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 = self._create_or_update_initial(resource_group_name=resource_group_name, service_endpoint_policy_name=service_endpoint_policy_name, service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, service_endpoint_policy_definitions=service_endpoint_policy_definitions, cls=(lambda x, y, z: x), **kwargs)
    kwargs.pop('error_map', None)
    kwargs.pop('content_type', None)

    def get_long_running_output(pipeline_response):
        deserialized = self._deserialize('ServiceEndpointPolicyDefinition', pipeline_response)
        if cls:
            return cls(pipeline_response, deserialized, {})
        return deserialized
    path_format_arguments = {'resourceGroupName': self._serialize.url('resource_group_name', resource_group_name, 'str'), 'serviceEndpointPolicyName': self._serialize.url('service_endpoint_policy_name', service_endpoint_policy_name, 'str'), 'serviceEndpointPolicyDefinitionName': self._serialize.url('service_endpoint_policy_definition_name', service_endpoint_policy_definition_name, 'str'), 'subscriptionId': self._serialize.url('self._config.subscription_id', self._config.subscription_id, 'str')}
    if (polling is True):
        polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, path_format_arguments=path_format_arguments, **kwargs)
    elif (polling is False):
        polling_method = NoPolling()
    else:
        polling_method = polling
    if cont_token:
        return LROPoller.from_continuation_token(polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output)
    else:
        return LROPoller(self._client, raw_result, get_long_running_output, polling_method)
Creates or updates a service endpoint policy definition in the specified service endpoint
policy.

:param resource_group_name: The name of the resource group.
:type resource_group_name: str
:param service_endpoint_policy_name: The name of the service endpoint policy.
:type service_endpoint_policy_name: str
:param service_endpoint_policy_definition_name: The name of the service endpoint policy
 definition name.
:type service_endpoint_policy_definition_name: str
:param service_endpoint_policy_definitions: Parameters supplied to the create or update service
 endpoint policy operation.
:type service_endpoint_policy_definitions: ~azure.mgmt.network.v2019_02_01.models.ServiceEndpointPolicyDefinition
: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: Pass in True if you'd like the ARMPolling polling method,
 False for no polling, or your own initialized polling object for a personal polling strategy.
:paramtype polling: bool or ~azure.core.polling.PollingMethod
:keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present.
:return: An instance of LROPoller that returns either ServiceEndpointPolicyDefinition or the result of cls(response)
:rtype: ~azure.core.polling.LROPoller[~azure.mgmt.network.v2019_02_01.models.ServiceEndpointPolicyDefinition]
:raises ~azure.core.exceptions.HttpResponseError:
def begin_create_or_update(self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, **kwargs):
    "Creates or updates a service endpoint policy definition in the specified service endpoint\n        policy.\n\n        :param resource_group_name: The name of the resource group.\n        :type resource_group_name: str\n        :param service_endpoint_policy_name: The name of the service endpoint policy.\n        :type service_endpoint_policy_name: str\n        :param service_endpoint_policy_definition_name: The name of the service endpoint policy\n         definition name.\n        :type service_endpoint_policy_definition_name: str\n        :param service_endpoint_policy_definitions: Parameters supplied to the create or update service\n         endpoint policy operation.\n        :type service_endpoint_policy_definitions: ~azure.mgmt.network.v2019_02_01.models.ServiceEndpointPolicyDefinition\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: Pass in True if you'd like the ARMPolling polling method,\n         False for no polling, or your own initialized polling object for a personal polling strategy.\n        :paramtype polling: bool or ~azure.core.polling.PollingMethod\n        :keyword int polling_interval: Default waiting time between two polls for LRO operations if no Retry-After header is present.\n        :return: An instance of LROPoller that returns either ServiceEndpointPolicyDefinition or the result of cls(response)\n        :rtype: ~azure.core.polling.LROPoller[~azure.mgmt.network.v2019_02_01.models.ServiceEndpointPolicyDefinition]\n        :raises ~azure.core.exceptions.HttpResponseError:\n        "
    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 = self._create_or_update_initial(resource_group_name=resource_group_name, service_endpoint_policy_name=service_endpoint_policy_name, service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, service_endpoint_policy_definitions=service_endpoint_policy_definitions, cls=(lambda x, y, z: x), **kwargs)
    kwargs.pop('error_map', None)
    kwargs.pop('content_type', None)

    def get_long_running_output(pipeline_response):
        deserialized = self._deserialize('ServiceEndpointPolicyDefinition', pipeline_response)
        if cls:
            return cls(pipeline_response, deserialized, {})
        return deserialized
    path_format_arguments = {'resourceGroupName': self._serialize.url('resource_group_name', resource_group_name, 'str'), 'serviceEndpointPolicyName': self._serialize.url('service_endpoint_policy_name', service_endpoint_policy_name, 'str'), 'serviceEndpointPolicyDefinitionName': self._serialize.url('service_endpoint_policy_definition_name', service_endpoint_policy_definition_name, 'str'), 'subscriptionId': self._serialize.url('self._config.subscription_id', self._config.subscription_id, 'str')}
    if (polling is True):
        polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'azure-async-operation'}, path_format_arguments=path_format_arguments, **kwargs)
    elif (polling is False):
        polling_method = NoPolling()
    else:
        polling_method = polling
    if cont_token:
        return LROPoller.from_continuation_token(polling_method=polling_method, continuation_token=cont_token, client=self._client, deserialization_callback=get_long_running_output)
    else:
        return LROPoller(self._client, raw_result, get_long_running_output, polling_method)