From a6928dac04310e41d1f0b22e039f6b7059d1d7e3 Mon Sep 17 00:00:00 2001 From: Roland Haeder Date: Mon, 5 Oct 2015 14:47:26 +0200 Subject: [PATCH] =?utf8?q?Continued:=20-=20added=202=20beans=20(controller?= =?utf8?q?)=20for=20handling=20gender=20and=20user.=20These=20classes/inte?= =?utf8?q?rfaces=20has=20been=20taken=20from=20my=20pizzaservice-war=20pro?= =?utf8?q?ject=20and=20renamed=20to=20fit=20with=20this=20project.=20-=20a?= =?utf8?q?dded=20more=20required=20jars=20Signed-off-by:Roland=20H=C3=A4de?= =?utf8?q?r=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- lib/cdi-api.jar | Bin 0 -> 72495 bytes lib/gf-client.jar | Bin 0 -> 22389 bytes lib/jcontacts-business-core.jar | Bin 0 -> 38557 bytes lib/jcontacts-core.jar | Bin 0 -> 18555 bytes lib/jcontacts-lib.jar | Bin 0 -> 363 bytes lib/jcore-logger-lib.jar | Bin 0 -> 2496 bytes lib/jcore.jar | Bin 0 -> 13647 bytes lib/jcoreee.jar | Bin 0 -> 17834 bytes nbproject/build-impl.xml | 16 + nbproject/genfiles.properties | 6 +- nbproject/project.properties | 25 +- nbproject/project.xml | 32 ++ .../beans/gender/GenderWebBean.java | 60 ++++ .../beans/gender/GenderWebController.java | 43 +++ .../addressbook/beans/user/UserWebBean.java | 303 ++++++++++++++++++ .../beans/user/UserWebController.java | 224 +++++++++++++ 16 files changed, 705 insertions(+), 4 deletions(-) create mode 100644 lib/cdi-api.jar create mode 100644 lib/gf-client.jar create mode 100644 lib/jcontacts-business-core.jar create mode 100644 lib/jcontacts-core.jar create mode 100644 lib/jcontacts-lib.jar create mode 100644 lib/jcore-logger-lib.jar create mode 100644 lib/jcore.jar create mode 100644 lib/jcoreee.jar create mode 100644 src/java/org/mxchange/addressbook/beans/gender/GenderWebBean.java create mode 100644 src/java/org/mxchange/addressbook/beans/gender/GenderWebController.java create mode 100644 src/java/org/mxchange/addressbook/beans/user/UserWebBean.java create mode 100644 src/java/org/mxchange/addressbook/beans/user/UserWebController.java diff --git a/lib/cdi-api.jar b/lib/cdi-api.jar new file mode 100644 index 0000000000000000000000000000000000000000..1fa239e32faa7468d035a372f919b4075a8eb50e GIT binary patch literal 72495 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

bU^}u0LY4}2+~T*iP3*e0stud5k&!jfPetN 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 literal 0 HcmV?d00001 diff --git a/lib/jcontacts-business-core.jar b/lib/jcontacts-business-core.jar new file mode 100644 index 0000000000000000000000000000000000000000..6f1c0963fd65c5a2b5779c1921f97e05c940273c GIT binary patch literal 38557 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 IF?*r^15QN5#Q*>R literal 0 HcmV?d00001 diff --git a/lib/jcontacts-lib.jar b/lib/jcontacts-lib.jar new file mode 100644 index 0000000000000000000000000000000000000000..7797a5a531de5079d6a9e194c977078fb4408e03 GIT binary patch literal 363 zcmWIWW@h1HVBlb2=+1O?XFvj+3@i-3t|5-Po_=on|4uP51i+Pc0hJyWNuQezR1U%- zKnPdr>*(j{<{BKL=j+DEAOMyJnF>+|0=|iPnQ5uTCAwj$Ma7xA1nYnI~fuVwie^Fv`PO5@)eo;Yw zQDO{zPcS^eIFmh+NXB4J5JoJHVTj4Wxnz M2y21#4G@O`0AN{0C;$Ke literal 0 HcmV?d00001 diff --git a/lib/jcore-logger-lib.jar b/lib/jcore-logger-lib.jar new file mode 100644 index 0000000000000000000000000000000000000000..52fec3eeac8e20f05eb98cdae8e4147b7462ff3f GIT binary patch literal 2496 zcmbtV&rcgi6n<-rZ5B)*ailg?Q`18ditvJ36}2b_2iC2FZ5-neMLk60&9E$5cF}m9 z!jWU7{0lu)%3sk#FYSp#|9~D^<hA1P=&d!_fy*KmboA>Hl6G@#Y zL$qz1-_byuq9j$#W^uV(D;ei!MD-rD2Iy}&`zIT4?m6@xv|6l{OXg0qP%Tx3=j_RL zu)Hf(+wr|`^Q(oGtX}j6B*i0P?aMr5Sp25&RaW0nQUvn(@`Dq`uN79FeZ98aT3OBC z+g8GIWq!j~N4^pPEG}mCtlr<)=oymOn6GT(azwU^I6SuYg=fnc=qIDl1It%ZO4qk- zsbUlt;uTv`cIm1_bEI0=C?75vF0RuMJsqPV0||4!2gu|L;dbEc&O4xW-*v1LD5M*Y zYt3@i)acXkDovqm836hD_;u5jhj8CKIg$XS@LIm#-o!>qWwU~Ds$OgqAv7BrC7Vy{ zaJ0(A?a^|WYY}ClJMUf>!luz22PHcBc8dd}(Pw?pKrs5TyrYpu3G@lv3*nF7OoApU zg|Pr>8e<0QQ<8L=rWyYIfs&H4G|QiB{F&p={O~i=UfurtKhTBy28_J-dGM+p;B8cx z+9UJ@c;k- literal 0 HcmV?d00001 diff --git a/lib/jcore.jar b/lib/jcore.jar new file mode 100644 index 0000000000000000000000000000000000000000..2c6f30efe9f8c246eae16a87aef835bb909ba01d GIT binary patch literal 13647 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 QEO0sg{TEWN@8NI%3yN7y1^@s6 literal 0 HcmV?d00001 diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml index 4fa04c42..0823cda1 100644 --- a/nbproject/build-impl.xml +++ b/nbproject/build-impl.xml @@ -1030,12 +1030,28 @@ exists or setup the property manually. For example like this: + + + + + + + + + + + + + + + + diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties index b5a11b4c..f9b11ae5 100644 --- a/nbproject/genfiles.properties +++ b/nbproject/genfiles.properties @@ -1,8 +1,8 @@ -build.xml.data.CRC32=35b2ba60 +build.xml.data.CRC32=8c263e2e build.xml.script.CRC32=be5f34f7 build.xml.stylesheet.CRC32=651128d4@1.68.1.1 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=35b2ba60 -nbproject/build-impl.xml.script.CRC32=a9cd461e +nbproject/build-impl.xml.data.CRC32=8c263e2e +nbproject/build-impl.xml.script.CRC32=51a78ef4 nbproject/build-impl.xml.stylesheet.CRC32=99ea4b56@1.68.1.1 diff --git a/nbproject/project.properties b/nbproject/project.properties index 9d1fd571..84bb6385 100644 --- a/nbproject/project.properties +++ b/nbproject/project.properties @@ -33,7 +33,16 @@ dist.dir=dist dist.ear.war=${dist.dir}/${war.ear.name} dist.javadoc.dir=${dist.dir}/javadoc dist.war=${dist.dir}/${war.name} +endorsed.classpath= excludes= +file.reference.cdi-api.jar=lib/cdi-api.jar +file.reference.gf-client.jar=lib/gf-client.jar +file.reference.jcontacts-business-core.jar=lib/jcontacts-business-core.jar +file.reference.jcontacts-core.jar=lib/jcontacts-core.jar +file.reference.jcontacts-lib.jar=lib\\jcontacts-lib.jar +file.reference.jcore-logger-lib.jar=lib/jcore-logger-lib.jar +file.reference.jcore.jar=lib/jcore.jar +file.reference.jcoreee.jar=lib/jcoreee.jar includes=** j2ee.compile.on.save=true j2ee.copy.static.files.on.save=true @@ -48,7 +57,15 @@ j2ee.platform.wsit.classpath= j2ee.server.type=gfv3ee6 jar.compress=false javac.classpath=\ - ${reference.addressbook-lib.jar} + ${file.reference.jcore.jar}:\ + ${file.reference.jcoreee.jar}:\ + ${file.reference.jcore-logger-lib.jar}:\ + ${file.reference.jcontacts-core.jar}:\ + ${file.reference.jcontacts-business-core.jar}:\ + ${file.reference.jcontacts-lib.jar}:\ + ${reference.addressbook-lib.jar}:\ + ${file.reference.cdi-api.jar}:\ + ${file.reference.gf-client.jar} # Space-separated list of extra javac options javac.compilerargs=-Xlint:unchecked -Xlint:deprecation javac.debug=true @@ -88,6 +105,12 @@ run.test.classpath=\ # (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value): runmain.jvmargs= source.encoding=UTF-8 +source.reference.jcontacts-business-core.jar=../jcontacts-business-core/src/ +source.reference.jcontacts-core.jar=../jcontacts-core/src/ +source.reference.jcontacts-lib.jar=../jcontacts-lib/src/ +source.reference.jcore-logger-lib.jar=../jcore-logger-lib/src/ +source.reference.jcore.jar=../jcore/src/ +source.reference.jcoreee.jar=../jcoreee/src/ source.root=src src.dir=${source.root}/java test.src.dir=test diff --git a/nbproject/project.xml b/nbproject/project.xml index 87a35b3e..97607b30 100644 --- a/nbproject/project.xml +++ b/nbproject/project.xml @@ -6,10 +6,42 @@ addressbook-war 1.6.5 + + ${file.reference.jcore.jar} + WEB-INF/lib + + + ${file.reference.jcoreee.jar} + WEB-INF/lib + + + ${file.reference.jcore-logger-lib.jar} + WEB-INF/lib + + + ${file.reference.jcontacts-core.jar} + WEB-INF/lib + + + ${file.reference.jcontacts-business-core.jar} + WEB-INF/lib + + + ${file.reference.jcontacts-lib.jar} + WEB-INF/lib + ${reference.addressbook-lib.jar} WEB-INF/lib + + ${file.reference.cdi-api.jar} + WEB-INF/lib + + + ${file.reference.gf-client.jar} + WEB-INF/lib + diff --git a/src/java/org/mxchange/addressbook/beans/gender/GenderWebBean.java b/src/java/org/mxchange/addressbook/beans/gender/GenderWebBean.java new file mode 100644 index 00000000..f35f4603 --- /dev/null +++ b/src/java/org/mxchange/addressbook/beans/gender/GenderWebBean.java @@ -0,0 +1,60 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package org.mxchange.addressbook.beans.gender; + +import java.util.List; +import javax.enterprise.context.ApplicationScoped; +import javax.inject.Named; +import org.mxchange.jcontacts.contact.gender.Gender; +import org.mxchange.jcontacts.contact.gender.GenderUtils; + +/** + * A gender bean + *

+ * @author Roland Haeder + */ +@Named ("gender") +@ApplicationScoped +public class GenderWebBean implements GenderWebController { + + /** + * Serial number + */ + private static final long serialVersionUID = 835_482_364_189L; + + /** + * Default constructor + */ + public GenderWebBean () { + } + + @Override + public Gender[] getAllGenders () { + // Return it + return Gender.values(); + } + + @Override + public List getSelectableGenders () { + // Init array + // TODO Call EJB here? + List genders = GenderUtils.selectableGenders(); + + // Return it + return genders; + } +} diff --git a/src/java/org/mxchange/addressbook/beans/gender/GenderWebController.java b/src/java/org/mxchange/addressbook/beans/gender/GenderWebController.java new file mode 100644 index 00000000..c3f6c4a8 --- /dev/null +++ b/src/java/org/mxchange/addressbook/beans/gender/GenderWebController.java @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package org.mxchange.addressbook.beans.gender; + +import java.io.Serializable; +import java.util.List; +import org.mxchange.jcontacts.contact.gender.Gender; + +/** + * An interface for data beans + *

+ * @author Roland Haeder + */ +public interface GenderWebController extends Serializable { + + /** + * Getter for all genders as array + *

+ * @return All genders as array + */ + public Gender[] getAllGenders (); + + /** + * Getter for only selectable genders as array, UNKNOWN is not selectable + *

+ * @return All genders as array + */ + public List getSelectableGenders (); +} diff --git a/src/java/org/mxchange/addressbook/beans/user/UserWebBean.java b/src/java/org/mxchange/addressbook/beans/user/UserWebBean.java new file mode 100644 index 00000000..f79582b0 --- /dev/null +++ b/src/java/org/mxchange/addressbook/beans/user/UserWebBean.java @@ -0,0 +1,303 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package org.mxchange.addressbook.beans.user; + +import javax.enterprise.context.SessionScoped; +import javax.faces.view.facelets.FaceletException; +import javax.inject.Named; +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.naming.NamingException; +import org.mxchange.jcontacts.contact.Contact; +import org.mxchange.jcontacts.contact.UserContact; +import org.mxchange.jcontacts.contact.gender.Gender; + +/** + * A user bean (controller) + *

+ * @author Roland Haeder + */ +@Named ("userController") +@SessionScoped +public class UserWebBean implements UserWebController { + + /** + * Serial number + */ + private static final long serialVersionUID = 542_145_347_916L; + + /////////////////////// Properties ///////////////////// + /** + * Cellphone number + */ + private String cellphoneNumber; + + /** + * City + */ + private String city; + + /** + * Optional comments + */ + private String comment; + + /** + * Company name + */ + private String companyName; + + /** + * Country code + */ + private String countryCode; + + /** + * Remote user bean + */ + private final UserSessionBeanRemote userBean; + + /** + * Email address + */ + private String emailAddress; + + /** + * Family name + */ + private String familyName; + + /** + * Fax number + */ + private String faxNumber; + + /** + * First name + */ + private String firstName; + + /** + * Gender instance + */ + private Gender gender; + + /** + * House number + */ + private Short houseNumber; + + /** + * Phone number + */ + private String phoneNumber; + + /** + * Street + */ + private String street; + + /** + * ZIP code + */ + private Integer zipCode; + + /** + * Default constructor + */ + public UserWebBean () { + // Set gender to UNKNOWN + this.gender = Gender.UNKNOWN; + + // Try it + try { + // Get initial context + Context context = new InitialContext(); + + // Try to lookup + this.userBean = (UserSessionBeanRemote) context.lookup("ejb/stateless-user"); + } catch (final NamingException e) { + // Throw again + throw new FaceletException(e); + } + } + + @Override + public User createCustomerInstance () { + // User message + //this.getLogger().logTrace("createInstance: CALLED!"); + + // Required personal data must be set + assert (this.isRequiredPersonalDataSet()) : "not all personal data is set"; //NOI18N + + // Create new user instance + User user = new AddressbookUser(); + + // Create new contact + Contact contact = new UserContact(this.getGender(), this.getFirstName(), this.getFamilyName(), this.getCompanyName()); + contact.setStreet(this.getStreet()); + contact.setHouseNumber(this.getHouseNumber()); + contact.setZipCode(this.getZipCode()); + contact.setCity(this.getCity()); + contact.setPhoneNumber(this.getPhoneNumber()); + contact.setFaxNumber(this.getFaxNumber()); + contact.setCellphoneNumber(this.getCellphoneNumber()); + + // Set contact in user + user.setContact(contact); + + // Trace message + //this.getLogger().logTrace(MessageFormat.format("createInstance: user={0} - EXIT!", user)); + // Return it + return user; + } + + @Override + public String getCellphoneNumber () { + return this.cellphoneNumber; + } + + @Override + public void setCellphoneNumber (final String cellphoneNumber) { + this.cellphoneNumber = cellphoneNumber; + } + + @Override + public String getCity () { + return this.city; + } + + @Override + public void setCity (final String city) { + this.city = city; + } + + @Override + public String getCompanyName () { + return this.companyName; + } + + @Override + public void setCompanyName (final String companyName) { + this.companyName = companyName; + } + + @Override + public String getCountryCode () { + return this.countryCode; + } + + @Override + public void setCountryCode (final String countryCode) { + this.countryCode = countryCode; + } + + @Override + public String getEmailAddress () { + return this.emailAddress; + } + + @Override + public void setEmailAddress (final String emailAddress) { + this.emailAddress = emailAddress; + } + + @Override + public String getFamilyName () { + return this.familyName; + } + + @Override + public void setFamilyName (final String familyName) { + this.familyName = familyName; + } + + @Override + public String getFaxNumber () { + return this.faxNumber; + } + + @Override + public void setFaxNumber (final String faxNumber) { + this.faxNumber = faxNumber; + } + + @Override + public String getFirstName () { + return this.firstName; + } + + @Override + public void setFirstName (final String firstName) { + this.firstName = firstName; + } + + @Override + public Gender getGender () { + return this.gender; + } + + @Override + public void setGender (final Gender gender) { + this.gender = gender; + } + + @Override + public Short getHouseNumber () { + return this.houseNumber; + } + + @Override + public void setHouseNumber (final Short houseNumber) { + this.houseNumber = houseNumber; + } + + @Override + public String getPhoneNumber () { + return this.phoneNumber; + } + + @Override + public void setPhoneNumber (final String phoneNumber) { + this.phoneNumber = phoneNumber; + } + + @Override + public String getStreet () { + return this.street; + } + + @Override + public void setStreet (final String street) { + this.street = street; + } + + @Override + public Integer getZipCode () { + return this.zipCode; + } + + @Override + public void setZipCode (final Integer zipCode) { + this.zipCode = zipCode; + } + + @Override + public boolean isRequiredPersonalDataSet () { + return ((this.getGender() != null) && (this.getFirstName() != null) && (this.getFamilyName() != null) && (this.getStreet() != null) && (this.getHouseNumber() != null) && (this.getZipCode() != null) && (this.getCity() != null)); + } +} diff --git a/src/java/org/mxchange/addressbook/beans/user/UserWebController.java b/src/java/org/mxchange/addressbook/beans/user/UserWebController.java new file mode 100644 index 00000000..deed6be4 --- /dev/null +++ b/src/java/org/mxchange/addressbook/beans/user/UserWebController.java @@ -0,0 +1,224 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +package org.mxchange.addressbook.beans.user; + +import java.io.Serializable; +import org.mxchange.jcontacts.contact.gender.Gender; + +/** + * An interface for user beans + *

+ * @author Roland Haeder + */ +public interface UserWebController extends Serializable { + + /** + * Creates an instance from all properties + *

+ * @return A Customer instance + */ + public User createCustomerInstance (); + + /** + * Cellphone number + *

+ * @return the cellphoneNumber + */ + public String getCellphoneNumber (); + + /** + * Cellphone number + *

+ * @param cellphoneNumber the cellphoneNumber to set + */ + public void setCellphoneNumber (final String cellphoneNumber); + + /** + * City + *

+ * @return the city + */ + public String getCity (); + + /** + * City + *

+ * @param city the city to set + */ + public void setCity (final String city); + + /** + * Company name + *

+ * @return the companyName + */ + public String getCompanyName (); + + /** + * Company name + *

+ * @param companyName the companyName to set + */ + public void setCompanyName (final String companyName); + + /** + * Country code + *

+ * @return the countryCode + */ + public String getCountryCode (); + + /** + * Country code + *

+ * @param countryCode the countryCode to set + */ + public void setCountryCode (final String countryCode); + + /** + * Email address + *

+ * @return the emailAddress + */ + public String getEmailAddress (); + + /** + * Email address + *

+ * @param emailAddress the emailAddress to set + */ + public void setEmailAddress (final String emailAddress); + + /** + * Family name + *

+ * @return the familyName + */ + public String getFamilyName (); + + /** + * Family name + *

+ * @param familyName the familyName to set + */ + public void setFamilyName (final String familyName); + + /** + * Fax number + *

+ * @return the faxNumber + */ + public String getFaxNumber (); + + /** + * Fax number + *

+ * @param faxNumber the faxNumber to set + */ + public void setFaxNumber (final String faxNumber); + + /** + * First name + *

+ * @return the first name + */ + public String getFirstName (); + + /** + * First name + *

+ * @param firstName the first name to set + */ + public void setFirstName (final String firstName); + + /** + * Gender of the contact + *

+ * @return the gender + */ + public Gender getGender (); + + /** + * Gender of the contact + *

+ * @param gender the gender to set + */ + public void setGender (final Gender gender); + + /** + * House number + *

+ * @return the houseNumber + */ + public Short getHouseNumber (); + + /** + * House number + *

+ * @param houseNumber the houseNumber to set + */ + public void setHouseNumber (final Short houseNumber); + + /** + * Phone number + *

+ * @return the phoneNumber + */ + public String getPhoneNumber (); + + /** + * Phone number + *

+ * @param phoneNumber the phoneNumber to set + */ + public void setPhoneNumber (final String phoneNumber); + + /** + * Street + *

+ * @return the street + */ + public String getStreet (); + + /** + * Street + *

+ * @param street the street to set + */ + public void setStreet (final String street); + + /** + * ZIP code + *

+ * @return the zipCode + */ + public Integer getZipCode (); + + /** + * ZIP code + *

+ * @param zipCode the zipCode to set + */ + public void setZipCode (final Integer zipCode); + + /** + * Checks whether all required personal data is set + *

+ * @return Whether the required personal data is set + */ + public boolean isRequiredPersonalDataSet (); +} -- 2.39.5