summaryrefslogtreecommitdiffstats
path: root/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java
diff options
context:
space:
mode:
authorStefan Suhren <suhren.stefan@fh-swf.de>2015-12-15 23:58:04 +0100
committerStefan Suhren <suhren.stefan@fh-swf.de>2015-12-15 23:58:04 +0100
commitbdec8b2ed49f0473168638c9220209dc77a3afd8 (patch)
tree53050f18b4433c151b921e44d0e1f93cf440b6aa /src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java
parent4aade633751694319a403a415134018a0b213b00 (diff)
downloadProjektthemenvergabe-bdec8b2ed49f0473168638c9220209dc77a3afd8.tar.gz
Projektthemenvergabe-bdec8b2ed49f0473168638c9220209dc77a3afd8.zip
Add model and JavaFXify it
Diffstat (limited to 'src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java')
-rw-r--r--src/de/fhswf/in/inf/se/projektthemenvergabe/model/Projekt.java150
1 files changed, 150 insertions, 0 deletions
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