de.katho.kBorrow.models

## Class UserListModel

- java.lang.Object
- - javax.swing.AbstractListModel<java.lang.String>
  - - de.katho.kBorrow.models.UserListModel

All Implemented Interfaces:
  KGuiModel, java.io.Serializable, javax.swing.ComboBoxModel<java.lang.String>, javax.swing.ListModel<java.lang.String>

Direct Known Subclasses:
  RewriteUserModel

    public class UserListModel
    extends javax.swing.AbstractListModel<java.lang.String>
    implements javax.swing.ComboBoxModel<java.lang.String>, KGuiModel

See Also:
  Serialized Form

### Field Summary

Fields
`protected java.util.ArrayList<KUser>` `data` Daten der Tabelle: Liste aller Benutzer.
`protected java.lang.String` `selectedItem` Vor- und Nachname des aktuell ausgewählten Benutzers.
`private static long` `serialVersionUID` Serial Version UID

### Fields inherited from class javax.swing.AbstractListModel

`listenerList`

### Constructor Summary

Constructors
Constructor and Description
`UserListModel(KDataModel pUserModel)` Erzeugt das UserListModel.

### Method Summary

All Methods Instance Methods Concrete Methods
`private boolean` `dataContains(java.lang.String pName)` Prüft, ob die Liste einen Benutzer mit dem übergebenen Namen enthält.
`void` `fetchData(KDataModel pModel)` Holt die benötigten Daten aus dem als Parameter übergebenen KDataModel.
`java.lang.String` `getElementAt(int index)` Gibt ein Element der Liste zurück.
`java.lang.String` `getSelectedItem()` Gibt das ausgewählte Item zurück.
`int` `getSize()` Gibt die Größe der Liste zurück.
`void` `setSelectedItem(java.lang.Object object)` Setzt einen Wert für "selectedItem".

### Methods inherited from class javax.swing.AbstractListModel

`addListDataListener, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListener`

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

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

### Methods inherited from interface javax.swing.ListModel

`addListDataListener, removeListDataListener`

### Field Detail

#### serialVersionUID

    private static final long serialVersionUID

Serial Version UID

See Also:
  Constant Field Values

#### data

    protected java.util.ArrayList<KUser> data

Daten der Tabelle: Liste aller Benutzer.

#### selectedItem

    protected java.lang.String selectedItem

Vor- und Nachname des aktuell ausgewählten Benutzers.

### Constructor Detail

#### UserListModel

    public UserListModel(KDataModel pUserModel)

Erzeugt das UserListModel.

Parameters:
  `pUserModel` - Referenz auf das KUserModel.

### Method Detail

#### setSelectedItem

    public void setSelectedItem(java.lang.Object object)

Setzt einen Wert für "selectedItem".

Specified by:
  `setSelectedItem` in interface `javax.swing.ComboBoxModel<java.lang.String>`
Parameters:
  `object` - Ausgewähltes Objekt aus der Liste.

#### getSelectedItem

    public java.lang.String getSelectedItem()

Gibt das ausgewählte Item zurück.

Specified by:
  `getSelectedItem` in interface `javax.swing.ComboBoxModel<java.lang.String>`
Returns:
  Ausgewähltes Item als String. *

#### getElementAt

    public java.lang.String getElementAt(int index)

Gibt ein Element der Liste zurück.

Specified by:
  `getElementAt` in interface `javax.swing.ListModel<java.lang.String>`
Parameters:
  `index` - Index des zurückgegebenen Elements.
Returns:
  Element als String.

#### getSize

    public int getSize()

Gibt die Größe der Liste zurück.

Specified by:
  `getSize` in interface `javax.swing.ListModel<java.lang.String>`
Returns:
  Größe der Liste als Int.

#### dataContains

    private boolean dataContains(java.lang.String pName)

Prüft, ob die Liste einen Benutzer mit dem übergebenen Namen enthält.

Parameters:
  `pName` - Vor- und Nachname des Benutzers, gegen den geprüft wird.
Returns:
  True wenn der gesuchte Benutzer in der Liste ist, false, falls nicht.

#### fetchData

    public void fetchData(KDataModel pModel)

Holt die benötigten Daten aus dem als Parameter übergebenen KDataModel.

Specified by:
  `fetchData` in interface `KGuiModel`
Parameters:
  `pModel` - KDataModel, von dem die Daten geholt werden sollen.