mail service added when an owner is deleted from the system
[RRRRHHHH_Code] / ruralHouses / src / businessLogic / AccountManager.java
index 6f3b626..0ad55b1 100644 (file)
@@ -1,14 +1,26 @@
 package businessLogic;
 
+import java.rmi.RemoteException;
+import java.rmi.server.UnicastRemoteObject;
+
+import javax.mail.MessagingException;
+
+import common.AccountInterface;
 import dataAccess.DB4oManager;
 import domain.Account;
+import domain.Administrator;
+import domain.Owner;
 
-public class AccountManager {
-       
+public class AccountManager extends UnicastRemoteObject implements
+               AccountInterface {
+
+       /**
+        * 
+        */
+       private static final long serialVersionUID = 1L;
        private DB4oManager dbMngr;
-       
-       
-       public AccountManager() {
+
+       public AccountManager() throws RemoteException {
                try {
                        dbMngr = DB4oManager.getInstance();
                } catch (Exception e) {
@@ -16,18 +28,39 @@ public class AccountManager {
                        e.printStackTrace();
                }
        }
-       
-       public boolean addAccount(Account ac){
-               if(this.dbMngr.addAccount(ac))
+
+       public boolean addAccount(int index) throws RemoteException {
+               Account ac = Administrator.getInstance().getNewOwnerRequest()
+                               .get(index);
+               if (this.dbMngr.addAccount(ac)) {
+                       try {
+                               MailManager.getInstance().Send(ac.getOwner().getMailAccount(),
+                                               "Entered into the system", "Congratulations");
+                       } catch (MessagingException e) {
+                               e.printStackTrace();
+                       }
                        return true;
+               }
                return false;
-               
+
        }
-       
-       public boolean removeAccount(Account ac){
-               if(this.dbMngr.removeAccount(ac))
-                       return true;
+
+       public boolean removeAccount(int index) throws RemoteException {
+               AdminManager adm = new AdminManager();
+               Owner own = adm.getAllOwners().get(index);
+               try {
+                       if (this.dbMngr.removeAccount(own)) {
+                               try {
+                                       MailManager.getInstance().Send(own.getMailAccount(), "Removed from the system", "We are sorry");
+                               } catch (MessagingException e) {
+                                       e.printStackTrace();
+                               }
+                               return true;
+                       }
+               } catch (Exception e) {
+                       e.printStackTrace();
+               }
                return false;
-               
+
        }
 }