X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=Addressbook%2Fsrc%2Forg%2Fmxchange%2Faddressbook%2Fcontact%2FBaseContact.java;h=4e590c2462f0420c24b658d0d48a2053e582f0a2;hb=16289838616dbf25d96a20f82164415d40181e46;hp=c6afdc9f97df72bcff8695762168dc5afdb34643;hpb=3fc961ed434b91c90884c0d9914a7e93defc7e4a;p=jfinancials-lib.git diff --git a/Addressbook/src/org/mxchange/addressbook/contact/BaseContact.java b/Addressbook/src/org/mxchange/addressbook/contact/BaseContact.java index c6afdc9..4e590c2 100644 --- a/Addressbook/src/org/mxchange/addressbook/contact/BaseContact.java +++ b/Addressbook/src/org/mxchange/addressbook/contact/BaseContact.java @@ -18,17 +18,17 @@ package org.mxchange.addressbook.contact; import java.text.MessageFormat; import java.util.Objects; -import org.mxchange.addressbook.BaseFrameworkSystem; -import org.mxchange.addressbook.client.Client; +import org.mxchange.addressbook.BaseAddressbookSystem; +import org.mxchange.addressbook.client.AddressbookClient; +import org.mxchange.jcore.client.Client; /** * A general contact * * @author Roland Haeder * @version 0.0 - * @since 0.0 */ -public class BaseContact extends BaseFrameworkSystem { +public class BaseContact extends BaseAddressbookSystem { /** * Birth day @@ -237,14 +237,16 @@ public class BaseContact extends BaseFrameworkSystem { * "Serializes" this object into a CSV string (this time with semicolons) * * @return "CSV-serialized" version of the stored data + * @deprecated Don't use this anymore */ + @Deprecated public String getCsvStringFromStoreableObject () { // Trace message this.getLogger().trace("CALLED!"); //NOI18N // Get all together String csvString = String.format( - "\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\"", + "\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\";\"%s\"", //NOI18N this.isOwnContact(), this.getGender().getDatabaseValue(), this.getSurname(), @@ -389,27 +391,8 @@ public class BaseContact extends BaseFrameworkSystem { * @return gender Human-readable gender */ public String getTranslatedGender () { - // Default init - String translated = null; - // "Translate" it - switch (this.getGender()) { - case MALE: // Mr. - translated = "Herr"; - break; - - case FEMALE: // Mrs. - translated = "Frau"; - break; - - case COMPANY: // "Company" - translated = "Firma"; - break; - - default: // Unsupported - this.getLogger().error("Gender " + this.getGender() + " not supported."); - break; - } + String translated = this.getBundle().getString(this.getGender().getMessageKey()); // Return it return translated; @@ -432,7 +415,7 @@ public class BaseContact extends BaseFrameworkSystem { protected final void setZipCode (final long zipCode) { this.zipCode = zipCode; } - + @Override public int hashCode () { // Validate gender instance @@ -469,14 +452,17 @@ public class BaseContact extends BaseFrameworkSystem { throw new NullPointerException("client is null"); } + // Cast client + AddressbookClient c = (AddressbookClient) client; + // Display name "box" - client.displayNameBox((Contact) this); + c.displayNameBox((Contact) this); // Display address "box" - client.displayAddressBox((Contact) this); + c.displayAddressBox((Contact) this); // Display other data "box" - client.displayOtherDataBox((Contact) this); + c.displayOtherDataBox((Contact) this); } /** @@ -629,6 +615,40 @@ public class BaseContact extends BaseFrameworkSystem { this.birthday = birthday; } + /** + * Some "getter for a value from given column name. This name will be + * translated into a method name and then this method is called. + * + * @param columnName Column name + * @return Value from field + */ + @Override + public Object getValueFromColumn (final String columnName) { + // Trace message + this.getLogger().trace(MessageFormat.format("columnName={0} - CALLED!", columnName)); + + // Determine if the given column is boolean + if (this.isBooleanField(this, "BaseContact", columnName)) { + // Yes, then call other method + return this.getBooleanField(this, "BaseContact", columnName); + } + + // Convert column name to field name + String methodName = this.convertColumnNameToGetterMethod(columnName, false); + + // Debug message + this.getLogger().debug(MessageFormat.format("field={0}", methodName)); + + // Get field + Object value = this.getField(this, "BaseContact", methodName); + + // Trace message + this.getLogger().trace("value=" + value + " - EXIT!"); + + // Return it + return value; + } + /** * Checks if given boolean field is available and set to same value * @@ -636,28 +656,29 @@ public class BaseContact extends BaseFrameworkSystem { * @param bool Boolean value * @return Whether all conditions are met */ + @Override public boolean isValueEqual (final String columnName, final boolean bool) { // Trace message this.getLogger().trace(MessageFormat.format("columnName={0},bool={1} - CALLED!", columnName, bool)); - + // Convert column name to field name String methodName = this.convertColumnNameToGetterMethod(columnName, true); - + // Debug message this.getLogger().debug(MessageFormat.format("field={0}", methodName)); - + // Init class instance boolean value = this.getBooleanField(this, "BaseContact", methodName); - + // Debug message this.getLogger().debug(MessageFormat.format("value={0}", value)); - + // Compare it boolean isFound = (bool == value); - + // Trace message - this.getLogger().trace("isFound=" + isFound + " - EXIT!"); - + this.getLogger().trace(MessageFormat.format("isFound={0} - EXIT!", isFound)); + // Return result return isFound; }