]> git.mxchange.org Git - jjobs-ejb.git/blobdiff - src/java/org/mxchange/jcontacts/model/contact/JobsAdminContactSessionBean.java
Updated copyright year
[jjobs-ejb.git] / src / java / org / mxchange / jcontacts / model / contact / JobsAdminContactSessionBean.java
index a77eae0c6d3a5aace0f9ac662b41b791f02b806e..6fe4a0ab6c8bcb66abd2a6ca836159d74cfae916 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 - 2018 Free Software Foundation
+ * Copyright (C) 2016 - 2022 Free Software Foundation
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as
@@ -18,12 +18,12 @@ package org.mxchange.jcontacts.model.contact;
 
 import java.text.MessageFormat;
 import java.util.Date;
+import java.util.Objects;
+import javax.ejb.EJB;
 import javax.ejb.Stateless;
-import javax.persistence.NoResultException;
-import javax.persistence.Query;
 import org.mxchange.jcontacts.exceptions.ContactAlreadyAddedException;
 import org.mxchange.jcontacts.exceptions.ContactNotFoundException;
-import org.mxchange.jjobs.database.BaseJobsDatabaseBean;
+import org.mxchange.jjobs.enterprise.BaseJobsEnterpriseBean;
 
 /**
  * An administrative contact EJB
@@ -31,13 +31,19 @@ import org.mxchange.jjobs.database.BaseJobsDatabaseBean;
  * @author Roland Häder<roland@mxchange.org>
  */
 @Stateless (name = "adminContact", description = "An administrative contact EJB")
-public class JobsAdminContactSessionBean extends BaseJobsDatabaseBean implements AdminContactSessionBeanRemote {
+public class JobsAdminContactSessionBean extends BaseJobsEnterpriseBean implements AdminContactSessionBeanRemote {
 
        /**
         * Serial number
         */
        private static final long serialVersionUID = 542_145_347_916L;
 
+       /**
+        * EJB for general contact purposes
+        */
+       @EJB (lookup = "java:global/jjobs-ejb/contact!org.mxchange.jcontacts.model.contact.ContactSessionBeanRemote")
+       private ContactSessionBeanRemote contactBean;
+
        /**
         * Default constructor
         */
@@ -64,7 +70,7 @@ public class JobsAdminContactSessionBean extends BaseJobsDatabaseBean implements
                }
 
                // Set created timestamp
-               contact.setContactCreated(new Date());
+               contact.setContactEntryCreated(new Date());
 
                // Set all created timestamps, if instance is there
                this.setAllPhoneEntriesCreated(contact);
@@ -120,25 +126,19 @@ public class JobsAdminContactSessionBean extends BaseJobsDatabaseBean implements
                // Trace message
                this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.isContactRegistered: contact={1} - CALLED!", this.getClass().getSimpleName(), contact)); //NOI18N
 
-               // Create query
-               final Query query = this.getEntityManager().createNamedQuery("SearchContact"); //NOI18N
-
-               // Set parameter
-               query.setParameter("contact", contact); //NOI18N
-               query.setMaxResults(1);
-
                // Default is not found
                boolean isFound = false;
 
-               // Try it
-               try {
-                       // Try to find instance
-                       final Contact dummy = (Contact) query.getSingleResult();
+               // Fest all entries and iterate over them
+               for (final Contact currentContact : this.contactBean.fetchAllContacts()) {
+                       // Is found?
+                       if (Objects.equals(contact, currentContact)) {
+                               // Yes, found the same
+                               isFound = true;
 
-                       // Mark as found
-                       isFound = true;
-               } catch (final NoResultException e) {
-                       // No result found
+                               // Abort loop
+                               break;
+                       }
                }
 
                // Trace message