| DtmAccount.java |
1 package ch.ige.edossier.transfer.client;
2
3 import java.util.ArrayList;
4 import java.util.List;
5 import java.util.Vector;
6 import javax.swing.table.DefaultTableModel;
7 import ch.ige.edossier.web.vo.AccountVO;
8
9 /**
10 * B32.03 - eDossier-Interceptions - Diplomarbeit an der Software-Schule Schweiz<br>
11 * Datenhaltung der Account-Tabelle
12 * <p>
13 * Copyright (c) 2004, Eidgenössisches Institut für Geistiges Eigentum
14 * @author Anita Rueegsegger, Marc Bouquet
15 * @version $Id: DtmAccount.java,v 1.6 2004/11/01 13:52:31 ruegsegger Exp $
16 */
17 public class DtmAccount extends DefaultTableModel
18 {
19
20 public DtmAccount()
21 {
22 initHeader();
23 }
24
25 /**
26 * Spaltenbeschriftung setzen
27 */
28 private void initHeader()
29 {
30 columnIdentifiers.addElement( "Account" );
31 columnIdentifiers.addElement( "Name" );
32 columnIdentifiers.addElement( "Email" );
33 columnIdentifiers.addElement( "Pwd" );
34 columnIdentifiers.addElement( "Tel" );
35 }
36
37 /**
38 * Editierbarkeit der Daten verhindern,
39 *
40 * @param row selektierte Zeile
41 * @param col selektierte Spalte
42 * @return true falls Zellen editierbar sind
43 */
44 public boolean isCellEditable( int row, int col )
45 {
46 return false;
47 }
48
49 /**
50 * Werte der angegebenen Spalte werden mit den standardmässigen
51 * Darstellungsobjekten ausgestattet
52 * muss implementiert werden, damit Sortierung korrekt funktioniert
53 *
54 * @param column Spalte
55 * @return gibt die Klasse der Column zurück
56 */
57 public Class getColumnClass( int column )
58 {
59 return getValueAt( 0, column ).getClass();
60 }
61
62 /**
63 * Tabellendaten werden gesetzt.<br>
64 * Daten werden in Form eines ValueObjects übergeben.
65 * Daten des VOs werden aufgesplittet und in den Datenhaltungsvector(dataVector)
66 * des Tabellenmodels geschrieben.
67 * Felder die null sein können müssen mit "" gefüllt werden,
68 * ansonsten nullpointerexception bei funktionsaufruf getColumnClass
69 *
70 * @param data Liste von AccountVOs beinhaltet alle Accounts der DB
71 */
72 public void setData( List data )
73 {
74 dataVector.clear();
75
76 if( data != null )
77 {
78 for( int i = 0; i < data.size(); i++ )
79 {
80 Vector row = new Vector();
81 AccountVO accountVO = ( AccountVO )data.get( i );
82
83 row.add( new Integer( accountVO.getAccountId() ) );
84 row.add( accountVO.getName() == null ? "" : accountVO.getName() );
85 row.add( accountVO.getEmail() == null ? "" : accountVO.getEmail() );
86 row.add( accountVO.getPwd() == null ? "" : accountVO.getPwd() );
87 row.add( accountVO.getTelNr() == null ? "" : accountVO.getTelNr() );
88
89 dataVector.add( row );
90 }
91 }
92 fireTableDataChanged();
93 }
94
95 /**
96 * Daten der Tabelle löschen
97 */
98 public void clear()
99 {
100 dataVector.clear();
101 fireTableDataChanged();
102 }
103 }
104 | DtmAccount.java |