/*
* $Id: DistanceBMPBean.java,v 1.5 2005/08/16 14:09:36 laddi Exp $
* Created on May 22, 2005
*
* Copyright (C) 2005 Idega Software hf. All Rights Reserved.
*
* This software is the proprietary information of Idega hf.
* Use is subject to license terms.
*/
package is.idega.idegaweb.marathon.data;
import java.util.Locale;
import com.idega.user.data.Group;
import com.idega.user.data.GroupBMPBean;
import com.idega.util.LocaleUtil;
/**
* Last modified: $Date: 2005/08/16 14:09:36 $ by $Author: laddi $
*
* @author <a href="mailto:laddi@idega.com">laddi</a>
* @version $Revision: 1.5 $
*/
public class DistanceBMPBean extends GroupBMPBean implements Group, Distance{
private static final String METADATA_USE_CHIP = "use_chip";
private static final String METADATA_PRICE_ISK = "price_isk";
private static final String METADATA_PRICE_EUR = "price_eur";
private static final String METADATA_FAMILY_DISCOUNT = "family_discount";
private static final String METADATA_CHILDREN_PRICE_ISK = "children_price_isk";
private static final String METADATA_CHILDREN_PRICE_EUR = "children_price_eur";
private static final String METADATA_ALLOWS_GROUPS = "allows_groups";
private static final String METADATA_NEXT_PARTICIPANT_NUMBER = "next_participant_number";
private static final String METADATA_NUMBER_OF_SPLITS = "number_of_splits";
public boolean isUseChip() {
String useChip = this.getMetaData(METADATA_USE_CHIP);
if (useChip != null) {
return new Boolean(useChip).booleanValue();
}
return true;
}
public void setUseChip(boolean useChip) {
setMetaData(METADATA_USE_CHIP, String.valueOf(useChip), "java.lang.Boolean");
}
public float getPrice(Locale locale) {
String price = null;
if (locale.equals(LocaleUtil.getIcelandicLocale())) {
price = getMetaData(METADATA_PRICE_ISK);
}
else {
price = getMetaData(METADATA_PRICE_EUR);
}
if (price != null) {
return Float.parseFloat(price);
}
return 0;
}
public void setPriceInISK(float price) {
setMetaData(METADATA_PRICE_ISK, String.valueOf(price), "java.lang.Float");
}
public void setPriceInEUR(float price) {
setMetaData(METADATA_PRICE_EUR, String.valueOf(price), "java.lang.Float");
}
public float getChildrenPrice(Locale locale) {
String price = null;
if (locale.equals(LocaleUtil.getIcelandicLocale())) {
price = getMetaData(METADATA_CHILDREN_PRICE_ISK);
}
else {
price = getMetaData(METADATA_CHILDREN_PRICE_EUR);
}
if (price != null) {
return Float.parseFloat(price);
}
else {
return getPrice(locale);
}
}
public void setChildrenPriceInISK(float price) {
setMetaData(METADATA_CHILDREN_PRICE_ISK, String.valueOf(price), "java.lang.Float");
}
public void setChildrenPriceInEUR(float price) {
setMetaData(METADATA_CHILDREN_PRICE_EUR, String.valueOf(price), "java.lang.Float");
}
public boolean isFamilyDiscount() {
String discount = this.getMetaData(METADATA_FAMILY_DISCOUNT);
if (discount != null) {
return new Boolean(discount).booleanValue();
}
return false;
}
public void setFamilyDiscount(boolean discount) {
setMetaData(METADATA_FAMILY_DISCOUNT, String.valueOf(discount), "java.lang.Boolean");
}
public boolean isAllowsGroups() {
String allowsGroups = this.getMetaData(METADATA_ALLOWS_GROUPS);
if (allowsGroups != null) {
return new Boolean(allowsGroups).booleanValue();
}
return true;
}
public void setAllowsGroups(boolean allowsGroups) {
setMetaData(METADATA_ALLOWS_GROUPS, String.valueOf(allowsGroups), "java.lang.Boolean");
}
public int getNextAvailableParticipantNumber() {
String number = this.getMetaData(METADATA_NEXT_PARTICIPANT_NUMBER);
if (number != null) {
return Integer.parseInt(number);
}
return -1;
}
public void setNextAvailableParticipantNumber(int number) {
setMetaData(METADATA_NEXT_PARTICIPANT_NUMBER, String.valueOf(number), "java.lang.Integer");
}
public int getNumberOfSplits() {
String number = this.getMetaData(METADATA_NUMBER_OF_SPLITS);
if (number != null) {
return Integer.parseInt(number);
}
return 0;
}
public void setNumberOfSplits(int number) {
setMetaData(METADATA_NUMBER_OF_SPLITS, String.valueOf(number), "java.lang.Integer");
}
}