feat + refactor + doc : réécriture de méthodes (modification du nom) + écriture de nouvelle méthode + modification de la documentation

API
Damien NORTIER 1 year ago
parent 1a112874e3
commit 00fa239371

@ -42,9 +42,9 @@ namespace DataManagers
return await Task.FromResult<(int nbPages, IEnumerable<Administrator>? administrators)>((res.nbPages, tmp));
}
public int getNbElements()
public int getNbAdmins()
{
return manager.getNbElements();
return manager.getNbAdmins();
}
public async Task<Administrator?> removeAdmin(Administrator admin)

@ -22,7 +22,7 @@ namespace DataManagers
return await Task.FromResult<Answer>((await manager.addAnswer(answer.ToEntity())).ToModel());
}
public async Task<Answer?> getAnswer(uint id)
public async Task<Answer?> getAnswer(int id)
{
return await Task.FromResult<Answer?>((await manager.getAnswer(id))?.ToModel());
}
@ -42,7 +42,12 @@ namespace DataManagers
return await Task.FromResult<(int nbPages, IEnumerable<Answer>? answers)>((res.nbPages, tmp));
}
public async Task<IEnumerable<Answer>?> getAnswersByIdQuestion(uint id)
public async Task<IEnumerable<Answer>?> getAnswers(string content)
{
return (await manager.getAnswers(content))?.Select(a => a.ToModel());
}
public async Task<IEnumerable<Answer>?> getAnswersByIdQuestion(int id)
{
var tmp = await manager.getAnswersByIdQuestion(id);
List<Answer>? answer = new List<Answer>();
@ -57,12 +62,12 @@ namespace DataManagers
return await Task.FromResult<List<Answer>?>(answer);
}
public int getNbElements()
public int getNbAnswers()
{
return manager.getNbElements();
return manager.getNbAnswers();
}
public async Task<Answer?> removeAnswer(uint id)
public async Task<Answer?> removeAnswer(int id)
{
return (await manager.removeAnswer(id))?.ToModel();
}
@ -72,7 +77,7 @@ namespace DataManagers
return (await manager.removeAnswer(answer.ToEntity()))?.ToModel();
}
public async Task<Answer?> updateAnswer(uint id, Answer answer)
public async Task<Answer?> updateAnswer(int id, Answer answer)
{
return (await manager.updateAnswer(id, answer.ToEntity()))?.ToModel();
}

@ -21,11 +21,16 @@ namespace DataManagers
return await Task.FromResult<Chapter>((await manager.addChapter(chapter.ToEntity())).ToModel());
}
public async Task<Chapter?> getChapter(uint id)
public async Task<Chapter?> getChapter(int id)
{
return await Task.FromResult<Chapter?>((await manager.getChapter(id))?.ToModel());
}
public async Task<Chapter?> getChapter(string name)
{
return (await manager.getChapter(name))?.ToModel();
}
public async Task<(int nbPages, IEnumerable<Chapter>? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById)
{
List<Chapter>? tmp = new List<Chapter>();
@ -41,9 +46,9 @@ namespace DataManagers
return await Task.FromResult<(int nbPages, IEnumerable<Chapter>? chapters)>((res.nbPages, tmp));
}
public int getNbElements()
public int getNbChapters()
{
return manager.getNbElements();
return manager.getNbChapters();
}
public async Task<Chapter?> removeChapter(Chapter chapter)
@ -51,9 +56,14 @@ namespace DataManagers
return (await manager.removeChapter(chapter.ToEntity()))?.ToModel();
}
public async Task<Chapter?> removeChapter(uint id)
public async Task<Chapter?> removeChapter(int id)
{
return (await manager.removeChapter(id))?.ToModel();
}
public async Task<Chapter?> updateChapter(int id, string newName)
{
return (await manager.updateChapter(id, newName))?.ToModel();
}
}
}

@ -36,14 +36,14 @@ namespace DataManagers
return await Task.FromResult<(int nbPages, IEnumerable<Lobby>? lobbies)>((res.nbPages, tmp));
}
public async Task<Lobby?> getLobby(uint id)
public async Task<Lobby?> getLobby(int id)
{
return await Task.FromResult<Lobby?>((await manager.getLobby(id))?.ToModel());
}
public int getNbElements()
public int getNbLobbies()
{
return manager.getNbElements();
return manager.getNbLobbies();
}
public async Task<Lobby?> removeLobby(Lobby lobby)
@ -51,7 +51,7 @@ namespace DataManagers
return (await manager.removeLobby(lobby.ToEntity()))?.ToModel();
}
public async Task<Lobby?> removeLobby(uint id)
public async Task<Lobby?> removeLobby(int id)
{
return (await manager.removeLobby(id))?.ToModel();
}

@ -21,22 +21,22 @@ namespace DataManagers
return await Task.FromResult<Player>((await manager.addPlayer(player.ToEntity())).ToModel());
}
public async Task<uint?> getMaxScorePlayer(uint id, uint idChapter)
public async Task<int?> getMaxScorePlayer(int id, int idChapter)
{
return await manager.getMaxScorePlayer(id, idChapter);
}
public async Task<uint?> getMaxScorePlayer(uint id)
public async Task<int?> getMaxScorePlayer(int id)
{
return await manager.getMaxScorePlayer(id);
}
public int getNbElements()
public int getNbPlayers()
{
return manager.getNbElements();
return manager.getNbPlayers();
}
public async Task<Player?> getPlayer(uint id)
public async Task<Player?> getPlayer(int id)
{
return await Task.FromResult<Player?>((await manager.getPlayer(id))?.ToModel());
}
@ -61,7 +61,7 @@ namespace DataManagers
return await Task.FromResult<(int nbPages, IEnumerable<Player>? players)>((res.nbPages, tmp));
}
public async Task<IEnumerable<Player>?> getPlayersInALobby(uint idLobby)
public async Task<IEnumerable<Player>?> getPlayersInALobby(int idLobby)
{
List<Player>? tmp = new List<Player>();
var res = await manager.getPlayersInALobby(idLobby);
@ -81,7 +81,7 @@ namespace DataManagers
return (await manager.removePlayer(player.ToEntity()))?.ToModel();
}
public async Task<Player?> removePlayer(uint id)
public async Task<Player?> removePlayer(int id)
{
return (await manager.removePlayer(id))?.ToModel();
}

@ -39,12 +39,12 @@ namespace DataManagers
return tmp2;
}
public int getNbElements()
public int getNbQuestions()
{
return manager.getNbElements();
return manager.getNbQuestions();
}
public async Task<Question?> getQuestion(uint id)
public async Task<Question?> getQuestion(int id)
{
return await Task.FromResult<Question?>((await manager.getQuestion(id))?.ToModel());
}
@ -85,17 +85,17 @@ namespace DataManagers
return (await manager.removeQuestion(question.ToEntity()))?.ToModel();
}
public async Task<Question?> removeQuestion(uint id)
public async Task<Question?> removeQuestion(int id)
{
return (await manager.removeQuestion(id))?.ToModel();
}
public async Task<Question?> updateQuestion(uint id, Question question)
public async Task<Question?> updateQuestion(int id, Question question)
{
return (await manager.updateQuestion(id, question.ToEntity()))?.ToModel();
}
public async Task<Question?> updateQuestionNbFalls(uint id)
public async Task<Question?> updateQuestionNbFalls(int id)
{
return (await manager.updateQuestionNbFalls(id))?.ToModel();
}

@ -41,7 +41,7 @@ namespace EntityManagers
public async Task<(int nbPages, IEnumerable<AdministratorEntity>? administrators)> getAdministrators(int nb, int count, AdministratorOrderCriteria orderCriteria = AdministratorOrderCriteria.ById)
{
int nbEl = getNbElements();
int nbEl = getNbAdmins();
if(nb < 0 || count < 0 || nb > nbEl/count) return await Task.FromResult<(int nbPages, IEnumerable<AdministratorEntity>? administrators)>((nbEl/count, null));
var tmp = dbContext.Administrators;
switch (orderCriteria)
@ -56,7 +56,7 @@ namespace EntityManagers
return await Task.FromResult<(int nbPages, IEnumerable<AdministratorEntity>? administrators)>((nbEl/count, tmp.Skip((nb-1)*count).Take(count)));
}
public int getNbElements()
public int getNbAdmins()
{
return dbContext.Administrators.CountAsync().Result;
}

@ -33,14 +33,19 @@ namespace EntityManagers
return await dbContext.Answers.Where(a => a.Content == answer.Content && a.IdQuestion == answer.IdQuestion).FirstAsync();
}
public async Task<AnswerEntity?> getAnswer(uint id)
public async Task<AnswerEntity?> getAnswer(int id)
{
return await dbContext.Answers.Where(a => a.Id == id).FirstOrDefaultAsync();
}
public async Task<IEnumerable<AnswerEntity>?> getAnswers(string content)
{
return await Task.FromResult<IEnumerable<AnswerEntity>?>(dbContext.Answers.Where(a => a.Content == content));
}
public async Task<(int nbPages, IEnumerable<AnswerEntity>? answers)> getAnswers(int page, int count, AnswerOrderCriteria orderCriteria = AnswerOrderCriteria.ById)
{
int nbEl = getNbElements();
int nbEl = getNbAnswers();
if (page < 0 || count < 0 || page > nbEl / count)
{
return await Task.FromResult<(
@ -73,7 +78,7 @@ namespace EntityManagers
));
}
public async Task<IEnumerable<AnswerEntity>?> getAnswersByIdQuestion(uint id)
public async Task<IEnumerable<AnswerEntity>?> getAnswersByIdQuestion(int id)
{
if(dbContext.Questions.Where(q => q.Id == id).Any())
{
@ -82,12 +87,12 @@ namespace EntityManagers
return await Task.FromResult<IEnumerable<AnswerEntity>?>(null);
}
public int getNbElements()
public int getNbAnswers()
{
return dbContext.Answers.CountAsync().Result;
}
public async Task<AnswerEntity?> removeAnswer(uint id)
public async Task<AnswerEntity?> removeAnswer(int id)
{
var tmp = getAnswer(id).Result;
if (tmp == null) return await Task.FromResult<AnswerEntity?>(tmp);
@ -105,7 +110,7 @@ namespace EntityManagers
return await Task.FromResult<AnswerEntity?>(tmp);
}
public async Task<AnswerEntity?> updateAnswer(uint id, AnswerEntity answer)
public async Task<AnswerEntity?> updateAnswer(int id, AnswerEntity answer)
{
var tmp = await dbContext.Answers.Where(a => a.Id == id).FirstOrDefaultAsync();
if(tmp == null)

@ -18,7 +18,7 @@ namespace EntityManagers
public async Task<ChapterEntity> addChapter(ChapterEntity chapter)
{
var tmp = await dbContext.Chapters.Where(c => c.Equals(chapter)).FirstOrDefaultAsync();
var tmp = await dbContext.Chapters.Where(c => c.Name == chapter.Name).FirstOrDefaultAsync();
if (tmp != null) // <=> he already exist
{
return tmp!;
@ -28,14 +28,19 @@ namespace EntityManagers
return await dbContext.Chapters.Where(c => c.Equals(chapter)).FirstAsync();
}
public async Task<ChapterEntity?> getChapter(uint id)
public async Task<ChapterEntity?> getChapter(int id)
{
return await dbContext.Chapters.Where(c => c.Id == id).FirstOrDefaultAsync();
}
public async Task<ChapterEntity?> getChapter(string name)
{
return await dbContext.Chapters.SingleOrDefaultAsync(c => c.Name == name);
}
public async Task<(int nbPages, IEnumerable<ChapterEntity>? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById)
{
int nbEl = getNbElements();
int nbEl = getNbChapters();
if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable<ChapterEntity>? chapters)>((nbEl / count, null));
var tmp = dbContext.Chapters;
switch (orderCriteria)
@ -50,7 +55,7 @@ namespace EntityManagers
return await Task.FromResult<(int nbPages, IEnumerable<ChapterEntity>? chapters)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count)));
}
public int getNbElements()
public int getNbChapters()
{
return dbContext.Chapters.CountAsync().Result;
}
@ -64,7 +69,7 @@ namespace EntityManagers
return await Task.FromResult<ChapterEntity?>(tmp);
}
public async Task<ChapterEntity?> removeChapter(uint id)
public async Task<ChapterEntity?> removeChapter(int id)
{
var tmp = getChapter(id).Result;
if (tmp == null) return await Task.FromResult<ChapterEntity?>(tmp);
@ -72,5 +77,13 @@ namespace EntityManagers
await dbContext.SaveChangesAsync();
return await Task.FromResult<ChapterEntity?>(tmp);
}
public async Task<ChapterEntity?> updateChapter(int id, string newName)
{
var tmp = await getChapter(id);
if (tmp == null) return null;
tmp.Name = newName;
return tmp;
}
}
}

@ -30,7 +30,7 @@ namespace EntityManagers
public async Task<(int nbPages, IEnumerable<LobbyEntity>? lobbies)> getLobbies(int nb, int count, LobbyOrderCriteria orderCriteria = LobbyOrderCriteria.ById)
{
int nbEl = getNbElements();
int nbEl = getNbLobbies();
if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable<LobbyEntity>? lobbies)>((nbEl / count, null));
var tmp = dbContext.Lobbies;
switch (orderCriteria)
@ -48,12 +48,12 @@ namespace EntityManagers
return await Task.FromResult<(int nbPages, IEnumerable<LobbyEntity>? lobbies)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count)));
}
public async Task<LobbyEntity?> getLobby(uint id)
public async Task<LobbyEntity?> getLobby(int id)
{
return await Task.FromResult<LobbyEntity?>(dbContext.Lobbies.Where(l => l.Id == id).FirstOrDefault());
}
public int getNbElements()
public int getNbLobbies()
{
return dbContext.Lobbies.CountAsync().Result;
}
@ -67,7 +67,7 @@ namespace EntityManagers
return await Task.FromResult<LobbyEntity?>(tmp);
}
public async Task<LobbyEntity?> removeLobby(uint id)
public async Task<LobbyEntity?> removeLobby(int id)
{
var tmp = dbContext.Lobbies.Where(a => a.Id == id).FirstOrDefaultAsync().Result;
if (tmp == null) return await Task.FromResult<LobbyEntity?>(tmp);

@ -28,25 +28,25 @@ namespace EntityManagers
return await dbContext.Players.Where(p => p.Equals(player)).FirstAsync();
}
public async Task<uint?> getMaxScorePlayer(uint id, uint idChapter)
public async Task<int?> getMaxScorePlayer(int id, int idChapter)
{
var tmp = await dbContext.Play.Where(p => p.IdPlayer == id && p.IdChapter == idChapter).FirstOrDefaultAsync();
return await Task.FromResult(tmp?.MaxScore);
}
public async Task<uint?> getMaxScorePlayer(uint id)
public async Task<int?> getMaxScorePlayer(int id)
{
var tmp = dbContext.Play.Where(p => p.IdPlayer == id).Select(p => p.MaxScore);
if (!tmp.AnyAsync().Result) return await Task.FromResult<uint?>(null);
return await Task.FromResult<uint?>(tmp?.MaxAsync().Result);
if (!tmp.AnyAsync().Result) return await Task.FromResult<int?>(null);
return await Task.FromResult<int?>(tmp?.MaxAsync().Result);
}
public int getNbElements()
public int getNbPlayers()
{
return dbContext.Players.CountAsync().Result;
}
public async Task<PlayerEntity?> getPlayer(uint id)
public async Task<PlayerEntity?> getPlayer(int id)
{
return await dbContext.Players.Where(p => p.Id == id).FirstOrDefaultAsync();
}
@ -58,7 +58,7 @@ namespace EntityManagers
public async Task<(int nbPages, IEnumerable<PlayerEntity>? players)> getPlayers(int nb, int count, PlayerOrderCriteria orderCriteria = PlayerOrderCriteria.ById)
{
int nbEl = getNbElements();
int nbEl = getNbPlayers();
if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable<PlayerEntity>? players)>((nbEl / count, null));
var tmp = dbContext.Players;
switch (orderCriteria)
@ -73,7 +73,7 @@ namespace EntityManagers
return await Task.FromResult<(int nbPages, IEnumerable<PlayerEntity>? players)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count)));
}
public async Task<IEnumerable<PlayerEntity>?> getPlayersInALobby(uint idLobby)
public async Task<IEnumerable<PlayerEntity>?> getPlayersInALobby(int idLobby)
{
if (!await dbContext.Lobbies.Where(l => l.Id == idLobby).AnyAsync())
return await Task.FromResult<IEnumerable<PlayerEntity>?>(null);
@ -91,7 +91,7 @@ namespace EntityManagers
return await Task.FromResult<PlayerEntity?>(tmp);
}
public async Task<PlayerEntity?> removePlayer(uint id)
public async Task<PlayerEntity?> removePlayer(int id)
{
var tmp = getPlayer(id).Result;
if (tmp == null) return await Task.FromResult<PlayerEntity?>(tmp);

@ -56,19 +56,19 @@ namespace EntityManagers
return await Task.FromResult<IEnumerable<QuestionEntity>>(tmp);
}
public int getNbElements()
public int getNbQuestions()
{
return dbContext.Questions.CountAsync().Result;
}
public async Task<QuestionEntity?> getQuestion(uint id)
public async Task<QuestionEntity?> getQuestion(int id)
{
return await Task.FromResult<QuestionEntity?>(dbContext.Questions.Where(q => q.Id == id).FirstOrDefault());
}
public async Task<(int nbPages, IEnumerable<QuestionEntity>? questions)> getQuestions(int nb, int count, QuestionOrderCriteria orderCriteria = QuestionOrderCriteria.ById)
{
int nbEl = getNbElements();
int nbEl = getNbQuestions();
if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable<QuestionEntity>? questions)>((nbEl / count, null));
var tmp = trier(dbContext.Questions, orderCriteria);
return await Task.FromResult<(int nbPages, IEnumerable<QuestionEntity>? questions)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count)));
@ -78,7 +78,7 @@ namespace EntityManagers
{
if (nb < 0 || count < 0 || difficulty < 1 || difficulty > 3 || !dbContext.Chapters.Where(c => c.Id == idChapter).AnyAsync().Result)
return await Task.FromResult<(int nbPages, IEnumerable<QuestionEntity>? questions)?>(null);
int nbEl = getNbElements();
int nbEl = getNbQuestions();
if (nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable<QuestionEntity>? questions)?>((nbEl / count, null));
var tmp = trier(dbContext.Questions, orderCriteria);
return await Task.FromResult<(int nbPages, IEnumerable<QuestionEntity>? questions)?>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count)));
@ -93,7 +93,7 @@ namespace EntityManagers
return tmp;
}
public Task<QuestionEntity?> removeQuestion(uint id)
public Task<QuestionEntity?> removeQuestion(int id)
{
var tmp = getQuestion(id);
if (tmp.Result == null) return tmp;
@ -102,7 +102,7 @@ namespace EntityManagers
return tmp;
}
public async Task<QuestionEntity?> updateQuestion(uint id, QuestionEntity question)
public async Task<QuestionEntity?> updateQuestion(int id, QuestionEntity question)
{
var tmp = getQuestion(id);
if (tmp.Result == null) return await tmp;
@ -115,12 +115,12 @@ namespace EntityManagers
return await tmp;
}
public async Task<QuestionEntity?> updateQuestionNbFalls(uint id)
public async Task<QuestionEntity?> updateQuestionNbFalls(int id)
{
var tmp = getQuestion(id);
if (tmp.Result == null) return await tmp;
tmp.Result.NbFalls++;
uint nbFalls = tmp.Result.NbFalls;
int nbFalls = tmp.Result.NbFalls;
if (nbFalls == 50) tmp.Result.Difficulty = 2;
if (nbFalls == 150) tmp.Result.Difficulty = 3;
await dbContext.SaveChangesAsync();

@ -16,28 +16,28 @@ namespace ManagerInterfaces
public interface IAdministratorManager<T>
{
/// <summary>
/// get the number of T element
/// get the number of administrators
/// </summary>
/// <returns>the number of T element</returns>
public int getNbElements();
/// <returns>the number of administrators</returns>
public int getNbAdmins();
/// <summary>
/// add a T element
/// add an administrator
/// </summary>
/// <param name="admin">the administrator to add</param>
/// <returns>
/// the T element that corresponde to
/// the element that correspond to
/// the administrator added or the administrator equal to this
/// administrator if this administrator was already added
/// </returns>
public Task<T> addAdmin(T admin);
/// <summary>
/// remove a T element
/// remove an administrators
/// </summary>
/// <param name="admin">the administrator to remove</param>
/// <returns>the administrator removed or null if there isn't any</returns>
public Task<T?> removeAdmin(T admin);
/// <summary>
/// remove a T element
/// remove an administrator
/// </summary>
/// <param name="id">the id of the administrator to remove</param>
/// <returns>the administrator removed or null if there isn't any</returns>
@ -46,11 +46,11 @@ namespace ManagerInterfaces
/// get a part of all administrators
/// </summary>
/// <param name="page">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of administrators in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all administrators in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))

@ -11,19 +11,19 @@ namespace ManagerInterfaces
public interface IAnswerManager<T>
{
/// <summary>
/// get the number of T element
/// get the number of answers
/// </summary>
/// <returns>the number of T element</returns>
public int getNbElements();
/// <returns>the number of answers</returns>
public int getNbAnswers();
/// <summary>
/// get a part of all answers
/// </summary>
/// <param name="nb">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of answers in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all answers in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))
@ -34,52 +34,61 @@ namespace ManagerInterfaces
/// </summary>
/// <param name="id">the id of the question</param>
/// <returns>
/// a set of all T answers that answer to this question
/// a set of all answers that answer to this question
/// </returns>
public Task<IEnumerable<T>?> getAnswersByIdQuestion(uint id);
public Task<IEnumerable<T>?> getAnswersByIdQuestion(int id);
/// <summary>
/// modified a T element with an id
/// modified an answer with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the answer</param>
/// <param name="answer">an answer that contains all modified properties</param>
/// <returns>
/// the T element (modified) that corresponde
/// the answer (modified) that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> updateAnswer(uint id, T answer);
public Task<T?> updateAnswer(int id, T answer);
/// <summary>
/// delete a T element with an id
/// delete an answer with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the answer</param>
/// <returns>
/// the T element deleted that corresponde
/// the answer deleted that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> removeAnswer(uint id);
public Task<T?> removeAnswer(int id);
/// <summary>
/// delete a T element
/// delete an answer
/// </summary>
/// <param name="answer">the T element to delete</param>
/// <param name="answer">the answer to delete</param>
/// <returns>the answer removed or null if there wasn't any</returns>
public Task<T?> removeAnswer(T answer);
/// <summary>
/// add a T element
/// add an answer
/// </summary>
/// <param name="answer">the answer to add</param>
/// <returns>
/// the T element that corresponde to
/// the element that corresponde to
/// the answer added or the answer equal to this
/// answer if this answer was already added
/// </returns>
public Task<T> addAnswer(T answer);
/// <summary>
/// get a T element with an id
/// get an answer with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the answer</param>
/// <returns>
/// the T element that corresponde
/// the answer that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> getAnswer(uint id);
public Task<T?> getAnswer(int id);
/// <summary>
/// get answers
/// </summary>
/// <param name="content">the content of the answer</param>
/// <returns>
/// the answer that corresponde
/// to the content or null if there isn't any
/// </returns>
public Task<IEnumerable<T>?> getAnswers(string content);
}
}

@ -16,10 +16,10 @@ namespace ManagerInterfaces
public interface IChapterManager<T>
{
/// <summary>
/// get the number of T element
/// get the number of chapters
/// </summary>
/// <returns>the number of T element</returns>
public int getNbElements();
/// <returns>the number of chapters</returns>
public int getNbChapters();
/// <summary>
/// add a chapter
/// </summary>
@ -46,30 +46,51 @@ namespace ManagerInterfaces
/// the chapter removed or null if
/// the chapter does not exist
/// </returns>
Task<T?> removeChapter(uint id);
Task<T?> removeChapter(int id);
/// <summary>
/// get a chapter
/// </summary>
/// <param name="id">the identifier of the chapter to remove</param>
/// <param name="id">the identifier of the chapter</param>
/// <returns>
/// the chapter that correspond
/// to the id or null if the
/// chapter does not exist
/// </returns>
Task<T?> getChapter(uint id);
Task<T?> getChapter(int id);
/// <summary>
/// get a chapter
/// </summary>
/// <param name="name">the name of the chapter</param>
/// <returns>
/// the chapter that correspond
/// to the name or null if the
/// chapter does not exist
/// </returns>
Task<T?> getChapter(string name);
/// <summary>
/// get a part of all chapters
/// </summary>
/// <param name="nb">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of chapters in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all chapters in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))
/// </returns>
Task<(int nbPages, IEnumerable<T>? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById);
/// <summary>
/// update a chapter
/// </summary>
/// <param name="id">the id of the chapter to update</param>
/// <param name="newName">the new name of the chapter</param>
/// <returns>
/// the chapter modified or null if
/// the id does not refer a chapter
/// </returns>
Task<T?> updateChapter(int id, string newName);
}
}

@ -16,10 +16,10 @@ namespace ManagerInterfaces
public interface ILobbyManager<T>
{
/// <summary>
/// get the number of T element
/// get the number of lobbies
/// </summary>
/// <returns>the number of T element</returns>
public int getNbElements();
/// <returns>the number of lobbies</returns>
public int getNbLobbies();
/// <summary>
/// add a lobby
/// </summary>
@ -27,45 +27,45 @@ namespace ManagerInterfaces
/// <returns>the lobby added</returns>
public Task<T> addLobby(T lobby);
/// <summary>
/// delete a T element
/// delete a lobby
/// </summary>
/// <param name="lobby">the lobby to remove</param>
/// <returns>
/// the T element deleted or
/// the lobby deleted or
/// null if there isn't any
/// </returns>
public Task<T?> removeLobby(T lobby);
/// <summary>
/// delete a T element with an id
/// delete a lobby with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the lobby</param>
/// <returns>
/// the T element deleted that corresponde
/// the lobby deleted that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> removeLobby(uint id);
public Task<T?> removeLobby(int id);
/// <summary>
/// get a part of all lobbies
/// </summary>
/// <param name="nb">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of lobbies in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all lobbies in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))
/// </returns>
public Task<(int nbPages, IEnumerable<T>? lobbies)> getLobbies(int nb, int count, LobbyOrderCriteria orderCriteria = LobbyOrderCriteria.ById);
/// <summary>
/// get a T element with an id
/// get a lobby with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the lobby</param>
/// <returns>
/// the T element that corresponde
/// the lobby that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> getLobby(uint id);
public Task<T?> getLobby(int id);
}
}

@ -17,16 +17,16 @@ namespace ManagerInterfaces
public interface IPlayerManager<T>
{
/// <summary>
/// get the number of T element
/// get the number of players
/// </summary>
/// <returns>the number of T element</returns>
public int getNbElements();
/// <returns>the number of players</returns>
public int getNbPlayers();
/// <summary>
/// add a player
/// </summary>
/// <param name="player">the player to add</param>
/// <returns>
/// the T element that corresponde to
/// the player that corresponde to
/// the player added or the player equal to this
/// player if this player was already added
/// </returns>
@ -48,16 +48,16 @@ namespace ManagerInterfaces
/// the player removed or null if
/// the player does not exist
/// </returns>
Task<T?> removePlayer(uint id);
Task<T?> removePlayer(int id);
/// <summary>
/// get a part of all players
/// </summary>
/// <param name="nb">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of players in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all players in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))
@ -72,7 +72,7 @@ namespace ManagerInterfaces
/// or null if no player match
/// with this id
/// </returns>
public Task<T?> getPlayer(uint id);
public Task<T?> getPlayer(int id);
/// <summary>
/// get a player
/// </summary>
@ -94,7 +94,7 @@ namespace ManagerInterfaces
/// delete the lobby) if it is used by
/// no player
/// </returns>
public Task<IEnumerable<T>?> getPlayersInALobby(uint idLobby);
public Task<IEnumerable<T>?> getPlayersInALobby(int idLobby);
/// <summary>
/// get the max score of a player in a chapter
/// </summary>
@ -105,7 +105,7 @@ namespace ManagerInterfaces
/// or null if the player or
/// the chapter does not exist
/// </returns>
public Task<uint?> getMaxScorePlayer(uint id, uint idChapter);
public Task<int?> getMaxScorePlayer(int id, int idChapter);
/// <summary>
/// get the global max score of a player
/// </summary>
@ -114,6 +114,6 @@ namespace ManagerInterfaces
/// the max score of the player
/// or null if the player does not exist
/// </returns>
public Task<uint?> getMaxScorePlayer(uint id);
public Task<int?> getMaxScorePlayer(int id);
}
}

@ -17,10 +17,10 @@ namespace ManagerInterfaces
public interface IQuestionManager<T>
{
/// <summary>
/// get the number of T element
/// get the number of questions
/// </summary>
/// <returns>the number of T element</returns>
public int getNbElements();
/// <returns>the number of questions</returns>
public int getNbQuestions();
/// <summary>
/// add a question
/// </summary>
@ -28,66 +28,66 @@ namespace ManagerInterfaces
/// <returns>the question added</returns>
public Task<T> addQuestion(T question);
/// <summary>
/// delete a T element
/// delete a question
/// </summary>
/// <param name="question">the question to remove</param>
/// <returns>
/// the T element deleted or
/// the question deleted or
/// null if there isn't any
/// </returns>
public Task<T?> removeQuestion(T question);
/// <summary>
/// delete a T element with an id
/// delete a question with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the question</param>
/// <returns>
/// the T element deleted that corresponde
/// the question deleted that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> removeQuestion(uint id);
public Task<T?> removeQuestion(int id);
/// <summary>
/// get a part of all questions
/// </summary>
/// <param name="nb">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of question in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all questions in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))
/// </returns>
public Task<(int nbPages, IEnumerable<T>? questions)> getQuestions(int nb, int count, QuestionOrderCriteria orderCriteria = QuestionOrderCriteria.ById);
/// <summary>
/// get a T element with an id
/// get a question with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the question</param>
/// <returns>
/// the T element that corresponde
/// the question that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> getQuestion(uint id);
public Task<T?> getQuestion(int id);
/// <summary>
/// modified a T element with an id
/// modified a question with an id
/// </summary>
/// <param name="id">the id of the T element</param>
/// <param name="id">the id of the question</param>
/// <param name="question">an question that contains all modified properties</param>
/// <returns>
/// the T element (modified) that corresponde
/// the question modified that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> updateQuestion(uint id, T question);
public Task<T?> updateQuestion(int id, T question);
/// <summary>
/// increase nbFalls of a question by 1
/// (and change the difficulty of the question)
/// </summary>
/// <param name="id">the id of the question</param>
/// <returns>
/// the T element (modified) that corresponde
/// the question modified that corresponde
/// to the id or null if there isn't any
/// </returns>
public Task<T?> updateQuestionNbFalls(uint id);
public Task<T?> updateQuestionNbFalls(int id);
/// <summary>
/// add some questions
/// </summary>
@ -100,11 +100,11 @@ namespace ManagerInterfaces
/// <param name="idChapter">the id of the chapter</param>
/// <param name="difficulty">the difficulty</param>
/// <param name="nb">the actual page</param>
/// <param name="count">number of T element in a page</param>
/// <param name="count">number of question in a page</param>
/// <param name="orderCriteria">the order criteria</param>
/// <returns>
/// a set of the number of page and
/// all T element in the database for
/// all questions in the database for
/// the page nb (or null if the page
/// does not exist (<=> (nb-1)*count outside
/// boundaries (0, getNbElement()-1)))

@ -48,9 +48,9 @@ namespace ServiceManagers
return await Task.FromResult<(int nbPages, IEnumerable<AdministratorDto>? administrators)>((res.nbPages, tmp));
}
public int getNbElements()
public int getNbAdmins()
{
return manager.getNbElements();
return manager.getNbAdmins();
}
public async Task<AdministratorDto?> removeAdmin(AdministratorDto admin)

@ -23,9 +23,9 @@ namespace ServiceManagers
return await Task.FromResult<AnswerDto>((await manager.addAnswer(answerdto.ToModel())).ToDto());
}
public async Task<AnswerDto?> getAnswer(uint id)
public async Task<AnswerDto?> getAnswer(int id)
{
return await Task.FromResult<AnswerDto?>((await manager.getAnswer(id))?.ToDto());
return (await manager.getAnswer(id))?.ToDto();
}
public async Task<(int nbPages, IEnumerable<AnswerDto>? answers)> getAnswers(int nb, int count, AnswerOrderCriteria orderCriteria = AnswerOrderCriteria.ById)
@ -40,10 +40,10 @@ namespace ServiceManagers
tmp.Add(item.ToDto());
}
}
return await Task.FromResult<(int nbPages, IEnumerable<AnswerDto>? answers)>((res.nbPages, tmp));
return (res.nbPages, tmp);
}
public async Task<IEnumerable<AnswerDto>?> getAnswersByIdQuestion(uint id)
public async Task<IEnumerable<AnswerDto>?> getAnswersByIdQuestion(int id)
{
var tmp = await manager.getAnswersByIdQuestion(id);
List<AnswerDto>? answerdto = new List<AnswerDto>();
@ -55,15 +55,15 @@ namespace ServiceManagers
answerdto.Add(item.ToDto());
}
}
return await Task.FromResult<List<AnswerDto>?>(answerdto);
return answerdto;
}
public int getNbElements()
public int getNbAnswers()
{
return manager.getNbElements();
return manager.getNbAnswers();
}
public async Task<AnswerDto?> removeAnswer(uint id)
public async Task<AnswerDto?> removeAnswer(int id)
{
return (await manager.removeAnswer(id))?.ToDto();
}
@ -73,9 +73,14 @@ namespace ServiceManagers
return (await manager.removeAnswer(answerdto.ToModel()))?.ToDto();
}
public async Task<AnswerDto?> updateAnswer(uint id, AnswerDto answerdto)
public async Task<AnswerDto?> updateAnswer(int id, AnswerDto answerdto)
{
return (await manager.updateAnswer(id, answerdto.ToModel()))?.ToDto();
}
public async Task<IEnumerable<AnswerDto>?> getAnswers(string content)
{
return (await manager.getAnswers(content))?.Select(a => a.ToDto());
}
}
}

@ -22,11 +22,16 @@ namespace ServiceManagers
return await Task.FromResult<ChapterDto>((await manager.addChapter(chapterdto.ToModel())).ToDto());
}
public async Task<ChapterDto?> getChapter(uint id)
public async Task<ChapterDto?> getChapter(int id)
{
return await Task.FromResult<ChapterDto?>((await manager.getChapter(id))?.ToDto());
}
public async Task<ChapterDto?> getChapter(string name)
{
return (await manager.getChapter(name))?.ToDto();
}
public async Task<(int nbPages, IEnumerable<ChapterDto>? chapters)> getChapters(int nb, int count, ChapterOrderCriteria orderCriteria = ChapterOrderCriteria.ById)
{
List<ChapterDto>? tmp = new List<ChapterDto>();
@ -42,9 +47,9 @@ namespace ServiceManagers
return await Task.FromResult<(int nbPages, IEnumerable<ChapterDto>? chapters)>((res.nbPages, tmp));
}
public int getNbElements()
public int getNbChapters()
{
return manager.getNbElements();
return manager.getNbChapters();
}
public async Task<ChapterDto?> removeChapter(ChapterDto chapterdto)
@ -52,9 +57,14 @@ namespace ServiceManagers
return (await manager.removeChapter(chapterdto.ToModel()))?.ToDto();
}
public async Task<ChapterDto?> removeChapter(uint id)
public async Task<ChapterDto?> removeChapter(int id)
{
return (await manager.removeChapter(id))?.ToDto();
}
public async Task<ChapterDto?> updateChapter(int id, string newName)
{
return (await manager.updateChapter(id, newName))?.ToDto();
}
}
}

@ -37,14 +37,14 @@ namespace ServiceManagers
return await Task.FromResult<(int nbPages, IEnumerable<LobbyDto>? lobbies)>((res.nbPages, tmp));
}
public async Task<LobbyDto?> getLobby(uint id)
public async Task<LobbyDto?> getLobby(int id)
{
return await Task.FromResult<LobbyDto?>((await manager.getLobby(id))?.ToDto());
}
public int getNbElements()
public int getNbLobbies()
{
return manager.getNbElements();
return manager.getNbLobbies();
}
public async Task<LobbyDto?> removeLobby(LobbyDto lobbydto)
@ -52,7 +52,7 @@ namespace ServiceManagers
return (await manager.removeLobby(lobbydto.ToModel()))?.ToDto();
}
public async Task<LobbyDto?> removeLobby(uint id)
public async Task<LobbyDto?> removeLobby(int id)
{
return (await manager.removeLobby(id))?.ToDto();
}

@ -22,22 +22,22 @@ namespace ServiceManagers
return await Task.FromResult<PlayerDto>((await manager.addPlayer(playerdto.ToModel())).ToDto());
}
public async Task<uint?> getMaxScorePlayer(uint id, uint idChapter)
public async Task<int?> getMaxScorePlayer(int id, int idChapter)
{
return await manager.getMaxScorePlayer(id, idChapter);
}
public async Task<uint?> getMaxScorePlayer(uint id)
public async Task<int?> getMaxScorePlayer(int id)
{
return await manager.getMaxScorePlayer(id);
}
public int getNbElements()
public int getNbPlayers()
{
return manager.getNbElements();
return manager.getNbPlayers();
}
public async Task<PlayerDto?> getPlayer(uint id)
public async Task<PlayerDto?> getPlayer(int id)
{
return await Task.FromResult<PlayerDto?>((await manager.getPlayer(id))?.ToDto());
}
@ -62,7 +62,7 @@ namespace ServiceManagers
return await Task.FromResult<(int nbPages, IEnumerable<PlayerDto>? players)>((res.nbPages, tmp));
}
public async Task<IEnumerable<PlayerDto>?> getPlayersInALobby(uint idLobby)
public async Task<IEnumerable<PlayerDto>?> getPlayersInALobby(int idLobby)
{
List<PlayerDto>? tmp = new List<PlayerDto>();
var res = await manager.getPlayersInALobby(idLobby);
@ -82,7 +82,7 @@ namespace ServiceManagers
return (await manager.removePlayer(playerdto.ToModel()))?.ToDto();
}
public async Task<PlayerDto?> removePlayer(uint id)
public async Task<PlayerDto?> removePlayer(int id)
{
return (await manager.removePlayer(id))?.ToDto();
}

@ -41,12 +41,12 @@ namespace ServiceManagers
return tmp2;
}
public int getNbElements()
public int getNbQuestions()
{
return manager.getNbElements();
return manager.getNbQuestions();
}
public async Task<QuestionDto?> getQuestion(uint id)
public async Task<QuestionDto?> getQuestion(int id)
{
return await Task.FromResult<QuestionDto?>((await manager.getQuestion(id))?.ToDto());
}
@ -87,17 +87,17 @@ namespace ServiceManagers
return (await manager.removeQuestion(question.ToModel()))?.ToDto();
}
public async Task<QuestionDto?> removeQuestion(uint id)
public async Task<QuestionDto?> removeQuestion(int id)
{
return (await manager.removeQuestion(id))?.ToDto();
}
public async Task<QuestionDto?> updateQuestion(uint id, QuestionDto question)
public async Task<QuestionDto?> updateQuestion(int id, QuestionDto question)
{
return (await manager.updateQuestion(id, question.ToModel()))?.ToDto();
}
public async Task<QuestionDto?> updateQuestionNbFalls(uint id)
public async Task<QuestionDto?> updateQuestionNbFalls(int id)
{
return (await manager.updateQuestionNbFalls(id))?.ToDto();
}

Loading…
Cancel
Save