Beispiel #1
0
 /// <summary>
 /// Creates new instance from the store client.
 /// </summary>
 /// <param name="subscriptionId">The Windows Azure subscription id</param>
 /// <param name="storeEndpointUri">The service management endpoint uri</param>
 /// <param name="cert">The authentication certificate</param>
 /// <param name="logger">The logger for http request/response</param>
 /// <param name="serviceManagementChannel">The service management channel</param>
 public StoreClient(WindowsAzureSubscription subscription)
     : this(
         subscription,
         subscription.CreateClient <ComputeManagementClient>(),
         subscription.CreateClient <StoreManagementClient>(),
         new MarketplaceClient(),
         subscription.CreateClient <ManagementClient>())
 {
 }
        /// <summary>
        /// Creates new Scheduler Management Convenience Client
        /// </summary>
        /// <param name="subscription">Subscription containing websites to manipulate</param>
        public SchedulerMgmntClient(WindowsAzureSubscription subscription)
        {
            currentSubscription       = subscription;
            csmClient                 = subscription.CreateClient <CloudServiceManagementClient>();
            schedulerManagementClient = subscription.CreateClient <SchedulerManagementClient>();

            //Get RP properties
            IDictionary <string, string> dict = schedulerManagementClient.GetResourceProviderProperties().Properties;

            //Get available regions
            string val = string.Empty;

            if (dict.TryGetValue(SupportedRegionsKey, out val))
            {
                AvailableRegions = new List <string>();
                val.Split(',').ToList().ForEach(s => AvailableRegions.Add(s));
            }

            //Store global counts for max jobs and min recurrence for each plan
            if (dict.TryGetValue(FreeMaxJobCountKey, out val))
            {
                FreeMaxJobCountValue = Convert.ToInt32(dict[FreeMaxJobCountKey]);
            }

            if (dict.TryGetValue(FreeMinRecurrenceKey, out val))
            {
                FreeMinRecurrenceValue = TimeSpan.Parse(dict[FreeMinRecurrenceKey]);
            }

            if (dict.TryGetValue(StandardMaxJobCountKey, out val))
            {
                StandardMaxJobCountValue = Convert.ToInt32(dict[StandardMaxJobCountKey]);
            }

            if (dict.TryGetValue(StandardMinRecurrenceKey, out val))
            {
                StandardMinRecurrenceValue = TimeSpan.Parse(dict[StandardMinRecurrenceKey]);
            }

            if (dict.TryGetValue(PremiumMaxJobCountKey, out val))
            {
                PremiumMaxJobCountValue = Convert.ToInt32(dict[PremiumMaxJobCountKey]);
            }

            if (dict.TryGetValue(PremiumMinRecurrenceKey, out val))
            {
                PremiumMinRecurrenceValue = TimeSpan.Parse(dict[PremiumMinRecurrenceKey]);
            }
        }
        /// <summary>
        /// Creates new instance from CloudServiceClient.
        /// </summary>
        /// <param name="subscription">The subscription data</param>
        /// <param name="currentLocation">Directory to do operations in</param>
        /// <param name="debugStream">Action used to log http requests/responses</param>
        /// <param name="verboseStream">Action used to log detailed client progress</param>
        /// <param name="warningStream">Action used to log warning messages</param>
        public CloudServiceClient(
            WindowsAzureSubscription subscription,
            string currentLocation        = null,
            Action <string> debugStream   = null,
            Action <string> verboseStream = null,
            Action <string> warningStream = null)
            : this(currentLocation, debugStream, warningStream, verboseStream)
        {
            Subscription     = subscription;
            CloudBlobUtility = new CloudBlobUtility();

            ManagementClient = subscription.CreateClient <ManagementClient>();
            StorageClient    = subscription.CreateClient <StorageManagementClient>();
            ComputeClient    = subscription.CreateClient <ComputeManagementClient>();
        }
        internal static SubscriptionDataExtended ToExtendedData(this WindowsAzureSubscription subscription)
        {
            using (var client = subscription.CreateClient <ManagementClient>())
            {
                var response = client.Subscriptions.Get();

                SubscriptionDataExtended result = new SubscriptionDataExtended
                {
                    AccountAdminLiveEmailId  = response.AccountAdminLiveEmailId,
                    ActiveDirectoryUserId    = subscription.ActiveDirectoryUserId,
                    CurrentCoreCount         = response.CurrentCoreCount,
                    CurrentHostedServices    = response.CurrentHostedServices,
                    CurrentDnsServers        = 0, // TODO: Add to spec
                    CurrentLocalNetworkSites = 0, // TODO: Add to spec
                    MaxCoreCount             = response.MaximumCoreCount,
                    MaxDnsServers            = response.MaximumDnsServers,
                    MaxHostedServices        = response.MaximumHostedServices,
                    MaxVirtualNetworkSites   = response.MaximumVirtualNetworkSites,
                    MaxStorageAccounts       = response.MaximumStorageAccounts,
                    ServiceAdminLiveEmailId  = response.ServiceAdminLiveEmailId,
                    SubscriptionRealName     = response.SubscriptionName,
                    SubscriptionStatus       = response.SubscriptionStatus.ToString(),
                    SubscriptionName         = subscription.SubscriptionName,
                    SubscriptionId           = subscription.SubscriptionId,
                    ServiceEndpoint          = subscription.ServiceEndpoint,
                    ResourceManagerEndpoint  = subscription.ResourceManagerEndpoint,
                    IsDefault   = subscription.IsDefault,
                    Certificate = subscription.Certificate,
                    CurrentStorageAccountName = subscription.CurrentStorageAccountName
                };

                return(result);
            }
        }
 /// <summary>
 /// Creates new WebsitesClient
 /// </summary>
 /// <param name="subscription">Subscription containing websites to manipulate</param>
 /// <param name="logger">The logger action</param>
 public WebsitesClient(WindowsAzureSubscription subscription, Action<string> logger)
 {
     Logger = logger;
     cloudServiceClient = new CloudServiceClient(subscription, debugStream: logger);
     WebsiteManagementClient = subscription.CreateClient<WebSiteManagementClient>();
     this.subscription = subscription;
 }
Beispiel #6
0
 /// <summary>
 /// Creates new ResourceManagementClient
 /// </summary>
 /// <param name="subscription">Subscription containing resources to manipulate</param>
 public ResourcesClient(WindowsAzureSubscription subscription)
     : this(
         subscription.CreateClientFromResourceManagerEndpoint <ResourceManagementClient>(),
         new StorageClientWrapper(subscription.CreateClient <StorageManagementClient>()),
         new GalleryTemplatesClient(subscription),
         subscription.CreateClientFromResourceManagerEndpoint <EventsClient>())
 {
 }
Beispiel #7
0
        /// <summary>
        /// Retrieve the SQL Management client for the currently selected subscription.
        /// </summary>
        /// <returns>The SQL Management client for the currently selected subscription.</returns>
        public static SqlManagementClient GetCurrentSqlClient()
        {
            // Get the SQL management client for the current subscription
            WindowsAzureSubscription subscription = WindowsAzureProfile.Instance.CurrentSubscription;

            SqlDatabaseCmdletBase.ValidateSubscription(subscription);
            return(subscription.CreateClient <SqlManagementClient>());
        }
        /// <summary>
        /// Creates new ResourceManagementClient
        /// </summary>
        /// <param name="subscription">Subscription containing resources to manipulate</param>
        public ResourcesClient(WindowsAzureSubscription subscription)
            : this(
                subscription.CreateClientFromResourceManagerEndpoint<ResourceManagementClient>(),
                new StorageClientWrapper(subscription.CreateClient<StorageManagementClient>()),
                new GalleryTemplatesClient(subscription),
                subscription.CreateClientFromResourceManagerEndpoint<EventsClient>())
        {

        }
        /// <summary>
        /// Retrieve the SQL Management client for the currently selected subscription, adding the session and request
        /// id tracing headers for the current cmdlet invocation.
        /// </summary>
        /// <returns>The SQL Management client for the currently selected subscription.</returns>
        protected SqlManagementClient GetCurrentSqlClient()
        {
            // Get the SQL management client for the current subscription
            WindowsAzureSubscription subscription = WindowsAzureProfile.Instance.CurrentSubscription;

            SqlDatabaseCmdletBase.ValidateSubscription(subscription);
            SqlManagementClient client = subscription.CreateClient <SqlManagementClient>();

            client.HttpClient.DefaultRequestHeaders.Add(Constants.ClientSessionIdHeaderName, clientSessionId);
            client.HttpClient.DefaultRequestHeaders.Add(Constants.ClientRequestIdHeaderName, clientRequestId);
            return(client);
        }
        /// <summary>
        /// Creates new Scheduler Management Convenience Client
        /// </summary>
        /// <param name="subscription">Subscription containing websites to manipulate</param>
        public SchedulerMgmntClient(WindowsAzureSubscription subscription)
        {
            currentSubscription = subscription;
            csmClient = subscription.CreateClient<CloudServiceManagementClient>();
            schedulerManagementClient = subscription.CreateClient<SchedulerManagementClient>();

            //Get RP properties
            IDictionary<string, string> dict = schedulerManagementClient.GetResourceProviderProperties().Properties;

            //Get available regions
            string val = string.Empty;
            if(dict.TryGetValue(SupportedRegionsKey, out val))
            {
                AvailableRegions = new List<string>();
                val.Split(',').ToList().ForEach(s => AvailableRegions.Add(s));
            }            

            //Store global counts for max jobs and min recurrence for each plan     
            if(dict.TryGetValue(FreeMaxJobCountKey, out val))
                FreeMaxJobCountValue = Convert.ToInt32(dict[FreeMaxJobCountKey]);

            if (dict.TryGetValue(FreeMinRecurrenceKey, out val))
                FreeMinRecurrenceValue = TimeSpan.Parse(dict[FreeMinRecurrenceKey]);

            if (dict.TryGetValue(StandardMaxJobCountKey, out val))
                StandardMaxJobCountValue = Convert.ToInt32(dict[StandardMaxJobCountKey]);

            if (dict.TryGetValue(StandardMinRecurrenceKey, out val))
                StandardMinRecurrenceValue = TimeSpan.Parse(dict[StandardMinRecurrenceKey]);

            if (dict.TryGetValue(PremiumMaxJobCountKey, out val))
                PremiumMaxJobCountValue = Convert.ToInt32(dict[PremiumMaxJobCountKey]);

            if (dict.TryGetValue(PremiumMinRecurrenceKey, out val))
                PremiumMinRecurrenceValue = TimeSpan.Parse(dict[PremiumMinRecurrenceKey]);
        }
Beispiel #11
0
 /// <summary>
 ///     Creates new MediaServicesClient.
 /// </summary>
 /// <param name="subscription">The Microsoft Azure subscription data object</param>
 /// <param name="logger">The logger action</param>
 public MediaServicesClient(WindowsAzureSubscription subscription, Action <string> logger)
     : this(logger, subscription.CreateClient <MediaServicesManagementClient>(), subscription.CreateClient <StorageManagementClient>())
 {
 }
 public AutomationClient(WindowsAzureSubscription subscription)
     : this(
         subscription,
         subscription.CreateClient<AutomationManagementClient>())
 {
 }
 /// <summary>
 /// Creates new instance from ServiceBusClientExtensions
 /// </summary>
 /// <param name="subscription"></param>
 /// <param name="logger">The logger action</param>
 public ServiceBusClientExtensions(WindowsAzureSubscription subscription)
 {
     subscriptionId = subscription.SubscriptionId;
     Subscription = subscription;
     ServiceBusClient = Subscription.CreateClient<ServiceBusManagementClient>();
 }
 /// <summary>
 /// Creates new Scheduler Management Convenience Client
 /// </summary>
 /// <param name="subscription">Subscription containing websites to manipulate</param>
 public SchedulerMgmntClient(WindowsAzureSubscription subscription)
 {
     csmClient = subscription.CreateClient <CloudServiceManagementClient>();
     schedulerManagementClient = subscription.CreateClient <SchedulerManagementClient>();
 }
 public TrafficManagerClient(WindowsAzureSubscription subscription)
 {
     this.Client = subscription.CreateClient<TrafficManagerManagementClient>();
 }
 public TrafficManagerClient(WindowsAzureSubscription subscription)
 {
     this.Client = subscription.CreateClient <TrafficManagerManagementClient>();
 }
Beispiel #17
0
 /// <summary>
 /// Creates new ExpressRouteClient
 /// </summary>
 /// <param name="subscription">Subscription containing websites to manipulate</param>
 /// <param name="logger">The logger action</param>
 public ExpressRouteClient(WindowsAzureSubscription subscription)
 {
     Client = subscription.CreateClient <ExpressRouteManagementClient>();
 }
 public AutomationClient(WindowsAzureSubscription subscription)
     : this(
         subscription,
         subscription.CreateClient <AutomationManagementClient>())
 {
 }
 /// <summary>
 /// Creates new ExpressRouteClient
 /// </summary>
 /// <param name="subscription">Subscription containing websites to manipulate</param>
 /// <param name="logger">The logger action</param>
 public ExpressRouteClient(WindowsAzureSubscription subscription)
 {
     Client = subscription.CreateClient<ExpressRouteManagementClient>();
 }
 /// <summary>
 /// Creates new Scheduler Management Convenience Client
 /// </summary>
 /// <param name="subscription">Subscription containing websites to manipulate</param>
 public SchedulerMgmntClient(WindowsAzureSubscription subscription)
 {
     csmClient = subscription.CreateClient<CloudServiceManagementClient>();
     schedulerManagementClient = subscription.CreateClient<SchedulerManagementClient>();
 }
Beispiel #21
0
 /// <summary>
 /// Creates new instance from the store client.
 /// </summary>
 /// <param name="subscriptionId">The Windows Azure subscription id</param>
 /// <param name="storeEndpointUri">The service management endpoint uri</param>
 /// <param name="cert">The authentication certificate</param>
 /// <param name="logger">The logger for http request/response</param>
 /// <param name="serviceManagementChannel">The service management channel</param>
 public StoreClient(WindowsAzureSubscription subscription)
     : this(
         subscription,
         subscription.CreateClient<ComputeManagementClient>(),
         subscription.CreateClient<StoreManagementClient>(),
         new MarketplaceClient(),
         subscription.CreateClient<ManagementClient>()) { }
Beispiel #22
0
 /// <summary>
 /// Creates new instance from ServiceBusClientExtensions
 /// </summary>
 /// <param name="subscription"></param>
 /// <param name="logger">The logger action</param>
 public ServiceBusClientExtensions(WindowsAzureSubscription subscription)
 {
     subscriptionId   = subscription.SubscriptionId;
     Subscription     = subscription;
     ServiceBusClient = Subscription.CreateClient <ServiceBusManagementClient>();
 }
        /// <summary>
        /// Creates new instance from CloudServiceClient.
        /// </summary>
        /// <param name="subscription">The subscription data</param>
        /// <param name="currentLocation">Directory to do operations in</param>
        /// <param name="debugStream">Action used to log http requests/responses</param>
        /// <param name="verboseStream">Action used to log detailed client progress</param>
        /// <param name="warningStream">Action used to log warning messages</param>
        public CloudServiceClient(
            WindowsAzureSubscription subscription,
            string currentLocation = null,
            Action<string> debugStream = null,
            Action<string> verboseStream = null,
            Action<string> warningStream = null)
            : this(currentLocation, debugStream, warningStream, verboseStream)
        {
            Subscription = subscription;
            CloudBlobUtility = new CloudBlobUtility();

            ManagementClient = subscription.CreateClient<ManagementClient>();
            StorageClient = subscription.CreateClient<StorageManagementClient>();
            ComputeClient = subscription.CreateClient<ComputeManagementClient>();
        }
 public PSCacheClient(WindowsAzureSubscription currentSubscription)
 {
     client = currentSubscription.CreateClient <ManagedCacheClient>();
 }
 public PSCacheClient(WindowsAzureSubscription currentSubscription)
 {
     client = currentSubscription.CreateClient<ManagedCacheClient>();
 }
Beispiel #26
0
 /// <summary>
 /// Creates new WebsitesClient
 /// </summary>
 /// <param name="subscription">Subscription containing websites to manipulate</param>
 /// <param name="logger">The logger action</param>
 public WebsitesClient(WindowsAzureSubscription subscription, Action <string> logger)
 {
     Logger                  = logger;
     cloudServiceClient      = new CloudServiceClient(subscription, debugStream: logger);
     WebsiteManagementClient = subscription.CreateClient <WebSiteManagementClient>();
 }