summaryrefslogtreecommitdiffstats
path: root/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java
diff options
context:
space:
mode:
authorStefan Suhren <suhren.stefan@fh-swf.de>2015-12-08 21:42:05 +0100
committerStefan Suhren <suhren.stefan@fh-swf.de>2015-12-08 21:42:05 +0100
commit88abbc5d8b2e8b19eaeaf6c7d34953dddb449509 (patch)
tree4ce4c4a3dd12d76bf1fdd57739b2c06a6f784096 /src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java
parente101e47e41490baa4661613bde2294e6c87a5160 (diff)
downloadProjektthemenvergabe-88abbc5d8b2e8b19eaeaf6c7d34953dddb449509.tar.gz
Projektthemenvergabe-88abbc5d8b2e8b19eaeaf6c7d34953dddb449509.zip
Add properties to the model
Diffstat (limited to 'src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java')
-rw-r--r--src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java122
1 files changed, 106 insertions, 16 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 a57dac2..11873e0 100644
--- a/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java
+++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/model/Ansprechpartner.java
@@ -1,46 +1,136 @@
package de.fhswf.in.inf.se.projektthemenvergabe.model;
+import javafx.beans.Observable;
+import javafx.beans.property.SimpleStringProperty;
+import javafx.beans.property.StringProperty;
+import javafx.util.Callback;
+
public class Ansprechpartner
{
- private String vorname;
+ private StringProperty vorname = new SimpleStringProperty();
- private String nachname;
+ private StringProperty nachname = new SimpleStringProperty();
private Organisation organisation;
- public String getVorname()
+ /**
+ * Generates an extractor that fires when a property of a list value
+ * changes.
+ *
+ * @return The extractor.
+ */
+ public static Callback<Ansprechpartner, Observable[]> extractor()
{
- return this.vorname;
+ return ansprechpartner -> new Observable[] {
+ ansprechpartner.vornameProperty(),
+ ansprechpartner.nachnameProperty(),
+ ansprechpartner.getOrganisation().nameProperty() };
}
- public void setVorname(String vorname)
- {
- this.vorname = vorname;
- }
-
- public String getNachname()
+ /**
+ * TODO Add constructor comment here
+ *
+ * @param organisation
+ */
+ public Ansprechpartner(Organisation organisation)
{
- return this.nachname;
+ if (organisation == null)
+ {
+ throw new IllegalArgumentException(
+ "Ansprechpartner sollten nicht arbeitslos sein.");
+ }
+ this.organisation = organisation;
+ this.organisation.addAnsprechpartner(this);
}
- public void setNachname(String nachname)
+ /**
+ * Getter for property organisation.
+ *
+ * @return Returns the organisation.
+ */
+ public Organisation getOrganisation()
{
- this.nachname = nachname;
+ return organisation;
}
- public Ansprechpartner(Organisation organisation)
+ /**
+ * Setter for organisation.
+ *
+ * @param organisation
+ * The organisation to set.
+ */
+ public void setOrganisation(Organisation organisation)
{
if (organisation == null)
{
throw new IllegalArgumentException(
"Ansprechpartner sollten nicht arbeitslos sein.");
}
+ this.organisation.removeAnsprechpartner(this);
this.organisation = organisation;
this.organisation.addAnsprechpartner(this);
}
- public Organisation getOrganisation()
+ /**
+ * Getter for property nachname.
+ *
+ * @return Returns the nachname.
+ */
+ public final StringProperty nachnameProperty()
{
- return this.organisation;
+ return this.nachname;
}
+
+ /**
+ * Getter for nachname.
+ *
+ * @return Returns the nachname.
+ */
+ public String getNachname()
+ {
+ return this.nachname.get();
+ }
+
+ /**
+ * Setter for nachname.
+ *
+ * @param nachname
+ * The nachname to set.
+ */
+ public void setNachname(String nachname)
+ {
+ this.nachname.set(nachname);
+ }
+
+ /**
+ * Getter for property vorname.
+ *
+ * @return Returns the vorname.
+ */
+ public final StringProperty vornameProperty()
+ {
+ return this.vorname;
+ }
+
+ /**
+ * Getter for property vorname.
+ *
+ * @return Returns the vorname.
+ */
+ public String getVorname()
+ {
+ return vorname.get();
+ }
+
+ /**
+ * Setter for vorname.
+ *
+ * @param vorname
+ * The vorname to set.
+ */
+ public void setVorname(String vorname)
+ {
+ this.vorname.set(vorname);
+ }
+
} \ No newline at end of file