diff --git a/src/main/java/org/ntlab/citrusserver/repositories/BookManager.java b/src/main/java/org/ntlab/citrusserver/repositories/BookManager.java index b5937f1..bf694a3 100644 --- a/src/main/java/org/ntlab/citrusserver/repositories/BookManager.java +++ b/src/main/java/org/ntlab/citrusserver/repositories/BookManager.java @@ -2,6 +2,7 @@ import org.ntlab.citrusserver.entities.Account; import org.ntlab.citrusserver.entities.Book; +import org.ntlab.citrusserver.entities.Schedule; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Repository; @@ -44,7 +45,7 @@ Account account = accountManager.getAccount(accountId); //アカウントの取得 int newBookId = account.getNewBookId(); //新たに生成されたIdを取得(作成数もここで加算している) Book book = new Book(accountId, newBookId, title, publicity, color, getDateTime()); //本の初期化 - notifyListener(account, book);//公開設定を通知します + notifyChangedListener(account, book);//公開設定を通知します booksMap.get(accountId).put(newBookId, book); //ブックに追加 return booksMap.get(accountId).get(newBookId); //(int->Bookを返すように変更した) } @@ -58,6 +59,9 @@ //本の削除 public void deleteBook(String accountId, Integer bookId) { + Account account = accountManager.getAccount(accountId); + Book book = booksMap.get(accountId).get(bookId); + notifyDeletedListener(account, book); booksMap.get(accountId).remove(bookId); } @@ -89,7 +93,7 @@ Book book = booksMap.get(accountId).get(bookId); if(book.getPublicity() == publicity) return;//変更が無ければ終了 book.setPublicity(publicity); - notifyListener(account, book); + notifyChangedListener(account, book); } @@ -111,7 +115,7 @@ //--------------------------------------------------------------------------------- //IBookListenerに通知する - private void notifyListener(Account account, Book book) + private void notifyChangedListener(Account account, Book book) { for(IBookListener iBookListener : iBookListeners) { @@ -119,6 +123,14 @@ } } + private void notifyDeletedListener(Account account, Book book) + { + for(IBookListener iBookListener : iBookListeners) + { + iBookListener.bookDeleted(account, book); + } + } + //現在時刻の取得 private String getDateTime()