import org.mxchange.jcontacts.contact.Contact;
import org.mxchange.jcontacts.contact.gender.Gender;
import org.mxchange.jcountry.data.Country;
+import org.mxchange.jphone.phonenumbers.DialableNumber;
+import org.mxchange.jphone.phonenumbers.mobile.DialableMobileNumber;
import org.mxchange.jphone.phonenumbers.mobileprovider.MobileProvider;
+import org.mxchange.jusercore.events.user.add.AdminAddedUserEvent;
/**
* An administrative interface for user beans
*/
public interface JobsAdminContactWebRequestController extends Serializable {
+ /**
+ * Adds contact data to database and redirects on success. If the contact is
+ * already found, a proper exception is thrown.
+ * <p>
+ * @return Redirect outcome
+ */
+ String addContact ();
+
+ /**
+ * Deletes contact data
+ * <p>
+ * @param contact Contact instance to be deleted
+ * <p>
+ * @return Redirect outcome
+ */
+ String deleteContactData (final Contact contact);
+
+ /**
+ * Event observer for newly added users by adminstrator
+ * <p>
+ * @param event Event being fired
+ */
+ void afterAdminAddedUserEvent (final AdminAddedUserEvent event);
+
+ /**
+ * Creates an instance from contact data
+ * <p>
+ * @return New contact instance
+ */
+ Contact createContactInstance ();
+
/**
* Copies given contact's data to this controller
* <p>
String editContactData ();
/**
- * Getter for cellphone id
+ * Getter for mobile id
* <p>
- * @return Cellphone id
+ * @return Mobile id
*/
- Long getCellphoneId ();
+ Long getMobileNumberId ();
/**
- * Setter for cellphone id
+ * Setter for mobile number id
* <p>
- * @param cellphoneId Cellphone id
+ * @param mobileNumberId Mobile number id
*/
- void setCellphoneId (final Long cellphoneId);
+ void setMobileNumberId (final Long mobileNumberId);
/**
* Getter for fax id
* <p>
* @return Fax id
*/
- Long getFaxId ();
+ Long getFaxNumberId ();
/**
- * Setter for fax id
+ * Setter for fax number id
* <p>
- * @param faxId Fax id
+ * @param faxNumberId Fax number id
*/
- void setFaxId (final Long faxId);
+ void setFaxNumberId (final Long faxNumberId);
/**
* Getter for land-line id
void setBirthday (final Date birthday);
/**
- * Getter for ellphone number's carrier
+ * Getter for mobile provider
* <p>
- * @return Cellphone number's carrier
+ * @return mobile provider
*/
- MobileProvider getCellphoneCarrier ();
+ MobileProvider getMobileProvider ();
/**
- * Setter for cellphone number's carrier prefix
+ * Setter for mobile provider
* <p>
- * @param cellphoneCarrier Cellphone number's carrier prefix
+ * @param mobileProvider Mobile provider
*/
- void setCellphoneCarrier (final MobileProvider cellphoneCarrier);
+ void setMobileProvider (final MobileProvider mobileProvider);
/**
- * Getter for ellphone number
+ * Getter for mobile number
* <p>
- * @return Cellphone number
+ * @return Mobile number
*/
- Long getCellphoneNumber ();
+ Long getMobileNumber ();
/**
- * Setter for ellphone number
+ * Setter for mobile number
* <p>
- * @param cellphoneNumber Cellphone number
+ * @param mobileNumber Mobile number
*/
- void setCellphoneNumber (final Long cellphoneNumber);
+ void setMobileNumber (final Long mobileNumber);
/**
* City
*/
void setHouseNumber (final Short houseNumber);
+ /**
+ * Getter for house number extension, example: 123a 'a' is then the
+ * extension and 123 is the house number.
+ * <p>
+ * @return House number extension
+ */
+ String getHouseNumberExtension ();
+
+ /**
+ * Setter for house number extension
+ * <p>
+ * @param houseNumberExtension House number extension
+ */
+ void setHouseNumberExtension (final String houseNumberExtension);
+
/**
* Getter for phone number's area code
* <p>
* @return Phone number's area code
*/
- Integer getPhoneAreaCode ();
+ Integer getLandLineAreaCode ();
/**
* Setter for phone number's area code
* <p>
* @param phoneAreaCode Phone number's area code
*/
- void setPhoneAreaCode (final Integer phoneAreaCode);
+ void setLandLineAreaCode (final Integer phoneAreaCode);
/**
* Getter for phone number's country instance
* <p>
* @return Phone number's country instance
*/
- Country getPhoneCountry ();
+ Country getLandLineCountry ();
/**
* Setter for phone number's country instance
* <p>
* @param phoneCountry Phone number's country instance
*/
- void setPhoneCountry (final Country phoneCountry);
+ void setLandLineCountry (final Country phoneCountry);
/**
* Getter for phone number
* <p>
* @return Phone number
*/
- Long getPhoneNumber ();
+ Long getLandLineNumber ();
/**
* Setter for phone number
* <p>
* @param phoneNumber Phone number
*/
- void setPhoneNumber (final Long phoneNumber);
+ void setLandLineNumber (final Long phoneNumber);
/**
* Street
*/
void setStreet (final String street);
+ /**
+ * Getter for title
+ * <p>
+ * @return title
+ */
+ String getTitle ();
+
+ /**
+ * Setter for title
+ * <p>
+ * @param title Title
+ */
+ void setTitle (final String title);
+
/**
* ZIP code
* <p>
*/
void setZipCode (final Integer zipCode);
+ /**
+ * Getter for controller type
+ * <p>
+ * @return controller type
+ */
+ String getControllerType ();
+
+ /**
+ * Setter for controller type
+ * <p>
+ * @param controllerType Controller type
+ * <p>
+ * @deprecated Don't use this method
+ */
+ @Deprecated
+ void setControllerType (final String controllerType);
+
+ /**
+ * Returns a text respresentation of given phone number or null if not set.
+ * <p>
+ * @param phoneNumber Phone number
+ * <p>
+ * @return Text respresentation or null
+ */
+ String generatePhoneNumber (final DialableNumber phoneNumber);
+
+ /**
+ * Returns a text representation of given mobile number or null if not
+ * set.
+ * <p>
+ * @param mobileNumber Mobile number
+ * <p>
+ * @return Text respresentation or null
+ */
+ String generateMobileNumber (final DialableMobileNumber mobileNumber);
+
}