/// <summary> /// Initializes client properties. /// </summary> private void Initialize() { StorageAccounts = new StorageAccounts(this); Usage = new UsageOperations(this); BaseUri = new System.Uri("https://management.azure.com"); SerializationSettings = new JsonSerializerSettings { Formatting = Newtonsoft.Json.Formatting.Indented, DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat, DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize, ContractResolver = new ReadOnlyJsonContractResolver(), Converters = new List <JsonConverter> { new Iso8601TimeSpanConverter() } }; SerializationSettings.Converters.Add(new TransformationJsonConverter()); DeserializationSettings = new JsonSerializerSettings { DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat, DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize, ContractResolver = new ReadOnlyJsonContractResolver(), Converters = new List <JsonConverter> { new Iso8601TimeSpanConverter() } }; CustomInitialize(); DeserializationSettings.Converters.Add(new TransformationJsonConverter()); }
async Task <bool> ExecuteLoadStorageAccountsAsync(bool force = false) { if (IsBusy) { return(false); } try { IsBusy = true; NoStorageAccountsFound = false; var realm = App.GetRealm(); if (force) { var subs = realm.All <Subscription>().AsRealmCollection(); foreach (var sub in subs.Where(sub => sub.IsSubOn == false)) { realm.Write(() => { var sas = realm.All <StorageAccountExt>().Where(sa => sa.SubscriptionName == sub.Name); realm.RemoveRange(sas); }); } foreach (var sub in subs.Where(sub => sub.IsSubOn)) { await AzureManagementHelper.GetStorageAccountsForSubscription( sub.Id, signOnClient.GetTokenForTenant(sub.TenantId), sub.Name, sub.TenantId); } } var storageAccounts = realm.All <StorageAccountExt>(); storageAccounts.SubscribeForNotifications((sender, changes, error) => { Console.WriteLine("Change to StorageAccount"); }); StorageAccounts.ReplaceRange(storageAccounts.OrderBy(sa => sa.Name)); StorageAccountsGrouped.ReplaceRange(StorageAccounts.FilterBySubscription()); if (StorageAccounts.Count == 0) { NoStorageAccountsFoundMessage = "No Storage Accounts Found"; NoStorageAccountsFound = true; } else { NoStorageAccountsFound = false; } } catch (Exception ex) { Logger.Report(ex, "Method", "ExecuteLoadStorageAccountsAsync"); MessagingService.Current.SendMessage(MessageKeys.Error, ex); } finally { IsBusy = false; } return(true); }
public NewTableViewModel(INavigation navigation, IUserDialogs userDialogs, TablesViewModel tablesVM) : base(navigation, userDialogs) { this.tablesVM = tablesVM; var realm = App.GetRealm(); var storageAccounts = realm.All <StorageAccountExt>().Where(sa => sa.IsStorageAccountOn); StorageAccounts.ReplaceRange(storageAccounts); }
/// <summary> /// Table Storage /// </summary> /// <param name="tableName">Table Name</param> public TableStorage(string tableName, StorageAccounts account = StorageAccounts.Default) : base(account) { if (string.IsNullOrWhiteSpace(tableName)) { throw new ArgumentException("tableName"); } this.tableName = tableName; }
/// <summary> /// Azure Blob Container /// </summary> /// <param name="account">Account</param> /// <param name="container">Container</param> public AzureBlobContainer(string container, StorageAccounts account = StorageAccounts.Default) : base(account) { if (string.IsNullOrWhiteSpace(container)) { throw new ArgumentException("container"); } this.client = base.account.CreateCloudBlobClient(); client.RetryPolicy = new LinearRetry(TimeSpan.FromSeconds(1), 5); this.containerRef = this.client.GetContainerReference(container.ToLowerInvariant()); }
/// <summary> /// Get Key /// </summary> /// <param name="account">Account</param> /// <returns>Configuration Key</returns> public static string Key(StorageAccounts account = StorageAccounts.Default) { switch (account) { case StorageAccounts.Administrative1: return(SicData3); case StorageAccounts.Offsite1: return(SicData2); default: return(DataConnectionStringKey); } }
/// <summary> /// Initializes client properties. /// </summary> private void Initialize() { DataSources = new DataSources(this); Indexers = new Indexers(this); Indexes = new Indexes(this); StorageAccounts = new StorageAccounts(this); Usage = new UsageOperations(this); BaseUri = new System.Uri("https://management.azure.com"); SerializationSettings = new JsonSerializerSettings { Formatting = Newtonsoft.Json.Formatting.Indented, DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat, DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize, ContractResolver = new ReadOnlyJsonContractResolver(), Converters = new List <JsonConverter> { new Iso8601TimeSpanConverter() } }; SerializationSettings.Converters.Add(new TransformationJsonConverter()); DeserializationSettings = new JsonSerializerSettings { DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat, DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Utc, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore, ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize, ContractResolver = new ReadOnlyJsonContractResolver(), Converters = new List <JsonConverter> { new Iso8601TimeSpanConverter() } }; SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <DataChangeDetectionPolicy>("@odata.type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <DataChangeDetectionPolicy>("@odata.type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <DataDeletionDetectionPolicy>("@odata.type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <DataDeletionDetectionPolicy>("@odata.type")); SerializationSettings.Converters.Add(new PolymorphicSerializeJsonConverter <ScoringFunction>("type")); DeserializationSettings.Converters.Add(new PolymorphicDeserializeJsonConverter <ScoringFunction>("type")); CustomInitialize(); DeserializationSettings.Converters.Add(new TransformationJsonConverter()); }
public override void ExecuteCmdlet() { if (ShouldProcess(AccountName, NewMediaServiceWhatIfMessage)) { try { var mediaService = MediaServicesManagementClient.MediaService.Get(ResourceGroupName, AccountName); if (mediaService != null) { throw new ArgumentException(string.Format(Properties.Resource.InvalidMediaServiceAccount, AccountName, SubscrptionName, ResourceGroupName)); } } catch (ApiErrorException exception) { if (exception.Response != null && exception.Response.StatusCode.Equals(HttpStatusCode.NotFound)) { var restMediaService = new RestMediaService( Location, Tags.ToDictionaryTags(), null, null, MediaServiceType); switch (ParameterSetName) { case PrimaryStorageAccountParamSet: restMediaService.StorageAccounts = new List <StorageAccount> { new StorageAccount { Id = StorageAccountId, IsPrimary = true } }; break; case StorageAccountsParamSet: if (StorageAccounts.Count(x => x.IsPrimary.HasValue && x.IsPrimary.Value) != 1) { throw new ArgumentException(Properties.Resource.OnlyOnePrimaryStorageAccountAllowed); } restMediaService.StorageAccounts = StorageAccounts.Select(x => x.ToStorageAccount()).ToList(); break; default: throw new ArgumentException("Bad ParameterSet Name"); } var mediaServiceCreated = MediaServicesManagementClient.MediaService.Create(ResourceGroupName, AccountName, restMediaService); WriteObject(mediaServiceCreated.ToPSMediaService(), true); } else { throw; } } } }
/// <summary> /// Binary Container /// </summary> /// <param name="container">Container</param> /// <param name="account">Account</param> public BinaryContainer(string container, StorageAccounts account = StorageAccounts.Default) : base(container, account) { }
/// <summary> /// Json Container /// </summary> /// <param name="account">Account</param> /// <param name="container">Container</param> public JsonContainer(string container = "json", StorageAccounts account = StorageAccounts.Default) : base(container, account) { }
/// <summary> /// Get Cloud Storage Account /// </summary> /// <param name="account">Account</param> /// <returns>Cloud Storage Account</returns> public static CloudStorageAccount Get(StorageAccounts account = StorageAccounts.Default) { var key = Key(account); return(CloudStorageAccount.Parse(ConfigurationManager.AppSettings[key])); }
/// <summary> /// Constructor /// </summary> /// <param name="account">Storage Account</param> public AzureStorage(StorageAccounts account = StorageAccounts.Default) { this.account = Get(account); }