diff options
| author | Stefan Suhren <suhren.stefan@fh-swf.de> | 2015-12-15 23:58:04 +0100 |
|---|---|---|
| committer | Stefan Suhren <suhren.stefan@fh-swf.de> | 2015-12-15 23:58:04 +0100 |
| commit | bdec8b2ed49f0473168638c9220209dc77a3afd8 (patch) | |
| tree | 53050f18b4433c151b921e44d0e1f93cf440b6aa /src/de/fhswf/in | |
| parent | 4aade633751694319a403a415134018a0b213b00 (diff) | |
| download | Projektthemenvergabe-bdec8b2ed49f0473168638c9220209dc77a3afd8.tar.gz Projektthemenvergabe-bdec8b2ed49f0473168638c9220209dc77a3afd8.zip | |
Add model and JavaFXify it
Diffstat (limited to 'src/de/fhswf/in')
3 files changed, 254 insertions, 0 deletions
diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java index fb59831..caa7962 100644 --- a/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java @@ -1,6 +1,7 @@ package de.fhswf.in.inf.se.projektthemenvergabe.model; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import javafx.beans.Observable; @@ -14,6 +15,8 @@ public class Ansprechpartner private StringProperty nachname = new SimpleStringProperty(); + private ArrayList<Projekt> projekt = new ArrayList<Projekt>(); + private Organisation organisation; /** @@ -46,6 +49,35 @@ public class Ansprechpartner this.organisation.addAnsprechpartner(this); } + /** + * TODO Add method comment here + * + * @return + */ + public List<Projekt> getProjekte() + { + return Collections.unmodifiableList(projekt); + } + + /** + * TODO Add method comment here + * + * @param projekt + */ + public void addProjekt(Projekt projekt) + { + this.projekt.add(projekt); + } + + /** + * TODO Add method comment here + * + * @param projekt + */ + public void removeProjekt(Projekt projekt) + { + this.projekt.remove(projekt); + } /** * Getter for organisation. diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java new file mode 100644 index 0000000..5b09fce --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java @@ -0,0 +1,150 @@ +package de.fhswf.in.inf.se.projektthemenvergabe.model; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.List; + +import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleObjectProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + +public class Projekt +{ + private StringProperty projektthema = new SimpleStringProperty(""); + + private StringProperty skizze = new SimpleStringProperty(""); + + private StringProperty projektbeschreibung = new SimpleStringProperty(""); + + private StringProperty projekteinhalte = new SimpleStringProperty(""); + + private ObjectProperty<Date> präsentationstermin = new SimpleObjectProperty<Date>(); + + private ArrayList<Student> student = new ArrayList<Student>(); + + private Ansprechpartner ansprechpartner; + + public Projekt(Student student1, Student student2, Student student3, + Ansprechpartner ansprechpartner) + { + if (student1 == null && student2 == null && student3 == null) + { + throw new IllegalArgumentException( + "Zumindest ein Student sollte das Projekt bearbeiten."); + } + + if (ansprechpartner == null) + { + throw new IllegalArgumentException( + "Das Projekt sollte irgendwo gemacht werden."); + } + + if (student1 != null) + { + student.add(student1); + student1.setProjekt(this); + } + + if (student2 != null) + { + student.add(student2); + student2.setProjekt(this); + } + + if (student3 != null) + { + student.add(student3); + student3.setProjekt(this); + } + + this.ansprechpartner = ansprechpartner; + this.ansprechpartner.addProjekt(this); + } + + public final StringProperty projektthemaProperty() + { + return this.projektthema; + } + + public final String getProjektthema() + { + return this.projektthemaProperty().get(); + } + + public final void setProjektthema(final String projektthema) + { + this.projektthemaProperty().set(projektthema); + } + + public final StringProperty skizzeProperty() + { + return this.skizze; + } + + public final String getSkizze() + { + return this.skizzeProperty().get(); + } + + public final void setSkizze(final String skizze) + { + this.skizzeProperty().set(skizze); + } + + public final StringProperty projektbeschreibungProperty() + { + return this.projektbeschreibung; + } + + public final String getProjektbeschreibung() + { + return this.projektbeschreibungProperty().get(); + } + + public final void setProjektbeschreibung(final String projektbeschreibung) + { + this.projektbeschreibungProperty().set(projektbeschreibung); + } + + public final StringProperty projekteinhalteProperty() + { + return this.projekteinhalte; + } + + public final String getProjekteinhalte() + { + return this.projekteinhalteProperty().get(); + } + + public final void setProjekteinhalte(final String projekteinhalte) + { + this.projekteinhalteProperty().set(projekteinhalte); + } + + public final ObjectProperty<Date> präsentationsterminProperty() + { + return this.präsentationstermin; + } + + public final java.util.Date getPräsentationstermin() + { + return this.präsentationsterminProperty().get(); + } + + public final void setPräsentationstermin(final Date präsentationstermin) + { + this.präsentationsterminProperty().set(präsentationstermin); + } + + public List<Student> getStudents() + { + return Collections.unmodifiableList(student); + } + + public Ansprechpartner getAnsprechpartner() + { + return this.ansprechpartner; + } +}
\ No newline at end of file diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Student.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Student.java new file mode 100644 index 0000000..7461c26 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Student.java @@ -0,0 +1,72 @@ +package de.fhswf.in.inf.se.projektthemenvergabe.model; + +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + +public class Student +{ + private StringProperty vorname = new SimpleStringProperty(""); + + private StringProperty nachname = new SimpleStringProperty(""); + + private IntegerProperty matrikelnummer = new SimpleIntegerProperty(0); + + private Projekt projekt; + + public final StringProperty vornameProperty() + { + return this.vorname; + } + + public final String getVorname() + { + return this.vornameProperty().get(); + } + + public final void setVorname(final String vorname) + { + this.vornameProperty().set(vorname); + } + + public final StringProperty nachnameProperty() + { + return this.nachname; + } + + public final String getNachname() + { + return this.nachnameProperty().get(); + } + + public final void setNachname(final String nachname) + { + this.nachnameProperty().set(nachname); + } + + public final IntegerProperty matrikelnummerProperty() + { + return this.matrikelnummer; + } + + public final int getMatrikelnummer() + { + return this.matrikelnummerProperty().get(); + } + + public final void setMatrikelnummer(final int matrikelnummer) + { + this.matrikelnummerProperty().set(matrikelnummer); + } + + public void setProjekt(Projekt projekt) + { + this.projekt = projekt; + } + + public Projekt getProjekt() + { + return this.projekt; + } +}
\ No newline at end of file |
