public void bookReturned(int bookId, string author, string title, bool byThisUser) { BookReturnedDTO bookReturnedDto = new BookReturnedDTO(bookId, author, title, byThisUser); LibraryUserEventArgs libraryUserEventArgs = new LibraryUserEventArgs(LibraryUserEvent.BookReturned, bookReturnedDto); Console.WriteLine("Book returned"); OnUserEvent(libraryUserEventArgs); }
public void bookUpdated(int bookId, int newQuantity, bool byThisUser) { BookBorrowedDTO bookBorrowedDto = new BookBorrowedDTO(bookId, newQuantity, byThisUser); LibraryUserEventArgs libraryUserEventArgs = new LibraryUserEventArgs(LibraryUserEvent.BookBorrowed, bookBorrowedDto); Console.WriteLine("Book updated"); OnUserEvent(libraryUserEventArgs); }
public void bookUpdated(int bookId, int newQuantity) { BookQuantityDTO bookQuantityDto = new BookQuantityDTO(bookId, newQuantity); LibraryUserEventArgs libraryUserEventArgs = new LibraryUserEventArgs(LibraryUserEvent.BookUpdated, bookQuantityDto); Console.WriteLine("Book updated"); OnUserEvent(libraryUserEventArgs); }
protected virtual void OnUserEvent(LibraryUserEventArgs e) { if (updateEvent == null) { return; } updateEvent(this, e); Console.WriteLine("Update Event called"); }
public void userUpdate(object sender, LibraryUserEventArgs e) { if (e.UserEventType == LibraryUserEvent.BookUpdated) { BookQuantityDTO bookQuantityDto = (BookQuantityDTO)e.Data; Book updated = null; foreach (Book availableBook in availableBooks) { if (availableBook.Id == bookQuantityDto.BookId) { updated = availableBook; } } if (bookQuantityDto.NewQuantity == 0) { availableBooks.Remove(updated); } else { updated.Available = bookQuantityDto.NewQuantity; } availableBooksList.DataSource = null; availableBooksList.DataSource = availableBooks; } if (e.UserEventType == LibraryUserEvent.BookReturned) { BookDTO bookDto = (BookDTO)e.Data; Book returnedAvailable = null; foreach (Book availableBook in availableBooks) { if (availableBook.Id == bookDto.Id) { returnedAvailable = availableBook; } } if (returnedAvailable == null) { returnedAvailable = new Book(bookDto.Id, bookDto.Author, bookDto.Title, 1); availableBooks.Add(returnedAvailable); } else { returnedAvailable.Available++; } Book returnedUser = null; foreach (Book userBook in userBooks) { if (userBook.Id == bookDto.Id) { returnedUser = userBook; } } userBooks.Remove(returnedUser); userBooksList.DataSource = null; userBooksList.DataSource = userBooks; availableBooksList.DataSource = null; availableBooksList.DataSource = availableBooks; } }