package com.idega.user.data;
import javax.ejb.FinderException;
import java.util.Iterator;
import java.util.Collection;
import com.idega.data.*;
import java.sql.SQLException;
/**
* Title: User
* Description:
* Copyright: Copyright (c) 2001
* Company: idega.is
* @author 2000 - idega team - <a href="mailto:gummi@idega.is">Gu�mundur �g�st S�mundsson</a>
* @version 1.0
*/
public class GenderBMPBean extends com.idega.data.GenericEntity implements Gender{
public static final String NAME_MALE="male";
public static final String NAME_FEMALE="female";
public void initializeAttributes() {
this.addAttribute(this.getIDColumnName());
this.addAttribute(getNameColumnName(),"Nafn",true,true,"java.lang.String");
this.addAttribute(getDescriptionColumnName(),"Description",true,true,"java.lang.String",1000);
}
public String getEntityName() {
return "ic_gender";
}
public void insertStartData() throws SQLException {
try{
Gender male = ((GenderHome)IDOLookup.getHome(Gender.class)).create();
male.setName(NAME_MALE);
male.store();
Gender female = ((GenderHome)IDOLookup.getHome(Gender.class)).create();
female.setName(NAME_FEMALE);
female.store();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
public boolean isFemaleGender() {
return getName().equals(NAME_FEMALE);
}
public boolean isMaleGender() {
return getName().equals(NAME_MALE);
}
public static String getNameColumnName(){
return "name";
}
public static String getDescriptionColumnName(){
return "description";
}
public void setName(String name){
this.setColumn(getNameColumnName(),name);
}
public void setDescription(String description){
this.setColumn(getDescriptionColumnName(),description);
}
public String getName(){
return this.getStringColumnValue(getNameColumnName());
}
public String getDescription(){
return this.getStringColumnValue(getDescriptionColumnName());
}
public Gender ejbHomeGetMaleGender() throws FinderException {
return ((GenderHome)this.getEJBLocalHome()).findByGenderName(NAME_MALE);
}
public Gender ejbHomeGetFemaleGender() throws FinderException {
return ((GenderHome)this.getEJBLocalHome()).findByGenderName(NAME_FEMALE);
}
public Integer ejbFindByGenderName(String name) throws FinderException {
Collection genders = super.idoFindAllIDsByColumnBySQL(getNameColumnName(),name);
Iterator iter = genders.iterator();
Integer gender = null;
if( iter.hasNext() ) {
gender = (Integer) iter.next();
}
else{
throw new FinderException("Gender named : "+name+" not found");
}
return gender;
}
public Collection ejbFindAllGenders()throws FinderException{
return super.idoFindAllIDsBySQL();
}
}