The app allows you to perform different operations with books and clients
-
add book: you can add new book in the library.
If library contains this book already - the book will not be added -
delete book: you can delete book by name.
If library isn't contains this book - method return false -
find book: method find by name and return the Book object or return null
-
get all books: you can get the list of all books in the library
-
get books by author: you can get the list of books found by author
-
create visitors: you can create clients of library which have fields like name and borrowed book
-
borrow book: one visitor can borrow one book if library contain it.
Visitor can't borrow book if he has one already or if library don't have this book (by name).
Visitor can't borrow book with is already borrowed by another client. -
return book: visitor can return just his book, not such another.
Visitor can't return a book for someone. -
get visitors: return list of all clients which borrow some book
-
get borrowed books: return list of all borrowed books
-
get available books: return list of available books which is not borrowed by someone
There are some tests by JUnit in test directory To run tests with Maven run this command from project directory:
mvn test