public async Task <IEnumerable <Battle> > GetBattlesAsync(BattleFilter battleFilter) { var battleEntityFilter = new BattleEntityFilter { Name = battleFilter.Name }; var battles = await BattleStore.GetBattlesAsync(battleEntityFilter, CancellationToken); return(Mapper.Map <IEnumerable <BattleEntity>, IEnumerable <Battle> >(battles)); }
public async Task <Result> UpdateBattleImageAsync(UpdateBattleImageCommand command) { var battle = await BattleStore.GetBattleAsync(command.BattleId); if (battle == null) { return(Result.Failed(new Error("Battle not found", "Battle not found"))); } battle.ImageId = command.ImageId; return(await BattleStore.UpdateBattleAsync(battle, CancellationToken)); }
public async Task <CreateBattleTokenResult> CreateBattleTokenAsync(CreateBattleTokenCommand command) { var battle = await BattleStore.GetBattleAsync(command.BattleId, CancellationToken); if (battle == null) { return(new CreateBattleTokenResult(new Error("Battle not found", "Battle not found"))); } string token = BattleTokenGenerator.GenerateToken(command.BattleId, command.UserId); return(new CreateBattleTokenResult(token)); }
public async Task <CreateBattleResult> CreateBattleAsync(CreateBattleCommand command) { if (String.IsNullOrWhiteSpace(command.Name)) { return(new CreateBattleResult(new Error("Empty name", "Name can't be empty"))); } var battle = new BattleEntity() { Description = command.Description, Name = command.Name, Settings = new BattleSettingsEntity { CenterX = 0, CenterY = 0, Cooldown = 0, ChunkHeight = 100, ChunkWidth = 100, MaxHeightIndex = 99, MaxWidthIndex = 99, MinHeightIndex = -100, MinWidthIndex = -100 }, StartDateUTC = DateTime.UtcNow, EndDateUTC = DateTime.UtcNow.AddDays(100) }; var result = await BattleStore.CreateBattleAsync(battle, CancellationToken); if (result.Succeeded) { return(new CreateBattleResult(battle.BattleId)); } else { return(new CreateBattleResult(result.Errors)); } }
public async Task <Battle> GetBattleAsync(long battleId) { var battle = await BattleStore.GetBattleAsync(battleId, CancellationToken); return(Mapper.Map <BattleEntity, Battle>(battle)); }
public Task <Result> DeleteBattleAsync(DeleteBattleCommand command) { return(BattleStore.DeleteBattleAsync(command.BattleId, CancellationToken)); }