From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- Bachelor/ERGO/TierheimVerw/thv/UserCon.java | 151 ++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 Bachelor/ERGO/TierheimVerw/thv/UserCon.java (limited to 'Bachelor/ERGO/TierheimVerw/thv/UserCon.java') diff --git a/Bachelor/ERGO/TierheimVerw/thv/UserCon.java b/Bachelor/ERGO/TierheimVerw/thv/UserCon.java new file mode 100644 index 0000000..702ad02 --- /dev/null +++ b/Bachelor/ERGO/TierheimVerw/thv/UserCon.java @@ -0,0 +1,151 @@ +import java.util.*; +import java.io.*; +import javax.swing.table.AbstractTableModel; + +/** + *

Überschrift: UserCon

+ * + *

Beschreibung: Container Klasse zum speichern von Benutzern

+ * + *

Copyright: Copyright (c) 2005

+ * + *

Organisation:

+ * + * @author Andreas Spirka, Sven Eisenhauer + * @version 1.0 + */ +public class UserCon extends AbstractTableModel implements Serializable { + + Vector vec = new Vector(); + + String[] colnam = { "Login","Passwort","Vollständiger Name","UID","Rolle"}; + /** + * Konstruktor. + */ + public UserCon() {} + /** + * @param u User + * Fügt u dem Container hinzu + */ + public void addUser( User u ) + { + vec.add( u ); + // Model wurde verändert + fireTableDataChanged(); + } + /** + * @param u User + * Löscht u aus dem Container + */ + public void removeUser( User u ) + { + vec.remove( u ); + // Model wurde verändert + fireTableDataChanged(); + } + /** + * Returns the number of columns in the model. + * + * @return the number of columns in the model + * @todo Diese javax.swing.table.TableModel-Methode implementieren + */ + public int getColumnCount() { + return colnam.length; + } + /** + * Column name. + * Methode overrides that from AbstactTableModel + * @param column int + * @return String + */ + public String getColumnName(int column) { + return colnam[ column ]; + } + /** + * Returns the number of rows in the model. + * + * @return the number of rows in the model + * @todo Diese javax.swing.table.TableModel-Methode implementieren + */ + public int getRowCount() { + return vec.size(); + } + /** + * Returns the value for the cell at columnIndex and + * rowIndex. + * + * @param rowIndex the row whose value is to be queried + * @param columnIndex the column whose value is to be queried + * @return the value Object at the specified cell + * @todo Diese javax.swing.table.TableModel-Methode implementieren + */ + public Object getValueAt(int rowIndex, int columnIndex) { + User u = (User) vec.elementAt( rowIndex ); + switch (columnIndex) { + case 0: // Login + return u.getUserName(); + case 1: // Passwort + return u.getPassWd(); + case 2: // Vollst. Name + return u.getFullName(); + case 3: // UID + return u.getUserIdAsString(); + case 4: // Rolle als String + return u.getRoleAsString(); + default: + } + return null; + } + /* (non-Javadoc) + * @see javax.swing.table.TableModel#setValueAt(java.lang.Object, int, int) + */ + public void setValueAt(Object o,int rowIndex, int columnIndex) + { + User u = (User) vec.elementAt(rowIndex); + switch (columnIndex) { + case 0: // Login + u.setUserName((String) o); + break; + case 1: // Passwort + u.setPassWd((String) o); + break; + case 2: // Vollst. Name + u.setFullName((String) o); + break; + case 3: // UID + u.setUserId((String) o); + break; + case 4: // Rolle + u.setRole((String) o); + break; + default: + } + vec.setElementAt(u,rowIndex); + fireTableCellUpdated(rowIndex,columnIndex); + } + + /** + * @return int + * Elemente des Containers + */ + public int size() { + return vec.size(); + } + /** + * @param i int + * @return Object + * Return element at i + */ + public Object elementAt(int i) { + return (Object) vec.elementAt(i); + } + /* (non-Javadoc) + * @see javax.swing.table.TableModel#isCellEditable(int, int) + */ + public boolean isCellEditable(int x, int y) { + return true; + } + /*public Class getColumnClass(int c) { + return getValueAt(0, c).getClass(); + }*/ +} // end Class UserCon -- cgit v1.2.3