de.katho.kBorrow.data

## Class KUserModel

- java.lang.Object
- - de.katho.kBorrow.data.KUserModel

All Implemented Interfaces:
  KDataModel

    public class KUserModel
    extends java.lang.Object
    implements KDataModel

Zuständig für die Verwaltung einer Datenstruktur mit KUser-Objekten.

Verwaltet außerdem die GUI-Models, die auf die KUser-Daten zugreifen müssen und benachrichtigt die Models, wenn sich der Inhalt der Datenstruktur ändert.

### Field Summary

Fields
`private java.util.ArrayList<KUser>` `data` Liste mit KUser-Objekten.
`private DbConnector` `dbCon` Referenz auf die Datenbank
`private java.util.ArrayList<KGuiModel>` `models` Liste mit KGuiModel-Objekten, die benachrichtigt werden müssen, wenn die Datenstruktur aktualisiert wird.

### Constructor Summary

Constructors
Constructor and Description
`KUserModel(DbConnector pDbCon)` Erzeugt eine neue Instanz des KUserModel.

### Method Summary

All Methods Instance Methods Concrete Methods
`java.util.ArrayList<KUser>` `getData()` Gibt die kompletten Daten als ArrayList zurück.
`KUser` `getElement(int id)` Gibt KUser-Objekt mit der angefragten ID zurück.
`int` `getIdByFullname(java.lang.String pName)` Gibt die ID eines KUser-Objekts basierend auf dem vollen Namen zurück.
`void` `register(KGuiModel pModel)` Ein KGuiModel registriert sich so am KUserModel und wird nun benachrichtigt, wenn die Datenstruktur sich ändert.
`void` `updateModel()` Holt Daten aus der Datenbank und benachrichtigt alle registrierten KGuiModel.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### models

    private java.util.ArrayList<KGuiModel> models

Liste mit KGuiModel-Objekten, die benachrichtigt werden müssen, wenn die Datenstruktur aktualisiert wird.

#### data

    private java.util.ArrayList<KUser> data

Liste mit KUser-Objekten.

#### dbCon

    private DbConnector dbCon

Referenz auf die Datenbank

### Constructor Detail

#### KUserModel

    public KUserModel(DbConnector pDbCon)

Erzeugt eine neue Instanz des KUserModel.

Parameters:
  `pDbCon` - Referenz auf die Datenbank.

### Method Detail

#### updateModel

    public void updateModel()

Holt Daten aus der Datenbank und benachrichtigt alle registrierten KGuiModel.

Specified by:
  `updateModel` in interface `KDataModel`

#### register

    public void register(KGuiModel pModel)

Ein KGuiModel registriert sich so am KUserModel und wird nun benachrichtigt, wenn die Datenstruktur sich ändert.

Specified by:
  `register` in interface `KDataModel`
Parameters:
  `pModel` - KGuiModel, das sich am KUserModel registriert.

#### getData

    public java.util.ArrayList<KUser> getData()

Gibt die kompletten Daten als ArrayList zurück.

Specified by:
  `getData` in interface `KDataModel`
Returns:
  Die kompletten Daten als ArrayList.

#### getElement

    public KUser getElement(int id)

Gibt KUser-Objekt mit der angefragten ID zurück.

Specified by:
  `getElement` in interface `KDataModel`
Parameters:
  `id` - ID des angefragten Elements.
Returns:
  Das angefragte Element.

#### getIdByFullname

    public int getIdByFullname(java.lang.String pName)

Gibt die ID eines KUser-Objekts basierend auf dem vollen Namen zurück.

Parameters:
  `pName` - Voller Name des Benutzers, nach dem gesucht wird.
Returns:
  ID des Benutzers.