import java.text.MessageFormat;
import java.util.Collections;
import java.util.Date;
-import java.util.GregorianCalendar;
import java.util.Iterator;
import java.util.List;
import java.util.Objects;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
+import org.mxchange.addressbook.beans.login.AddressbookUserLoginWebSessionController;
import org.mxchange.jcontacts.contact.Contact;
import org.mxchange.jcontacts.contact.UserContact;
import org.mxchange.jcontacts.contact.gender.Gender;
import org.mxchange.jphone.phonenumbers.fax.FaxNumber;
import org.mxchange.jphone.phonenumbers.landline.DialableLandLineNumber;
import org.mxchange.jphone.phonenumbers.landline.LandLineNumber;
-import org.mxchange.jphone.phonenumbers.smsprovider.SmsProvider;
+import org.mxchange.jphone.phonenumbers.mobileprovider.MobileProvider;
import org.mxchange.jusercore.events.login.UserLoggedInEvent;
import org.mxchange.jusercore.events.registration.UserRegisteredEvent;
import org.mxchange.jusercore.exceptions.UserNotFoundException;
import org.mxchange.jusercore.model.user.User;
import org.mxchange.jusercore.model.user.UserSessionBeanRemote;
import org.mxchange.jusercore.model.user.profilemodes.ProfileMode;
-import org.mxchange.addressbook.beans.login.AddressbookUserLoginWebSessionController;
/**
* A user bean (controller)
/**
* Cellphone number's carrier
*/
- private SmsProvider cellphoneCarrier;
+ private MobileProvider cellphoneCarrier;
/**
* Cellphone number
*/
private String street;
+ /**
+ * User instance
+ */
+ private User user;
+
/**
* Remote user bean
*/
this.addUserNameEmailAddress(registeredUser);
// Clear all data
- this.clearData();
+ this.clear();
// Set user id again
this.setUserId(registeredUser.getUserId());
User user = new LoginUser();
user.setUserName(this.getUserName());
user.setUserProfileMode(this.getUserProfileMode());
- user.setUserCreated(new GregorianCalendar());
// Generate phone number
- DialableLandLineNumber phone = new LandLineNumber(this.getPhoneCountry(), this.getPhoneAreaCode(), this.getPhoneNumber(), new GregorianCalendar());
- DialableCellphoneNumber cellphone = new CellphoneNumber(this.getCellphoneCarrier(), this.getCellphoneNumber(), new GregorianCalendar());
- DialableFaxNumber fax = new FaxNumber(this.getFaxCountry(), this.getFaxAreaCode(), this.getFaxNumber(), new GregorianCalendar());
+ DialableLandLineNumber phone = new LandLineNumber(this.getPhoneCountry(), this.getPhoneAreaCode(), this.getPhoneNumber());
+ DialableCellphoneNumber cellphone = new CellphoneNumber(this.getCellphoneCarrier(), this.getCellphoneNumber());
+ DialableFaxNumber fax = new FaxNumber(this.getFaxCountry(), this.getFaxAreaCode(), this.getFaxNumber());
// Create new contact
Contact contact = new UserContact(this.getGender(), this.getFirstName(), this.getFamilyName());
}
// Is the provider set?
- if ((cellphone instanceof DialableCellphoneNumber) && (this.getCellphoneCarrier() instanceof SmsProvider) && (this.getCellphoneNumber() != null) && (this.getCellphoneNumber() > 0)) {
+ if ((cellphone instanceof DialableCellphoneNumber) && (this.getCellphoneCarrier() instanceof MobileProvider) && (this.getCellphoneNumber() != null) && (this.getCellphoneNumber() > 0)) {
// Is the number set?
if (cellphone.getPhoneNumber() == null) {
// Is null
contact.setContactComment(this.getComment());
// Created timestamp and ownContact
- contact.setContactCreated(new GregorianCalendar());
contact.setContactOwnContact(Boolean.TRUE);
// Set contact in user
}
@Override
- public SmsProvider getCellphoneCarrier () {
+ public MobileProvider getCellphoneCarrier () {
return this.cellphoneCarrier;
}
@Override
- public void setCellphoneCarrier (final SmsProvider cellphoneCarrier) {
+ public void setCellphoneCarrier (final MobileProvider cellphoneCarrier) {
this.cellphoneCarrier = cellphoneCarrier;
}
this.street = street;
}
+ @Override
+ public User getUser () {
+ return this.user;
+ }
+
+ @Override
+ public void setUser (final User user) {
+ this.user = user;
+ }
+
@Override
public Long getUserId () {
return this.userId;
}
@Override
- public boolean isRequiredPersonalDataSet () {
- return ((this.getUserName() != null) &&
- (this.getUserProfileMode() != null) &&
+ public boolean isRequiredChangePersonalDataSet () {
+ return ((this.getUserProfileMode() != null) &&
(this.getGender() != null) &&
(this.getFirstName() != null) &&
(this.getFamilyName() != null) &&
(this.getStreet() != null) &&
(this.getHouseNumber() != null) &&
(this.getZipCode() != null) &&
- (this.getCity() != null) &&
- (this.getEmailAddress() != null) &&
- (this.getEmailAddressRepeat() != null) &&
- (this.getUserPassword() != null) &&
- (this.getUserPasswordRepeat() != null));
+ (this.getCity() != null));
}
@Override
- public boolean isRequiredChangePersonalDataSet () {
- return ((this.getUserProfileMode() != null) &&
+ public boolean isRequiredPersonalDataSet () {
+ return ((this.getUserName() != null) &&
+ (this.getUserProfileMode() != null) &&
(this.getGender() != null) &&
(this.getFirstName() != null) &&
(this.getFamilyName() != null) &&
(this.getStreet() != null) &&
(this.getHouseNumber() != null) &&
(this.getZipCode() != null) &&
- (this.getCity() != null));
+ (this.getCity() != null) &&
+ (this.getEmailAddress() != null) &&
+ (this.getEmailAddressRepeat() != null) &&
+ (this.getUserPassword() != null) &&
+ (this.getUserPasswordRepeat() != null));
}
@Override
@Override
public boolean isSamePasswordEntered () {
- return (Objects.equals(this.getUserPassword(), this.getUserPasswordRepeat()));
+ return ((!this.getUserPassword().isEmpty()) && (Objects.equals(this.getUserPassword(), this.getUserPasswordRepeat())));
}
@Override
@Override
public User lookupUserById (final Long userId) throws UserNotFoundException {
// Init variable
- User user = null;
+ User localUser = null;
+
+ // Clear this bean
+ this.clear();
// Try to lookup it in visible user list
for (final Iterator<User> iterator = this.visibleUserList.iterator(); iterator.hasNext();) {
// Is the user id found?
if (Objects.equals(next.getUserId(), userId)) {
// Copy to other variable
- user = next;
+ localUser = next;
break;
}
}
// Is it still null?
- if (null == user) {
+ if (null == localUser) {
// Not visible for the current user
throw new UserNotFoundException(userId);
}
+ // Copy all data to this bean
+ this.copyUser(localUser);
+
// Return it
- return user;
+ return localUser;
}
/**
}
/**
- * Clears all data in this bean
+ * Clears this bean
*/
- private void clearData () {
+ private void clear () {
// Clear all data
// - personal data
this.setUserId(null);
this.setUserName(null);
this.setUserPassword(null);
this.setUserPasswordRepeat(null);
+
+ // - user instance
+ this.setUser(null);
}
/**
this.setPhoneAreaCode(phone.getPhoneAreaCode());
this.setPhoneNumber(phone.getPhoneNumber());
}
- if ((cellphone instanceof DialableCellphoneNumber) && (cellphone.getCellphoneProvider() instanceof SmsProvider)) {
+ if ((cellphone instanceof DialableCellphoneNumber) && (cellphone.getCellphoneProvider() instanceof MobileProvider)) {
this.setCellphoneCarrier(cellphone.getCellphoneProvider());
this.setCellphoneNumber(cellphone.getPhoneNumber());
}