< Summary

Class:Azure.ResourceManager.Network.ExpressRouteCircuitsOperations
Assembly:Azure.ResourceManager.Network
File(s):C:\Git\azure-sdk-for-net\sdk\network\Azure.ResourceManager.Network\src\Generated\ExpressRouteCircuitsOperations.cs
Covered lines:0
Uncovered lines:284
Coverable lines:284
Total lines:716
Line coverage:0% (0 of 284)
Covered branches:0
Total branches:72
Branch coverage:0% (0 of 72)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
get_RestClient()-0%100%
.ctor()-0%100%
.ctor(...)-0%100%
GetAsync()-0%100%
Get(...)-0%100%
UpdateTagsAsync()-0%100%
UpdateTags(...)-0%100%
GetStatsAsync()-0%100%
GetStats(...)-0%100%
GetPeeringStatsAsync()-0%100%
GetPeeringStats(...)-0%100%
ListAsync(...)-0%0%
<ListAsync()-0%100%
<ListAsync()-0%100%
List(...)-0%0%
<ListAllAsync()-0%100%
<ListAllAsync()-0%100%
ListAllAsync(...)-0%100%
ListAll(...)-0%100%
StartDeleteAsync()-0%0%
StartDelete(...)-0%0%
StartCreateOrUpdateAsync()-0%0%
StartCreateOrUpdate(...)-0%0%
StartListArpTableAsync()-0%0%
StartListArpTable(...)-0%0%
StartListRoutesTableAsync()-0%0%
StartListRoutesTable(...)-0%0%
StartListRoutesTableSummaryAsync()-0%0%
StartListRoutesTableSummary(...)-0%0%

File(s)

C:\Git\azure-sdk-for-net\sdk\network\Azure.ResourceManager.Network\src\Generated\ExpressRouteCircuitsOperations.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System;
 9using System.Threading;
 10using System.Threading.Tasks;
 11using Azure;
 12using Azure.Core;
 13using Azure.Core.Pipeline;
 14using Azure.ResourceManager.Network.Models;
 15
 16namespace Azure.ResourceManager.Network
 17{
 18    /// <summary> The ExpressRouteCircuits service client. </summary>
 19    public partial class ExpressRouteCircuitsOperations
 20    {
 21        private readonly ClientDiagnostics _clientDiagnostics;
 22        private readonly HttpPipeline _pipeline;
 023        internal ExpressRouteCircuitsRestOperations RestClient { get; }
 24        /// <summary> Initializes a new instance of ExpressRouteCircuitsOperations for mocking. </summary>
 025        protected ExpressRouteCircuitsOperations()
 26        {
 027        }
 28        /// <summary> Initializes a new instance of ExpressRouteCircuitsOperations. </summary>
 29        /// <param name="clientDiagnostics"> The handler for diagnostic messaging in the client. </param>
 30        /// <param name="pipeline"> The HTTP pipeline for sending and receiving REST requests and responses. </param>
 31        /// <param name="subscriptionId"> The subscription credentials which uniquely identify the Microsoft Azure subsc
 32        /// <param name="endpoint"> server parameter. </param>
 033        internal ExpressRouteCircuitsOperations(ClientDiagnostics clientDiagnostics, HttpPipeline pipeline, string subsc
 34        {
 035            RestClient = new ExpressRouteCircuitsRestOperations(clientDiagnostics, pipeline, subscriptionId, endpoint);
 036            _clientDiagnostics = clientDiagnostics;
 037            _pipeline = pipeline;
 038        }
 39
 40        /// <summary> Gets information about the specified express route circuit. </summary>
 41        /// <param name="resourceGroupName"> The name of the resource group. </param>
 42        /// <param name="circuitName"> The name of express route circuit. </param>
 43        /// <param name="cancellationToken"> The cancellation token to use. </param>
 44        public virtual async Task<Response<ExpressRouteCircuit>> GetAsync(string resourceGroupName, string circuitName, 
 45        {
 046            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.Get");
 047            scope.Start();
 48            try
 49            {
 050                return await RestClient.GetAsync(resourceGroupName, circuitName, cancellationToken).ConfigureAwait(false
 51            }
 052            catch (Exception e)
 53            {
 054                scope.Failed(e);
 055                throw;
 56            }
 057        }
 58
 59        /// <summary> Gets information about the specified express route circuit. </summary>
 60        /// <param name="resourceGroupName"> The name of the resource group. </param>
 61        /// <param name="circuitName"> The name of express route circuit. </param>
 62        /// <param name="cancellationToken"> The cancellation token to use. </param>
 63        public virtual Response<ExpressRouteCircuit> Get(string resourceGroupName, string circuitName, CancellationToken
 64        {
 065            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.Get");
 066            scope.Start();
 67            try
 68            {
 069                return RestClient.Get(resourceGroupName, circuitName, cancellationToken);
 70            }
 071            catch (Exception e)
 72            {
 073                scope.Failed(e);
 074                throw;
 75            }
 076        }
 77
 78        /// <summary> Updates an express route circuit tags. </summary>
 79        /// <param name="resourceGroupName"> The name of the resource group. </param>
 80        /// <param name="circuitName"> The name of the circuit. </param>
 81        /// <param name="parameters"> Parameters supplied to update express route circuit tags. </param>
 82        /// <param name="cancellationToken"> The cancellation token to use. </param>
 83        public virtual async Task<Response<ExpressRouteCircuit>> UpdateTagsAsync(string resourceGroupName, string circui
 84        {
 085            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.UpdateTags");
 086            scope.Start();
 87            try
 88            {
 089                return await RestClient.UpdateTagsAsync(resourceGroupName, circuitName, parameters, cancellationToken).C
 90            }
 091            catch (Exception e)
 92            {
 093                scope.Failed(e);
 094                throw;
 95            }
 096        }
 97
 98        /// <summary> Updates an express route circuit tags. </summary>
 99        /// <param name="resourceGroupName"> The name of the resource group. </param>
 100        /// <param name="circuitName"> The name of the circuit. </param>
 101        /// <param name="parameters"> Parameters supplied to update express route circuit tags. </param>
 102        /// <param name="cancellationToken"> The cancellation token to use. </param>
 103        public virtual Response<ExpressRouteCircuit> UpdateTags(string resourceGroupName, string circuitName, TagsObject
 104        {
 0105            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.UpdateTags");
 0106            scope.Start();
 107            try
 108            {
 0109                return RestClient.UpdateTags(resourceGroupName, circuitName, parameters, cancellationToken);
 110            }
 0111            catch (Exception e)
 112            {
 0113                scope.Failed(e);
 0114                throw;
 115            }
 0116        }
 117
 118        /// <summary> Gets all the stats from an express route circuit in a resource group. </summary>
 119        /// <param name="resourceGroupName"> The name of the resource group. </param>
 120        /// <param name="circuitName"> The name of the express route circuit. </param>
 121        /// <param name="cancellationToken"> The cancellation token to use. </param>
 122        public virtual async Task<Response<ExpressRouteCircuitStats>> GetStatsAsync(string resourceGroupName, string cir
 123        {
 0124            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.GetStats");
 0125            scope.Start();
 126            try
 127            {
 0128                return await RestClient.GetStatsAsync(resourceGroupName, circuitName, cancellationToken).ConfigureAwait(
 129            }
 0130            catch (Exception e)
 131            {
 0132                scope.Failed(e);
 0133                throw;
 134            }
 0135        }
 136
 137        /// <summary> Gets all the stats from an express route circuit in a resource group. </summary>
 138        /// <param name="resourceGroupName"> The name of the resource group. </param>
 139        /// <param name="circuitName"> The name of the express route circuit. </param>
 140        /// <param name="cancellationToken"> The cancellation token to use. </param>
 141        public virtual Response<ExpressRouteCircuitStats> GetStats(string resourceGroupName, string circuitName, Cancell
 142        {
 0143            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.GetStats");
 0144            scope.Start();
 145            try
 146            {
 0147                return RestClient.GetStats(resourceGroupName, circuitName, cancellationToken);
 148            }
 0149            catch (Exception e)
 150            {
 0151                scope.Failed(e);
 0152                throw;
 153            }
 0154        }
 155
 156        /// <summary> Gets all stats from an express route circuit in a resource group. </summary>
 157        /// <param name="resourceGroupName"> The name of the resource group. </param>
 158        /// <param name="circuitName"> The name of the express route circuit. </param>
 159        /// <param name="peeringName"> The name of the peering. </param>
 160        /// <param name="cancellationToken"> The cancellation token to use. </param>
 161        public virtual async Task<Response<ExpressRouteCircuitStats>> GetPeeringStatsAsync(string resourceGroupName, str
 162        {
 0163            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.GetPeeringStats");
 0164            scope.Start();
 165            try
 166            {
 0167                return await RestClient.GetPeeringStatsAsync(resourceGroupName, circuitName, peeringName, cancellationTo
 168            }
 0169            catch (Exception e)
 170            {
 0171                scope.Failed(e);
 0172                throw;
 173            }
 0174        }
 175
 176        /// <summary> Gets all stats from an express route circuit in a resource group. </summary>
 177        /// <param name="resourceGroupName"> The name of the resource group. </param>
 178        /// <param name="circuitName"> The name of the express route circuit. </param>
 179        /// <param name="peeringName"> The name of the peering. </param>
 180        /// <param name="cancellationToken"> The cancellation token to use. </param>
 181        public virtual Response<ExpressRouteCircuitStats> GetPeeringStats(string resourceGroupName, string circuitName, 
 182        {
 0183            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.GetPeeringStats");
 0184            scope.Start();
 185            try
 186            {
 0187                return RestClient.GetPeeringStats(resourceGroupName, circuitName, peeringName, cancellationToken);
 188            }
 0189            catch (Exception e)
 190            {
 0191                scope.Failed(e);
 0192                throw;
 193            }
 0194        }
 195
 196        /// <summary> Gets all the express route circuits in a resource group. </summary>
 197        /// <param name="resourceGroupName"> The name of the resource group. </param>
 198        /// <param name="cancellationToken"> The cancellation token to use. </param>
 199        public virtual AsyncPageable<ExpressRouteCircuit> ListAsync(string resourceGroupName, CancellationToken cancella
 200        {
 0201            if (resourceGroupName == null)
 202            {
 0203                throw new ArgumentNullException(nameof(resourceGroupName));
 204            }
 205
 206            async Task<Page<ExpressRouteCircuit>> FirstPageFunc(int? pageSizeHint)
 207            {
 0208                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.List");
 0209                scope.Start();
 210                try
 211                {
 0212                    var response = await RestClient.ListAsync(resourceGroupName, cancellationToken).ConfigureAwait(false
 0213                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 214                }
 0215                catch (Exception e)
 216                {
 0217                    scope.Failed(e);
 0218                    throw;
 219                }
 0220            }
 221            async Task<Page<ExpressRouteCircuit>> NextPageFunc(string nextLink, int? pageSizeHint)
 222            {
 0223                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.List");
 0224                scope.Start();
 225                try
 226                {
 0227                    var response = await RestClient.ListNextPageAsync(nextLink, resourceGroupName, cancellationToken).Co
 0228                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 229                }
 0230                catch (Exception e)
 231                {
 0232                    scope.Failed(e);
 0233                    throw;
 234                }
 0235            }
 0236            return PageableHelpers.CreateAsyncEnumerable(FirstPageFunc, NextPageFunc);
 237        }
 238
 239        /// <summary> Gets all the express route circuits in a resource group. </summary>
 240        /// <param name="resourceGroupName"> The name of the resource group. </param>
 241        /// <param name="cancellationToken"> The cancellation token to use. </param>
 242        public virtual Pageable<ExpressRouteCircuit> List(string resourceGroupName, CancellationToken cancellationToken 
 243        {
 0244            if (resourceGroupName == null)
 245            {
 0246                throw new ArgumentNullException(nameof(resourceGroupName));
 247            }
 248
 249            Page<ExpressRouteCircuit> FirstPageFunc(int? pageSizeHint)
 250            {
 0251                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.List");
 0252                scope.Start();
 253                try
 254                {
 0255                    var response = RestClient.List(resourceGroupName, cancellationToken);
 0256                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 257                }
 0258                catch (Exception e)
 259                {
 0260                    scope.Failed(e);
 0261                    throw;
 262                }
 0263            }
 264            Page<ExpressRouteCircuit> NextPageFunc(string nextLink, int? pageSizeHint)
 265            {
 0266                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.List");
 0267                scope.Start();
 268                try
 269                {
 0270                    var response = RestClient.ListNextPage(nextLink, resourceGroupName, cancellationToken);
 0271                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 272                }
 0273                catch (Exception e)
 274                {
 0275                    scope.Failed(e);
 0276                    throw;
 277                }
 0278            }
 0279            return PageableHelpers.CreateEnumerable(FirstPageFunc, NextPageFunc);
 280        }
 281
 282        /// <summary> Gets all the express route circuits in a subscription. </summary>
 283        /// <param name="cancellationToken"> The cancellation token to use. </param>
 284        public virtual AsyncPageable<ExpressRouteCircuit> ListAllAsync(CancellationToken cancellationToken = default)
 285        {
 286            async Task<Page<ExpressRouteCircuit>> FirstPageFunc(int? pageSizeHint)
 287            {
 0288                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.ListAll");
 0289                scope.Start();
 290                try
 291                {
 0292                    var response = await RestClient.ListAllAsync(cancellationToken).ConfigureAwait(false);
 0293                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 294                }
 0295                catch (Exception e)
 296                {
 0297                    scope.Failed(e);
 0298                    throw;
 299                }
 0300            }
 301            async Task<Page<ExpressRouteCircuit>> NextPageFunc(string nextLink, int? pageSizeHint)
 302            {
 0303                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.ListAll");
 0304                scope.Start();
 305                try
 306                {
 0307                    var response = await RestClient.ListAllNextPageAsync(nextLink, cancellationToken).ConfigureAwait(fal
 0308                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 309                }
 0310                catch (Exception e)
 311                {
 0312                    scope.Failed(e);
 0313                    throw;
 314                }
 0315            }
 0316            return PageableHelpers.CreateAsyncEnumerable(FirstPageFunc, NextPageFunc);
 317        }
 318
 319        /// <summary> Gets all the express route circuits in a subscription. </summary>
 320        /// <param name="cancellationToken"> The cancellation token to use. </param>
 321        public virtual Pageable<ExpressRouteCircuit> ListAll(CancellationToken cancellationToken = default)
 322        {
 323            Page<ExpressRouteCircuit> FirstPageFunc(int? pageSizeHint)
 324            {
 0325                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.ListAll");
 0326                scope.Start();
 327                try
 328                {
 0329                    var response = RestClient.ListAll(cancellationToken);
 0330                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 331                }
 0332                catch (Exception e)
 333                {
 0334                    scope.Failed(e);
 0335                    throw;
 336                }
 0337            }
 338            Page<ExpressRouteCircuit> NextPageFunc(string nextLink, int? pageSizeHint)
 339            {
 0340                using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.ListAll");
 0341                scope.Start();
 342                try
 343                {
 0344                    var response = RestClient.ListAllNextPage(nextLink, cancellationToken);
 0345                    return Page.FromValues(response.Value.Value, response.Value.NextLink, response.GetRawResponse());
 346                }
 0347                catch (Exception e)
 348                {
 0349                    scope.Failed(e);
 0350                    throw;
 351                }
 0352            }
 0353            return PageableHelpers.CreateEnumerable(FirstPageFunc, NextPageFunc);
 354        }
 355
 356        /// <summary> Deletes the specified express route circuit. </summary>
 357        /// <param name="resourceGroupName"> The name of the resource group. </param>
 358        /// <param name="circuitName"> The name of the express route circuit. </param>
 359        /// <param name="cancellationToken"> The cancellation token to use. </param>
 360        public virtual async Task<ExpressRouteCircuitsDeleteOperation> StartDeleteAsync(string resourceGroupName, string
 361        {
 0362            if (resourceGroupName == null)
 363            {
 0364                throw new ArgumentNullException(nameof(resourceGroupName));
 365            }
 0366            if (circuitName == null)
 367            {
 0368                throw new ArgumentNullException(nameof(circuitName));
 369            }
 370
 0371            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartDelete");
 0372            scope.Start();
 373            try
 374            {
 0375                var originalResponse = await RestClient.DeleteAsync(resourceGroupName, circuitName, cancellationToken).C
 0376                return new ExpressRouteCircuitsDeleteOperation(_clientDiagnostics, _pipeline, RestClient.CreateDeleteReq
 377            }
 0378            catch (Exception e)
 379            {
 0380                scope.Failed(e);
 0381                throw;
 382            }
 0383        }
 384
 385        /// <summary> Deletes the specified express route circuit. </summary>
 386        /// <param name="resourceGroupName"> The name of the resource group. </param>
 387        /// <param name="circuitName"> The name of the express route circuit. </param>
 388        /// <param name="cancellationToken"> The cancellation token to use. </param>
 389        public virtual ExpressRouteCircuitsDeleteOperation StartDelete(string resourceGroupName, string circuitName, Can
 390        {
 0391            if (resourceGroupName == null)
 392            {
 0393                throw new ArgumentNullException(nameof(resourceGroupName));
 394            }
 0395            if (circuitName == null)
 396            {
 0397                throw new ArgumentNullException(nameof(circuitName));
 398            }
 399
 0400            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartDelete");
 0401            scope.Start();
 402            try
 403            {
 0404                var originalResponse = RestClient.Delete(resourceGroupName, circuitName, cancellationToken);
 0405                return new ExpressRouteCircuitsDeleteOperation(_clientDiagnostics, _pipeline, RestClient.CreateDeleteReq
 406            }
 0407            catch (Exception e)
 408            {
 0409                scope.Failed(e);
 0410                throw;
 411            }
 0412        }
 413
 414        /// <summary> Creates or updates an express route circuit. </summary>
 415        /// <param name="resourceGroupName"> The name of the resource group. </param>
 416        /// <param name="circuitName"> The name of the circuit. </param>
 417        /// <param name="parameters"> Parameters supplied to the create or update express route circuit operation. </par
 418        /// <param name="cancellationToken"> The cancellation token to use. </param>
 419        public virtual async Task<ExpressRouteCircuitsCreateOrUpdateOperation> StartCreateOrUpdateAsync(string resourceG
 420        {
 0421            if (resourceGroupName == null)
 422            {
 0423                throw new ArgumentNullException(nameof(resourceGroupName));
 424            }
 0425            if (circuitName == null)
 426            {
 0427                throw new ArgumentNullException(nameof(circuitName));
 428            }
 0429            if (parameters == null)
 430            {
 0431                throw new ArgumentNullException(nameof(parameters));
 432            }
 433
 0434            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartCreateOrUpdate");
 0435            scope.Start();
 436            try
 437            {
 0438                var originalResponse = await RestClient.CreateOrUpdateAsync(resourceGroupName, circuitName, parameters, 
 0439                return new ExpressRouteCircuitsCreateOrUpdateOperation(_clientDiagnostics, _pipeline, RestClient.CreateC
 440            }
 0441            catch (Exception e)
 442            {
 0443                scope.Failed(e);
 0444                throw;
 445            }
 0446        }
 447
 448        /// <summary> Creates or updates an express route circuit. </summary>
 449        /// <param name="resourceGroupName"> The name of the resource group. </param>
 450        /// <param name="circuitName"> The name of the circuit. </param>
 451        /// <param name="parameters"> Parameters supplied to the create or update express route circuit operation. </par
 452        /// <param name="cancellationToken"> The cancellation token to use. </param>
 453        public virtual ExpressRouteCircuitsCreateOrUpdateOperation StartCreateOrUpdate(string resourceGroupName, string 
 454        {
 0455            if (resourceGroupName == null)
 456            {
 0457                throw new ArgumentNullException(nameof(resourceGroupName));
 458            }
 0459            if (circuitName == null)
 460            {
 0461                throw new ArgumentNullException(nameof(circuitName));
 462            }
 0463            if (parameters == null)
 464            {
 0465                throw new ArgumentNullException(nameof(parameters));
 466            }
 467
 0468            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartCreateOrUpdate");
 0469            scope.Start();
 470            try
 471            {
 0472                var originalResponse = RestClient.CreateOrUpdate(resourceGroupName, circuitName, parameters, cancellatio
 0473                return new ExpressRouteCircuitsCreateOrUpdateOperation(_clientDiagnostics, _pipeline, RestClient.CreateC
 474            }
 0475            catch (Exception e)
 476            {
 0477                scope.Failed(e);
 0478                throw;
 479            }
 0480        }
 481
 482        /// <summary> Gets the currently advertised ARP table associated with the express route circuit in a resource gr
 483        /// <param name="resourceGroupName"> The name of the resource group. </param>
 484        /// <param name="circuitName"> The name of the express route circuit. </param>
 485        /// <param name="peeringName"> The name of the peering. </param>
 486        /// <param name="devicePath"> The path of the device. </param>
 487        /// <param name="cancellationToken"> The cancellation token to use. </param>
 488        public virtual async Task<ExpressRouteCircuitsListArpTableOperation> StartListArpTableAsync(string resourceGroup
 489        {
 0490            if (resourceGroupName == null)
 491            {
 0492                throw new ArgumentNullException(nameof(resourceGroupName));
 493            }
 0494            if (circuitName == null)
 495            {
 0496                throw new ArgumentNullException(nameof(circuitName));
 497            }
 0498            if (peeringName == null)
 499            {
 0500                throw new ArgumentNullException(nameof(peeringName));
 501            }
 0502            if (devicePath == null)
 503            {
 0504                throw new ArgumentNullException(nameof(devicePath));
 505            }
 506
 0507            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartListArpTable");
 0508            scope.Start();
 509            try
 510            {
 0511                var originalResponse = await RestClient.ListArpTableAsync(resourceGroupName, circuitName, peeringName, d
 0512                return new ExpressRouteCircuitsListArpTableOperation(_clientDiagnostics, _pipeline, RestClient.CreateLis
 513            }
 0514            catch (Exception e)
 515            {
 0516                scope.Failed(e);
 0517                throw;
 518            }
 0519        }
 520
 521        /// <summary> Gets the currently advertised ARP table associated with the express route circuit in a resource gr
 522        /// <param name="resourceGroupName"> The name of the resource group. </param>
 523        /// <param name="circuitName"> The name of the express route circuit. </param>
 524        /// <param name="peeringName"> The name of the peering. </param>
 525        /// <param name="devicePath"> The path of the device. </param>
 526        /// <param name="cancellationToken"> The cancellation token to use. </param>
 527        public virtual ExpressRouteCircuitsListArpTableOperation StartListArpTable(string resourceGroupName, string circ
 528        {
 0529            if (resourceGroupName == null)
 530            {
 0531                throw new ArgumentNullException(nameof(resourceGroupName));
 532            }
 0533            if (circuitName == null)
 534            {
 0535                throw new ArgumentNullException(nameof(circuitName));
 536            }
 0537            if (peeringName == null)
 538            {
 0539                throw new ArgumentNullException(nameof(peeringName));
 540            }
 0541            if (devicePath == null)
 542            {
 0543                throw new ArgumentNullException(nameof(devicePath));
 544            }
 545
 0546            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartListArpTable");
 0547            scope.Start();
 548            try
 549            {
 0550                var originalResponse = RestClient.ListArpTable(resourceGroupName, circuitName, peeringName, devicePath, 
 0551                return new ExpressRouteCircuitsListArpTableOperation(_clientDiagnostics, _pipeline, RestClient.CreateLis
 552            }
 0553            catch (Exception e)
 554            {
 0555                scope.Failed(e);
 0556                throw;
 557            }
 0558        }
 559
 560        /// <summary> Gets the currently advertised routes table associated with the express route circuit in a resource
 561        /// <param name="resourceGroupName"> The name of the resource group. </param>
 562        /// <param name="circuitName"> The name of the express route circuit. </param>
 563        /// <param name="peeringName"> The name of the peering. </param>
 564        /// <param name="devicePath"> The path of the device. </param>
 565        /// <param name="cancellationToken"> The cancellation token to use. </param>
 566        public virtual async Task<ExpressRouteCircuitsListRoutesTableOperation> StartListRoutesTableAsync(string resourc
 567        {
 0568            if (resourceGroupName == null)
 569            {
 0570                throw new ArgumentNullException(nameof(resourceGroupName));
 571            }
 0572            if (circuitName == null)
 573            {
 0574                throw new ArgumentNullException(nameof(circuitName));
 575            }
 0576            if (peeringName == null)
 577            {
 0578                throw new ArgumentNullException(nameof(peeringName));
 579            }
 0580            if (devicePath == null)
 581            {
 0582                throw new ArgumentNullException(nameof(devicePath));
 583            }
 584
 0585            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartListRoutesTable");
 0586            scope.Start();
 587            try
 588            {
 0589                var originalResponse = await RestClient.ListRoutesTableAsync(resourceGroupName, circuitName, peeringName
 0590                return new ExpressRouteCircuitsListRoutesTableOperation(_clientDiagnostics, _pipeline, RestClient.Create
 591            }
 0592            catch (Exception e)
 593            {
 0594                scope.Failed(e);
 0595                throw;
 596            }
 0597        }
 598
 599        /// <summary> Gets the currently advertised routes table associated with the express route circuit in a resource
 600        /// <param name="resourceGroupName"> The name of the resource group. </param>
 601        /// <param name="circuitName"> The name of the express route circuit. </param>
 602        /// <param name="peeringName"> The name of the peering. </param>
 603        /// <param name="devicePath"> The path of the device. </param>
 604        /// <param name="cancellationToken"> The cancellation token to use. </param>
 605        public virtual ExpressRouteCircuitsListRoutesTableOperation StartListRoutesTable(string resourceGroupName, strin
 606        {
 0607            if (resourceGroupName == null)
 608            {
 0609                throw new ArgumentNullException(nameof(resourceGroupName));
 610            }
 0611            if (circuitName == null)
 612            {
 0613                throw new ArgumentNullException(nameof(circuitName));
 614            }
 0615            if (peeringName == null)
 616            {
 0617                throw new ArgumentNullException(nameof(peeringName));
 618            }
 0619            if (devicePath == null)
 620            {
 0621                throw new ArgumentNullException(nameof(devicePath));
 622            }
 623
 0624            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartListRoutesTable");
 0625            scope.Start();
 626            try
 627            {
 0628                var originalResponse = RestClient.ListRoutesTable(resourceGroupName, circuitName, peeringName, devicePat
 0629                return new ExpressRouteCircuitsListRoutesTableOperation(_clientDiagnostics, _pipeline, RestClient.Create
 630            }
 0631            catch (Exception e)
 632            {
 0633                scope.Failed(e);
 0634                throw;
 635            }
 0636        }
 637
 638        /// <summary> Gets the currently advertised routes table summary associated with the express route circuit in a 
 639        /// <param name="resourceGroupName"> The name of the resource group. </param>
 640        /// <param name="circuitName"> The name of the express route circuit. </param>
 641        /// <param name="peeringName"> The name of the peering. </param>
 642        /// <param name="devicePath"> The path of the device. </param>
 643        /// <param name="cancellationToken"> The cancellation token to use. </param>
 644        public virtual async Task<ExpressRouteCircuitsListRoutesTableSummaryOperation> StartListRoutesTableSummaryAsync(
 645        {
 0646            if (resourceGroupName == null)
 647            {
 0648                throw new ArgumentNullException(nameof(resourceGroupName));
 649            }
 0650            if (circuitName == null)
 651            {
 0652                throw new ArgumentNullException(nameof(circuitName));
 653            }
 0654            if (peeringName == null)
 655            {
 0656                throw new ArgumentNullException(nameof(peeringName));
 657            }
 0658            if (devicePath == null)
 659            {
 0660                throw new ArgumentNullException(nameof(devicePath));
 661            }
 662
 0663            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartListRoutesTableSummary
 0664            scope.Start();
 665            try
 666            {
 0667                var originalResponse = await RestClient.ListRoutesTableSummaryAsync(resourceGroupName, circuitName, peer
 0668                return new ExpressRouteCircuitsListRoutesTableSummaryOperation(_clientDiagnostics, _pipeline, RestClient
 669            }
 0670            catch (Exception e)
 671            {
 0672                scope.Failed(e);
 0673                throw;
 674            }
 0675        }
 676
 677        /// <summary> Gets the currently advertised routes table summary associated with the express route circuit in a 
 678        /// <param name="resourceGroupName"> The name of the resource group. </param>
 679        /// <param name="circuitName"> The name of the express route circuit. </param>
 680        /// <param name="peeringName"> The name of the peering. </param>
 681        /// <param name="devicePath"> The path of the device. </param>
 682        /// <param name="cancellationToken"> The cancellation token to use. </param>
 683        public virtual ExpressRouteCircuitsListRoutesTableSummaryOperation StartListRoutesTableSummary(string resourceGr
 684        {
 0685            if (resourceGroupName == null)
 686            {
 0687                throw new ArgumentNullException(nameof(resourceGroupName));
 688            }
 0689            if (circuitName == null)
 690            {
 0691                throw new ArgumentNullException(nameof(circuitName));
 692            }
 0693            if (peeringName == null)
 694            {
 0695                throw new ArgumentNullException(nameof(peeringName));
 696            }
 0697            if (devicePath == null)
 698            {
 0699                throw new ArgumentNullException(nameof(devicePath));
 700            }
 701
 0702            using var scope = _clientDiagnostics.CreateScope("ExpressRouteCircuitsOperations.StartListRoutesTableSummary
 0703            scope.Start();
 704            try
 705            {
 0706                var originalResponse = RestClient.ListRoutesTableSummary(resourceGroupName, circuitName, peeringName, de
 0707                return new ExpressRouteCircuitsListRoutesTableSummaryOperation(_clientDiagnostics, _pipeline, RestClient
 708            }
 0709            catch (Exception e)
 710            {
 0711                scope.Failed(e);
 0712                throw;
 713            }
 0714        }
 715    }
 716}