From 05b308535a14cca14c9b176f081aeb2003abafdc Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roland=20H=C3=A4der?= Date: Wed, 10 Aug 2016 13:05:22 +0200 Subject: [PATCH] Rewrite continued: (please cherry-pick) - moved business methods to proper EJB as they are not contact-related but "phone-generic" enough. Maybe still mail notifications can be added to them. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Roland Häder --- ...dressbookAdminContactPhoneSessionBean.java | 96 ------------------ .../AddressbookAdminPhoneSessionBean.java | 98 ++++++++++++++++++- 2 files changed, 97 insertions(+), 97 deletions(-) diff --git a/src/java/org/mxchange/jcontacts/phone/AddressbookAdminContactPhoneSessionBean.java b/src/java/org/mxchange/jcontacts/phone/AddressbookAdminContactPhoneSessionBean.java index bd159b6..bb50f62 100644 --- a/src/java/org/mxchange/jcontacts/phone/AddressbookAdminContactPhoneSessionBean.java +++ b/src/java/org/mxchange/jcontacts/phone/AddressbookAdminContactPhoneSessionBean.java @@ -16,11 +16,8 @@ */ package org.mxchange.jcontacts.phone; -import java.text.MessageFormat; -import java.util.GregorianCalendar; import javax.ejb.Stateless; import org.mxchange.addressbook.database.BaseAddressbookDatabaseBean; -import org.mxchange.jphone.phonenumbers.cellphone.DialableCellphoneNumber; /** * A session EJB for administrative contact's phone number purposes @@ -35,97 +32,4 @@ public class AddressbookAdminContactPhoneSessionBean extends BaseAddressbookData */ private static final long serialVersionUID = 189_217_561_460_237_108L; - @Override - public void deleteCellphoneData (final DialableCellphoneNumber cellPhoneNumber) { - // Trace message - this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteCellphoneData: cellPhoneNumber={1} - CALLED!", this.getClass().getSimpleName(), cellPhoneNumber)); - - // Is all data set - if (null == cellPhoneNumber) { - // Not set, throw NPE - throw new NullPointerException("cellphoneNumber is null"); //NOI18N - } else if (cellPhoneNumber.getPhoneId() == null) { - // Throw NPE again - throw new NullPointerException("cellphoneNumber.phoneId is null"); //NOI18N - } else if (cellPhoneNumber.getPhoneId() < 1) { - // Invalid number - throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.phoneId={0} is not valid", cellPhoneNumber.getPhoneId())); //NOI18N - } else if (cellPhoneNumber.getCellphoneProvider() == null) { - // Throw NPE - throw new NullPointerException("cellphoneNumber.cellphoneProvider is null"); //NOI18N - } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() == null) { - // ... throw again - throw new NullPointerException("cellphoneNumber.cellphoneProvider.providerId is null"); //NOI18N - } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() < 1) { - // Id not valid - throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.cellphoneProvider.providerId={0} is not valid.", cellPhoneNumber.getCellphoneProvider().getProviderId())); //NOI18N - } else if (cellPhoneNumber.getPhoneNumber() == null) { - // Throw NPE again - throw new NullPointerException("cellphoneNumber.phoneNumber is null"); //NOI18N - } else if (cellPhoneNumber.getPhoneNumber() < 1) { - // Throw NPE again - throw new NullPointerException(MessageFormat.format("cellphoneNumber.phoneNumber={0} is not valid.", cellPhoneNumber.getPhoneNumber())); //NOI18N - } - - // Remove it from database - this.getEntityManager().remove(cellPhoneNumber); - - // Trace message - this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteCellphoneData: EXIT!", this.getClass().getSimpleName())); - } - - @Override - public DialableCellphoneNumber updateCellphoneData (final DialableCellphoneNumber cellPhoneNumber) { - // Trace message - this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateCellphoneData: cellPhoneNumber={1} - CALLED!", this.getClass().getSimpleName(), cellPhoneNumber)); - - // Is all data set - if (null == cellPhoneNumber) { - // Not set, throw NPE - throw new NullPointerException("cellphoneNumber is null"); //NOI18N - } else if (cellPhoneNumber.getPhoneId() == null) { - // Throw NPE again - throw new NullPointerException("cellphoneNumber.phoneId is null"); //NOI18N - } else if (cellPhoneNumber.getPhoneId() < 1) { - // Invalid number - throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.phoneId={0} is not valid", cellPhoneNumber.getPhoneId())); //NOI18N - } else if (cellPhoneNumber.getCellphoneProvider() == null) { - // Throw NPE - throw new NullPointerException("cellphoneNumber.cellphoneProvider is null"); //NOI18N - } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() == null) { - // ... throw again - throw new NullPointerException("cellphoneNumber.cellphoneProvider.providerId is null"); //NOI18N - } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() < 1) { - // Id not valid - throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.cellphoneProvider.providerId={0} is not valid.", cellPhoneNumber.getCellphoneProvider().getProviderId())); //NOI18N - } else if (cellPhoneNumber.getPhoneNumber() == null) { - // Throw NPE again - throw new NullPointerException("cellphoneNumber.phoneNumber is null"); //NOI18N - } else if (cellPhoneNumber.getPhoneNumber() < 1) { - // Throw NPE again - throw new NullPointerException(MessageFormat.format("cellphoneNumber.phoneNumber={0} is not valid.", cellPhoneNumber.getPhoneNumber())); //NOI18N - } - - // Set updated timestamp - cellPhoneNumber.setPhoneEntryUpdated(new GregorianCalendar()); - - // Get contact from it and find it - DialableCellphoneNumber foundNumber = this.getEntityManager().find(cellPhoneNumber.getClass(), cellPhoneNumber.getPhoneId()); - - // Should be found - assert (foundNumber instanceof DialableCellphoneNumber) : MessageFormat.format("Cell phone number with id {0} not found, but should be.", cellPhoneNumber.getPhoneId()); //NOI18N - - // Debug message - this.getLoggerBeanLocal().logDebug(MessageFormat.format("updateCellphoneData: foundNumber.phoneId={0}", foundNumber.getPhoneId())); //NOI18N - - // Merge contact instance - DialableCellphoneNumber detachedNumber = this.getEntityManager().merge(foundNumber); - - // Trace message - this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateCellphoneData: detachedNumber={1} - EXIT!", this.getClass().getSimpleName(), detachedNumber)); //NOI18N - - // Return it - return detachedNumber; - } - } diff --git a/src/java/org/mxchange/jphone/phonenumbers/phone/AddressbookAdminPhoneSessionBean.java b/src/java/org/mxchange/jphone/phonenumbers/phone/AddressbookAdminPhoneSessionBean.java index 3283773..acb4f6a 100644 --- a/src/java/org/mxchange/jphone/phonenumbers/phone/AddressbookAdminPhoneSessionBean.java +++ b/src/java/org/mxchange/jphone/phonenumbers/phone/AddressbookAdminPhoneSessionBean.java @@ -16,8 +16,11 @@ */ package org.mxchange.jphone.phonenumbers.phone; -import javax.ejb.Stateless; import org.mxchange.addressbook.database.BaseAddressbookDatabaseBean; +import java.text.MessageFormat; +import java.util.GregorianCalendar; +import javax.ejb.Stateless; +import org.mxchange.jphone.phonenumbers.cellphone.DialableCellphoneNumber; /** * An EJB for administrative phone purposes @@ -32,4 +35,97 @@ public class AddressbookAdminPhoneSessionBean extends BaseAddressbookDatabaseBea */ private static final long serialVersionUID = 18_597_165_817_401_853L; + @Override + public void deleteCellphoneData (final DialableCellphoneNumber cellPhoneNumber) { + // Trace message + this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteCellphoneData: cellPhoneNumber={1} - CALLED!", this.getClass().getSimpleName(), cellPhoneNumber)); + + // Is all data set + if (null == cellPhoneNumber) { + // Not set, throw NPE + throw new NullPointerException("cellphoneNumber is null"); //NOI18N + } else if (cellPhoneNumber.getPhoneId() == null) { + // Throw NPE again + throw new NullPointerException("cellphoneNumber.phoneId is null"); //NOI18N + } else if (cellPhoneNumber.getPhoneId() < 1) { + // Invalid number + throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.phoneId={0} is not valid", cellPhoneNumber.getPhoneId())); //NOI18N + } else if (cellPhoneNumber.getCellphoneProvider() == null) { + // Throw NPE + throw new NullPointerException("cellphoneNumber.cellphoneProvider is null"); //NOI18N + } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() == null) { + // ... throw again + throw new NullPointerException("cellphoneNumber.cellphoneProvider.providerId is null"); //NOI18N + } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() < 1) { + // Id not valid + throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.cellphoneProvider.providerId={0} is not valid.", cellPhoneNumber.getCellphoneProvider().getProviderId())); //NOI18N + } else if (cellPhoneNumber.getPhoneNumber() == null) { + // Throw NPE again + throw new NullPointerException("cellphoneNumber.phoneNumber is null"); //NOI18N + } else if (cellPhoneNumber.getPhoneNumber() < 1) { + // Throw NPE again + throw new NullPointerException(MessageFormat.format("cellphoneNumber.phoneNumber={0} is not valid.", cellPhoneNumber.getPhoneNumber())); //NOI18N + } + + // Remove it from database + this.getEntityManager().remove(cellPhoneNumber); + + // Trace message + this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.deleteCellphoneData: EXIT!", this.getClass().getSimpleName())); + } + + @Override + public DialableCellphoneNumber updateCellphoneData (final DialableCellphoneNumber cellPhoneNumber) { + // Trace message + this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateCellphoneData: cellPhoneNumber={1} - CALLED!", this.getClass().getSimpleName(), cellPhoneNumber)); + + // Is all data set + if (null == cellPhoneNumber) { + // Not set, throw NPE + throw new NullPointerException("cellphoneNumber is null"); //NOI18N + } else if (cellPhoneNumber.getPhoneId() == null) { + // Throw NPE again + throw new NullPointerException("cellphoneNumber.phoneId is null"); //NOI18N + } else if (cellPhoneNumber.getPhoneId() < 1) { + // Invalid number + throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.phoneId={0} is not valid", cellPhoneNumber.getPhoneId())); //NOI18N + } else if (cellPhoneNumber.getCellphoneProvider() == null) { + // Throw NPE + throw new NullPointerException("cellphoneNumber.cellphoneProvider is null"); //NOI18N + } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() == null) { + // ... throw again + throw new NullPointerException("cellphoneNumber.cellphoneProvider.providerId is null"); //NOI18N + } else if (cellPhoneNumber.getCellphoneProvider().getProviderId() < 1) { + // Id not valid + throw new IllegalArgumentException(MessageFormat.format("cellphoneNumber.cellphoneProvider.providerId={0} is not valid.", cellPhoneNumber.getCellphoneProvider().getProviderId())); //NOI18N + } else if (cellPhoneNumber.getPhoneNumber() == null) { + // Throw NPE again + throw new NullPointerException("cellphoneNumber.phoneNumber is null"); //NOI18N + } else if (cellPhoneNumber.getPhoneNumber() < 1) { + // Throw NPE again + throw new NullPointerException(MessageFormat.format("cellphoneNumber.phoneNumber={0} is not valid.", cellPhoneNumber.getPhoneNumber())); //NOI18N + } + + // Set updated timestamp + cellPhoneNumber.setPhoneEntryUpdated(new GregorianCalendar()); + + // Get contact from it and find it + DialableCellphoneNumber foundNumber = this.getEntityManager().find(cellPhoneNumber.getClass(), cellPhoneNumber.getPhoneId()); + + // Should be found + assert (foundNumber instanceof DialableCellphoneNumber) : MessageFormat.format("Cell phone number with id {0} not found, but should be.", cellPhoneNumber.getPhoneId()); //NOI18N + + // Debug message + this.getLoggerBeanLocal().logDebug(MessageFormat.format("updateCellphoneData: foundNumber.phoneId={0}", foundNumber.getPhoneId())); //NOI18N + + // Merge contact instance + DialableCellphoneNumber detachedNumber = this.getEntityManager().merge(foundNumber); + + // Trace message + this.getLoggerBeanLocal().logTrace(MessageFormat.format("{0}.updateCellphoneData: detachedNumber={1} - EXIT!", this.getClass().getSimpleName(), detachedNumber)); //NOI18N + + // Return it + return detachedNumber; + } + } -- 2.39.5