changed more stuff
This commit is contained in:
parent
cd9a49a19a
commit
29d3ec8268
8 changed files with 146 additions and 79 deletions
42
src/data/DataObject.java
Normal file
42
src/data/DataObject.java
Normal file
|
@ -0,0 +1,42 @@
|
|||
package hsmw.jotto5.beleg.data;
|
||||
|
||||
/**
|
||||
* Basisklasse für ein beliebiges DataObject.
|
||||
*
|
||||
* Alle spezifischen Objekte (im Sinne dieser Anwendung) erben von dieser Klasse.
|
||||
* DataObjects haben eine UID. Diese wird im Model vergeben, und ist einmalig.
|
||||
* Vorgesehen ist die UID als Pfad-formatierter String mit "/" als Trennsymbol, um
|
||||
* DataObjects hierarchisch zu gliedern - der Inhalt ist aber eigentlich egal
|
||||
* (solange eindeutig).
|
||||
*/
|
||||
public abstract class DataObject {
|
||||
|
||||
private Model model; // DataObjects speichern eine Referenz auf das Modell zu dem sie gehören
|
||||
protected String uid; // einmalige UID des Objektes
|
||||
private String displayName;
|
||||
|
||||
/**
|
||||
* Konstruktor für manuelles Erzeugen.
|
||||
*
|
||||
* Wird nur von Kindklassen verwendet. Dient dazu, ein temporäres
|
||||
* DataObject ohne Model-Bindung zu erzeugen.
|
||||
* @param uid Die vorgegebene UID des Objektes (wird beim Binden an ein Model verwendet)
|
||||
* @param displayName Der Anzeigename des Objektes
|
||||
*/
|
||||
protected DataObject(String uid, String displayName) {
|
||||
this.model = null;
|
||||
this.uid = uid;
|
||||
this.displayName = displayName;
|
||||
}
|
||||
|
||||
/**
|
||||
* Bindet das DataObject an ein Model.
|
||||
*
|
||||
* Ältere Bindings gehen dabei verloren.
|
||||
*/
|
||||
public void bind(Model m) {
|
||||
m.add(this);
|
||||
this.model = m;
|
||||
}
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue