예제 #1
0
        private void New(string publishSettingsPath, GlobalPathInfo paths)
        {
            Validate.ValidateNullArgument(paths, string.Empty);
            Validate.ValidateStringIsNullOrEmpty(paths.AzureSdkDirectory, Resources.AzureSdkDirectoryName);
            Validate.ValidateFileFull(publishSettingsPath, Resources.PublishSettings);
            Validate.ValidateFileExtention(publishSettingsPath, Resources.PublishSettingsFileExtention);

            PublishSettings = General.DeserializeXmlFile <PublishData>(publishSettingsPath, string.Format(Resources.InvalidPublishSettingsSchema, publishSettingsPath));
            Certificate     = new X509Certificate2(Convert.FromBase64String(PublishSettings.Items[0].ManagementCertificate), string.Empty);
            PublishSettings.Items[0].ManagementCertificate = Certificate.Thumbprint;
            GlobalSettings = new ServiceSettings();

            General.AddCertificateToStore(Certificate);
        }
예제 #2
0
        internal void Save()
        {
            // Create new Azure directory if doesn't exist
            //
            Directory.CreateDirectory(GlobalPaths.AzureDirectory);

            // Save *.publishsettings
            //
            General.SerializeXmlFile(PublishSettings, GlobalPaths.PublishSettingsFile);

            // Save certificate in the store
            //
            General.AddCertificateToStore(Certificate);

            // TODO: Save certificate in the file system

            // Save service configuration
            //
            File.WriteAllText(GlobalPaths.ServiceConfigurationFile, new JavaScriptSerializer().Serialize(ServiceConfiguration));

            // Save subscriptions
            //
            SubscriptionManager.SaveSubscriptions(GlobalPaths.SubscriptionsDataFile);
        }