]> git.mxchange.org Git - jfinancials-lib.git/blobdiff - src/org/mxchange/addressbook/model/addressbook/AddressbookSessionBeanRemote.java
Added business method countAllUserSharedAddressbooks()
[jfinancials-lib.git] / src / org / mxchange / addressbook / model / addressbook / AddressbookSessionBeanRemote.java
index 3ec1bcc883c94eb28004cad55e478175cf049c01..b4909c0bec198a1a4f75d8737e37eefb85bf1a9f 100644 (file)
@@ -20,6 +20,8 @@ import java.io.Serializable;
 import java.util.List;
 import javax.ejb.Remote;
 import org.mxchange.addressbook.exceptions.AddressbookNameAlreadyUsedException;
+import org.mxchange.addressbook.exceptions.AddressbookNotFoundException;
+import org.mxchange.addressbook.model.addressbook.entry.AddressbookEntry;
 import org.mxchange.jusercore.model.user.User;
 
 /**
@@ -30,6 +32,40 @@ import org.mxchange.jusercore.model.user.User;
 @Remote
 public interface AddressbookSessionBeanRemote extends Serializable {
 
+       /**
+        * Count all shared address books by given user
+        * <p>
+        * @param user User instance
+        * <p>
+        * @return Count of all user's shared address books
+        */
+       Integer countAllUserSharedAddressbooks (final User user);
+
+       /**
+        * Some getter for an address book instance from given id number. If the
+        * address book is not found, an exception is thrown.
+        * <p>
+        * @param addressbookId Id number for address book instance
+        * <p>
+        * @return Address book instance
+        * <p>
+        * @throws org.mxchange.addressbook.exceptions.AddressbookNotFoundException
+        * If the address book cannot be found by given id number
+        * @throws NullPointerException If addressbookId is null
+        * @throws IllegalArgumentException If the id number is below 1
+        */
+       public Addressbook getAddressbookById (final Long addressbookId) throws AddressbookNotFoundException;
+
+       /**
+        * Returns a list of all entries of given address book, whether the assigned
+        * user is the "owner" or "sharer" of the entry.
+        * <p>
+        * @param addressbook Address book instance
+        * <p>
+        * @return List of all entries
+        */
+       List<AddressbookEntry> allEntries (final Addressbook addressbook);
+
        /**
         * Some "getter" for a list of address books the logged-in user has created
         * <p>
@@ -37,7 +73,7 @@ public interface AddressbookSessionBeanRemote extends Serializable {
         * <p>
         * @return List of all address books
         */
-       public List<Addressbook> getUsersList(final User loggedInUser);
+       List<Addressbook> getUsersList (final User loggedInUser);
 
        /**
         * Creates given address book by persisting it. A User instance must be set,
@@ -47,9 +83,20 @@ public interface AddressbookSessionBeanRemote extends Serializable {
         * <p>
         * @return Updated address book instance
         * <p>
-        * @throws org.mxchange.addressbook.exceptions.AddressbookNameAlreadyUsedException If the address book's name has already been used by the user.
+        * @throws
+        * org.mxchange.addressbook.exceptions.AddressbookNameAlreadyUsedException
+        * If the address book's name has already been used by the user.
+        */
+       Addressbook createAddressbook (final Addressbook addressbook) throws AddressbookNameAlreadyUsedException;
+
+       /**
+        * Checks whether the given address book id is used (means available).
+        * <p>
+        * @param addressbookId Address book id to check
+        * <p>
+        * @return Whether the id is valid
         */
-       public Addressbook createAddressbook(final Addressbook addressbook) throws AddressbookNameAlreadyUsedException;
+       boolean isAddressbookIdUsed (final Long addressbookId);
 
        /**
         * Checks if the given address book's name is already used by the user.
@@ -58,5 +105,5 @@ public interface AddressbookSessionBeanRemote extends Serializable {
         * <p>
         * @return Whether the name has already been used by the user
         */
-       public boolean isAddressbookNameUsed(final Addressbook addressbook);
+       boolean isAddressbookNameUsed (final Addressbook addressbook);
 }