Merge branch 'master' of https://xp-dev.com/git/RRRRHHHH_Code
[RRRRHHHH_Code] / ruralHouses / src / dataAccess / DB4oManager.java
index a2bcfde..eb80b86 100644 (file)
@@ -4,7 +4,14 @@ import java.io.File;
 //import java.util.Enumeration;
 //import java.util.Vector;
 import java.rmi.RemoteException;
-import java.util.*;
+
+
+import java.util.Date;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Vector;
+
 
 import com.db4o.Db4oEmbedded;
 import com.db4o.ObjectContainer;
@@ -16,6 +23,7 @@ import com.db4o.query.Predicate;
 
 import configuration.ConfigXML;
 import domain.Account;
+import domain.Administrator;
 import domain.Booking;
 import domain.HouseFeatures;
 import domain.Offer;
@@ -124,11 +132,17 @@ public class DB4oManager {
                        Account jonAcc = new Account("userJon", "passJon", jon);
                        Account alfredoAcc = new Account("userAlfredo", "passAlfredo",
                                        alfredo);
+
+                       Account admin = new Account("admin","admin", true);
+                       db.store(Administrator.giveAdmin());
+                       db.store(jon);
+                       db.store(alfredo);
                        db.store(jonAcc);
                        db.store(alfredoAcc);
+                       db.store(admin);
                        db.commit();
                } finally {
-                       db.close();
+                       db.close();     
                }
        }
 
@@ -208,6 +222,62 @@ public class DB4oManager {
                }
        }
 
+       
+       public LinkedList<RuralHouse>[] getAdminData(){
+               if (c.isDatabaseLocal() == false)
+                       openSDB();
+               else
+                       openDB();
+               LinkedList<RuralHouse>[] ret =  new LinkedList[2];
+               
+               try {
+                       
+                       List<Administrator> admL = db.query(new Predicate<Administrator>(){
+                               public boolean match(Administrator admin){
+                                       return true;
+                               }
+                       });
+                       
+                       ret[0] = admL.get(0).getAddRequest();
+                       ret[1] = admL.get(0).getRemoveRequest();
+                       return ret;
+               }
+               finally {
+                       db.close();
+                       
+               }
+               
+       }
+       
+       public void storeAdmin() {
+               if (c.isDatabaseLocal() == false)
+                       openSDB();
+               else
+                       openDB();               
+               try {
+                       
+                       List<Administrator> admL = db.query(new Predicate<Administrator>(){
+                               public boolean match(Administrator admin){
+                                       return true;
+                               }
+                       });
+                       
+                       admL.get(0).setAddRequest(Administrator.getAddRequest());
+                       admL.get(0).setRemoveRequest(Administrator.getRemoveRequest());
+                       db.commit();
+                       
+               }
+               catch(Exception e){
+                       
+               }
+               finally {
+                       db.close();
+               }
+               
+               
+       }
+       
+       
        /**
         * This method creates a book with a corresponding parameters
         * 
@@ -225,6 +295,7 @@ public class DB4oManager {
                        openDB();
 
                Booking bok = null;
+               
 
                try {
 
@@ -354,7 +425,7 @@ public class DB4oManager {
                        openDB();
 
                try {
-                       Account proto = new Account(usr, pwd, new Owner(null, null));
+                       Account proto = new Account(usr, pwd, null);
                        ObjectSet<Account> result = db.queryByExample(proto);
                        Vector<Account> accounts = new Vector<Account>();
                        while (result.hasNext())
@@ -441,4 +512,6 @@ public class DB4oManager {
                }
 
        }
+
+       
 }