//idega 2000 - Tryggvi Larusson /* *Copyright 2000 idega.is All Rights Reserved. */ package com.idega.data.genericentity; //import java.util.*; import java.sql.*; import com.idega.data.*; import com.idega.repository.data.RefactorClassRegistry; import java.util.Vector; /** * @deprecated Replaced with com.idega.core.data.GenericGroup *@author <a href="mailto:tryggvi@idega.is">Tryggvi Larusson</a> *@version 1.2 */ public class GroupBMPBean extends com.idega.data.GenericEntity implements com.idega.data.genericentity.Group { public GroupBMPBean(){ super(); } public GroupBMPBean(int id)throws SQLException{ super(id); } public void initializeAttributes(){ addAttribute(getIDColumnName()); addAttribute(getNameColumnName(),"H�pnafn", true, true, "java.lang.String"); addAttribute(getGroupTypeColumnName(),"H�pger�", true, true, "java.lang.String"); addAttribute(getGroupDescriptionColumnName(),"L�sing", true, true, "java.lang.String"); addAttribute(getExtraInfoColumnName(),"Auka uppl�singar", true, true, "java.lang.String"); addManyToManyRelationShip("com.idega.data.genericentity.Member","group_member"); } public String getEntityName(){ return "group_"; } public void setDefaultValues(){ setGroupType(getGroupTypeValue()); } /** * overwrite in extended classes */ public String getGroupTypeValue(){ return "general"; } /** * overwrite in extended classes */ public static String getClassName(){ return "com.idega.data.genericentity.Group"; } /* ColumNames begin */ public static String getNameColumnName(){ return "name"; } public static String getGroupTypeColumnName(){ return "group_type"; } public static String getGroupDescriptionColumnName(){ return "description"; } public static String getExtraInfoColumnName(){ return "extra_info"; } /* ColumNames end */ /* functions begin */ public String getName(){ return (String) getColumnValue(getNameColumnName()); } public void setName(String name){ setColumn(getNameColumnName(),name); } public String getGroupType(){ return (String) getColumnValue(getGroupTypeColumnName()); } public void setGroupType(String groupType){ setColumn(getGroupTypeColumnName(), groupType); } public String getDescription(){ return (String) getColumnValue(getGroupDescriptionColumnName()); } public void setDescription(String description){ setColumn(getGroupDescriptionColumnName(),description); } public String getExtraInfo(){ return (String) getColumnValue(getExtraInfoColumnName()); } public void setExtraInfo(String extraInfo){ setColumn(getExtraInfoColumnName(),extraInfo); } public static Group getStaticInstance(){ return (Group)getStaticInstance(getClassName()); } //?? public Group[] getAllGroupsContainingThis()throws SQLException{ String tableToSelectFrom = "GROUP_TREE"; StringBuffer buffer=new StringBuffer(); buffer.append("select * from "); buffer.append(tableToSelectFrom); buffer.append(" where "); buffer.append("CHILD_GROUP_ID"); buffer.append("="); buffer.append(this.getID()); String SQLString=buffer.toString(); Connection conn= null; Statement Stmt= null; Vector vector = new Vector(); try { conn = getConnection(getDatasource()); Stmt = conn.createStatement(); ResultSet RS = Stmt.executeQuery(SQLString); while (RS.next()){ IDOLegacyEntity tempobj=null; try{ tempobj = (IDOLegacyEntity) RefactorClassRegistry.forName(this.getClass().getName()).newInstance(); tempobj.findByPrimaryKey(RS.getInt(this.getIDColumnName())); } catch(Exception ex){ System.err.println("There was an error in " + this.getClass().getName() +".getAllGroupsContainingThis(): "+ex.getMessage()); } vector.addElement(tempobj); } RS.close(); } finally{ if(Stmt != null){ Stmt.close(); } if (conn != null){ freeConnection(getDatasource(),conn); } } if (vector != null){ vector.trimToSize(); return (Group[]) vector.toArray((Object[])java.lang.reflect.Array.newInstance(this.getClass(),0)); } else{ return null; } //return (Group[])this.findReverseRelated(this); } public Group[] getAllGroupsContainingMember(Member member)throws SQLException{ return (Group[])member.findRelated(this); } public void addGroup(Group groupToAddTo)throws SQLException{ Connection conn= null; Statement Stmt= null; try{ conn = getConnection(getDatasource()); Stmt = conn.createStatement(); Stmt.executeUpdate("insert into GROUP_TREE ("+getIDColumnName()+", CHILD_GROUP_ID) values("+getID()+","+groupToAddTo.getID()+")"); }catch (Exception ex) { ex.printStackTrace(System.out); }finally{ if(Stmt != null){ Stmt.close(); } if (conn != null){ freeConnection(getDatasource(),conn); } } } public void addMember(Member member)throws SQLException{ member.addTo(this); } } // Class Group