package com.nexirius.theteam.datamodel;
import com.nexirius.framework.datamodel.DataModel;
import com.nexirius.framework.datamodel.StringModel;
import com.nexirius.framework.datamodel.StructModel;
import com.nexirius.framework.datamodel.BooleanModel;
import com.nexirius.theteam.persistence.ITeamPersistence;
import com.nexirius.util.CopyPairs;
public class AddressModel extends StructModel {
StringModel street;
StringModel zip;
StringModel city;
StringModel state;
protected StringModel fk;
public static final String FIELD_ADDRESS = "Address";
public static final String FIELD_STREET = "street";
public static final String FIELD_ZIP = "zip";
public static final String FIELD_CITY = "city";
public static final String FIELD_STATE = "state";
protected BooleanModel mainAddress;
public static final String FIELD_MAIN_ADDRESS = "mainAddress";
public AddressModel() {
super(FIELD_ADDRESS);
init();
}
private void init() {
fk = new StringModel("", ITeamPersistence.FOREIGN_KEY);
append(fk);
append(street = new StringModel("", FIELD_STREET));
append(zip = new StringModel("", FIELD_ZIP));
append(city = new StringModel("", FIELD_CITY));
append(state = new StringModel("", FIELD_STATE));
mainAddress = new BooleanModel(false, FIELD_MAIN_ADDRESS);
append(mainAddress);
}
public synchronized DataModel duplicate(DataModel instance, CopyPairs copyPairs) {
if (instance == null) {
instance = new AddressModel();
}
return super.duplicate(instance, copyPairs);
}
/**
* the instance name of the associated parent instance
*
* @param instanceName
*/
public void setForeignKey(String instanceName) {
fk.setText(instanceName);
}
public String getForeignKey() {
return fk.getText();
}
public void setMainAddress(boolean on) {
mainAddress.setBoolean(on);
}
public boolean isMainAddress() {
return mainAddress.getBoolean();
}
}