Merge branch 'master' of ssh://xp-dev.com/RRRRHHHH_Code
[RRRRHHHH_Code] / ruralHouses / src / domain / Administrator.java
index 6102430..eb42f26 100644 (file)
@@ -1,35 +1,52 @@
 package domain;
 
+import java.io.Serializable;
 import java.util.LinkedList;
 
+import configuration.ConfigXML;
 import dataAccess.DB4oManager;
 
-public class Administrator {
+public class Administrator implements Serializable {
 
+       /**
+        * 
+        */
+       private static final long serialVersionUID = 1L;
+
+       private static Administrator admin = null;
        private static LinkedList<RuralHouse> addRequest;
        private static LinkedList<RuralHouse> removeRequest;
-       private Administrator(){
+       private static LinkedList<Account> newOwnerRequest;
+       static ConfigXML c;
+
+       private Administrator() {
                addRequest = new LinkedList<RuralHouse>();
-               removeRequest  = new LinkedList<RuralHouse>();
+               removeRequest = new LinkedList<RuralHouse>();
+               newOwnerRequest = new LinkedList<Account>();
        }
 
-       public static Administrator giveAdmin(){
-               return new Administrator();
-       }
-       
-       public static void getInstance(){
-               try {
-                       DB4oManager db4o = DB4oManager.getInstance();
-                       LinkedList<RuralHouse>[] temp = db4o.getAdminData();
-                       addRequest = temp[0];
-                       removeRequest = temp[1];
-               } catch (Exception e) {
-                       e.printStackTrace();
+       public static Administrator getInstance() {
+               c = ConfigXML.getInstance();
+               if (admin == null) {
+                       if (c.getDataBaseOpenMode().equals("initialize")) {
+                               admin = new Administrator();
+                       } else {
+                               DB4oManager db4o;
+                               try {
+                                       db4o = DB4oManager.getInstance();
+                                       admin = db4o.getAdminData();
+                               } catch (Exception e) {
+                                       // TODO Auto-generated catch block
+                                       e.printStackTrace();
+                               }
+                       }
                }
                
+               return admin;
+
        }
-       
-       public static void saveInstance(){
+
+       public static void saveInstance() {
                try {
                        DB4oManager.getInstance().storeAdmin();
                } catch (Exception e) {
@@ -37,20 +54,31 @@ public class Administrator {
                        e.printStackTrace();
                }
        }
+
        
-       public static LinkedList<RuralHouse> getAddRequest() {
+       public LinkedList<RuralHouse> getAddRequest() {
                return addRequest;
        }
-       public static LinkedList<RuralHouse> getRemoveRequest() {
+
+       public LinkedList<RuralHouse> getRemoveRequest() {
                return removeRequest;
        }
 
-       public static void setAddRequest(LinkedList<RuralHouse> addRequest) {
+       public void setAddRequest(LinkedList<RuralHouse> addRequest) {
                Administrator.addRequest = addRequest;
        }
 
-       public static void setRemoveRequest(LinkedList<RuralHouse> removeRequest) {
+       public void setRemoveRequest(LinkedList<RuralHouse> removeRequest) {
                Administrator.removeRequest = removeRequest;
+
+       }
+
+       public LinkedList<Account> getNewOwnerRequest() {
+               return newOwnerRequest;
+       }
+
+       public void setNewOwnerRequest(LinkedList<Account> newOwnerRequest) {
+               Administrator.newOwnerRequest = newOwnerRequest;
        }
 
 }