public LyricsController( ICreateLyricInputHandler <IActionResult> createLyricInputHandler, ICreateLyricOutputHandler <IActionResult> createLyricOutputHandler, IEditLyricInputHandler <IActionResult> editLyricInputHandler, IEditLyricOutputHandler <IActionResult> editLyricOutputHandler, IDeleteLyricInputHandler <IActionResult> deleteLyricInputHandler, IDeleteLyricOutputHandler <IActionResult> deleteLyricOutputHandler, IDetailsLyricsInputHandler <IActionResult> detailsLyricInputHandler, IDetailsLyricsOutputHandler <IActionResult> detailsLyricOutputHandler, IAllLyricsInputHandler <IActionResult> allLyricsInputHandler, IAllLyricsOutputHandler <IActionResult> allLyricsOutputHandler, IMyLyricsInputHandler <IActionResult> myLyricsInputHandler, IMyLyricsOutputHandler <IActionResult> myLyricsOutputHandler, ICanManageLyricInputHandler <IActionResult> canManageLyricInputHandler, ICanManageLyricOutputHandler <IActionResult> canManageLyricOutputHandler) { _createLyricInputHandler = createLyricInputHandler; _createLyricOutputHandler = createLyricOutputHandler; _editLyricInputHandler = editLyricInputHandler; _editLyricOutputHandler = editLyricOutputHandler; _deleteLyricInputHandler = deleteLyricInputHandler; _deleteLyricOutputHandler = deleteLyricOutputHandler; _detailsLyricInputHandler = detailsLyricInputHandler; _detailsLyricOutputHandler = detailsLyricOutputHandler; _allLyricsInputHandler = allLyricsInputHandler; _allLyricsOutputHandler = allLyricsOutputHandler; _myLyricsInputHandler = myLyricsInputHandler; _myLyricsOutputHandler = myLyricsOutputHandler; _canManageLyricInputHandler = canManageLyricInputHandler; _canManageLyricOutputHandler = canManageLyricOutputHandler; }
public async Task HandleAsync(DeleteLyricInput input, IDeleteLyricOutputHandler <T> output) { var dbLyric = await _lyricRepository.GetAsync(input.Id); if (dbLyric == null) { output.BadRequest("The given lyric does not exist"); return; } try { await _lyricRepository.DeleteAsync(dbLyric); output.Success($"Successfully deleted Lyric {dbLyric.Title}"); } catch (Exception) { output.BadRequest("Deleting lyric failed."); } }