/// <summary>
        ///
        /// </summary>
        /// <param name="subscription"></param>
        /// <returns></returns>
        public static AsyncPageable <VirtualMachine> ListVirtualMachinesAsync(this SubscriptionOperations subscription)
        {
            var vmOperations = subscription.GetClient((baseUri, cred) => new ComputeManagementClient(baseUri, subscription.Id.Subscription, cred,
                                                                                                     subscription.ClientOptions.Convert <ComputeManagementClientOptions>())).VirtualMachines;
            var result = vmOperations.ListAllAsync();

            return(new PhWrappingAsyncPageable <Azure.ResourceManager.Compute.Models.VirtualMachine, VirtualMachine>(
                       result,
                       s => new VirtualMachine(subscription.ClientOptions, new VirtualMachineData(s))));
        }
        private static ComputeManagementClient GetComputeClient(SubscriptionOperations subscription)
        {
            Func <Uri, TokenCredential, ComputeManagementClient> ctor = (baseUri, cred) => new ComputeManagementClient(
                baseUri,
                subscription.Id.Subscription,
                cred,
                subscription.ClientOptions.Convert <ComputeManagementClientOptions>());
            var computeClient = subscription.GetClient(ctor);

            return(computeClient);
        }
예제 #3
0
        private static NetworkManagementClient GetNetworkClient(SubscriptionOperations subscription)
        {
            Func <Uri, TokenCredential, NetworkManagementClient> ctor = (baseUri, cred) => new NetworkManagementClient(
                subscription.Id.Subscription,
                baseUri,
                cred,
                subscription.ClientOptions.Convert <NetworkManagementClientOptions>());
            var networkClient = subscription.GetClient(ctor);

            return(networkClient);
        }