]> git.mxchange.org Git - addressbook-swing.git/commitdiff
Rewrite to data-gateway pattern
authorRoland Haeder <roland@mxchange.org>
Wed, 12 Aug 2015 13:58:15 +0000 (15:58 +0200)
committerRoland Haeder <roland@mxchange.org>
Wed, 12 Aug 2015 13:58:15 +0000 (15:58 +0200)
Signed-off-by:Roland Häder <roland@mxchange.org>

Addressbook/src/org/mxchange/addressbook/database/frontend/contact/AddressbookContactDatabaseFrontend.java

index 6fb08169feae3b14a3a8743e16f62b1d5f176acf..9b574f3d0390d6757e61b0aa02318cc3818d9ff1 100644 (file)
@@ -28,7 +28,10 @@ import org.mxchange.addressbook.exceptions.ContactAlreadyAddedException;
 import org.mxchange.addressbook.manager.contact.AddressbookContactManager;
 import org.mxchange.jcore.contact.Contact;
 import org.mxchange.jcore.contact.Gender;
+import org.mxchange.jcore.criteria.searchable.SearchCriteria;
+import org.mxchange.jcore.criteria.searchable.SearchableCritera;
 import org.mxchange.jcore.database.frontend.BaseDatabaseFrontend;
+import org.mxchange.jcore.database.result.Result;
 import org.mxchange.jcore.database.storage.Storeable;
 import org.mxchange.jcore.exceptions.BadTokenException;
 import org.mxchange.jcore.exceptions.UnsupportedDatabaseBackendException;
@@ -64,21 +67,18 @@ public class AddressbookContactDatabaseFrontend extends BaseDatabaseFrontend imp
 
        /**
         * Basic constrcutor
+        * @throws org.mxchange.jcore.exceptions.UnsupportedDatabaseBackendException If the database backend is not supported
+        * @throws java.sql.SQLException Any SQL exception from e.g. MySQL connector
         */
-       protected AddressbookContactDatabaseFrontend () {
+       protected AddressbookContactDatabaseFrontend () throws UnsupportedDatabaseBackendException, SQLException {
                // Trace message
                this.getLogger().trace("CALLED!"); //NOI18N
 
                // Set "table" name
                this.setTableName("contacts"); //NOI18N
 
-               try {
-                       // Initalize backend
-                       this.initBackend();
-               } catch (final UnsupportedDatabaseBackendException | SQLException ex) {
-                       // Abort program
-                       this.abortProgramWithException(ex);
-               }
+               // Initalize backend
+               this.initBackend();
        }
 
        /**
@@ -229,8 +229,17 @@ public class AddressbookContactDatabaseFrontend extends BaseDatabaseFrontend imp
         */
        @Override
        public boolean isOwnContactFound () throws SQLException {
+               // Get search criteria instance
+               SearchableCritera critera = new SearchCriteria();
+
+               // Add condition
+               critera.addCriteria(AddressbookContactDatabaseConstants.COLUMN_NAME_OWN_CONTACT, true);
+
+               // Get result
+               Result<? extends Storeable> result = this.getBackend().doSelectByCriteria(critera);
+
                // Deligate this call to backend
-               return this.getBackend().isRowFound(AddressbookContactDatabaseConstants.COLUMN_NAME_OWN_CONTACT, true);
+               return result.hasNext();
        }
 
        /**