Exemplo n.º 1
0
        public Task DeleteAsync <T>(string traderId) where T : TraderSettingsBase, new()
        {
            var partitionKey = ClientSettingsEntity.GeneratePartitionKey(traderId);
            var defaultValue = TraderSettingsBase.CreateDefault <T>();
            var rowKey       = ClientSettingsEntity.GenerateRowKey(defaultValue);

            return(_tableStorage.DeleteAsync(partitionKey, rowKey));
        }
Exemplo n.º 2
0
        public async Task <T> GetSettings <T>(string traderId) where T : TraderSettingsBase, new()
        {
            var partitionKey = ClientSettingsEntity.GeneratePartitionKey(traderId);
            var defaultValue = TraderSettingsBase.CreateDefault <T>();
            var rowKey       = ClientSettingsEntity.GenerateRowKey(defaultValue);
            var entity       = await _tableStorage.GetDataAsync(partitionKey, rowKey);

            return(entity == null ? defaultValue : entity.GetSettings <T>());
        }
Exemplo n.º 3
0
        public static ClientSettingsEntity Create(string traderId, TraderSettingsBase settings)
        {
            var result = new ClientSettingsEntity
            {
                PartitionKey = GeneratePartitionKey(traderId),
                RowKey       = GenerateRowKey(settings),
            };

            result.SetSettings(settings);
            return(result);
        }
Exemplo n.º 4
0
        public Task SetSettings <T>(string traderId, T settings) where T : TraderSettingsBase, new()
        {
            var newEntity = ClientSettingsEntity.Create(traderId, settings);

            return(_tableStorage.InsertOrReplaceAsync(newEntity));
        }