1# --------------------------------------------------------------------------------------------
2# Copyright (c) Microsoft Corporation. All rights reserved.
3# Licensed under the MIT License. See License.txt in the project root for license information.
4# --------------------------------------------------------------------------------------------
5# pylint: disable=line-too-long, too-many-statements, too-many-locals
6from azure.cli.core.util import sdk_no_wait
7from .._client_factory import cf_synapse_managedprivateendpoints_factory
8
9
10def create_Managed_private_endpoints(cmd, workspace_name, managed_private_endpoint_name, private_Link_Resource_Id, group_Id, no_wait=False):
11    client = cf_synapse_managedprivateendpoints_factory(cmd.cli_ctx, workspace_name)
12    property_files = {}
13    property_files['privateLinkResourceId'] = private_Link_Resource_Id
14    property_files['groupId'] = group_Id
15    properties = property_files
16    managed_virtual_network_name = "default"
17    return sdk_no_wait(no_wait, client.create,
18                       managed_private_endpoint_name, managed_virtual_network_name, properties)
19
20
21def get_Managed_private_endpoints(cmd, workspace_name, managed_private_endpoint_name):
22    client = cf_synapse_managedprivateendpoints_factory(cmd.cli_ctx, workspace_name)
23    managed_virtual_network_name = "default"
24    return client.get(managed_private_endpoint_name, managed_virtual_network_name)
25
26
27def list_Managed_private_endpoints(cmd, workspace_name):
28    client = cf_synapse_managedprivateendpoints_factory(cmd.cli_ctx, workspace_name)
29    managed_virtual_network_name = "default"
30    return client.list(managed_virtual_network_name)
31
32
33def delete_Managed_private_endpoints(cmd, workspace_name, managed_private_endpoint_name, no_wait=False):
34    client = cf_synapse_managedprivateendpoints_factory(cmd.cli_ctx, workspace_name)
35    managed_virtual_network_name = "default"
36    return sdk_no_wait(no_wait, client.delete, managed_private_endpoint_name, managed_virtual_network_name)
37