From 7c7e45d69a93b8cddf703ad6df7b51a80dc83f88 Mon Sep 17 00:00:00 2001 From: Stefan Suhren Date: Mon, 7 Dec 2015 20:31:03 +0100 Subject: Initial commit for Projektthemenvergabe --- .../se/projektthemenvergabe/Ansprechpartner.java | 67 ++++++++++ .../in/inf/se/projektthemenvergabe/Dozent.java | 49 ++++++++ .../fhswf/in/inf/se/projektthemenvergabe/Main.java | 73 +++++++++++ .../inf/se/projektthemenvergabe/Organisation.java | 38 ++++++ .../in/inf/se/projektthemenvergabe/Projekt.java | 135 +++++++++++++++++++++ .../in/inf/se/projektthemenvergabe/Student.java | 52 ++++++++ 6 files changed, 414 insertions(+) create mode 100644 src/de/fhswf/in/inf/se/projektthemenvergabe/Ansprechpartner.java create mode 100644 src/de/fhswf/in/inf/se/projektthemenvergabe/Dozent.java create mode 100644 src/de/fhswf/in/inf/se/projektthemenvergabe/Main.java create mode 100644 src/de/fhswf/in/inf/se/projektthemenvergabe/Organisation.java create mode 100644 src/de/fhswf/in/inf/se/projektthemenvergabe/Projekt.java create mode 100644 src/de/fhswf/in/inf/se/projektthemenvergabe/Student.java (limited to 'src/de/fhswf/in/inf/se/projektthemenvergabe') diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/Ansprechpartner.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/Ansprechpartner.java new file mode 100644 index 0000000..867d469 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/Ansprechpartner.java @@ -0,0 +1,67 @@ +package de.fhswf.in.inf.se.projektthemenvergabe; + +import java.util.ArrayList; + +public class Ansprechpartner +{ + private String vorname; + + private String nachname; + + private ArrayList projekt = new ArrayList(); + + private Organisation organisation; + + public String getVorname() + { + return this.vorname; + } + + public void setVorname(String vorname) + { + this.vorname = vorname; + } + + public String getNachname() + { + return this.nachname; + } + + public void setNachname(String nachname) + { + this.nachname = nachname; + } + + public Ansprechpartner(Organisation organisation) + { + if (organisation == null) + { + throw new IllegalArgumentException( + "Ansprechpartner sollten nicht arbeitslos sein."); + } + this.organisation = organisation; + this.organisation.addAnsprechpartner(this); + } + + public void addProjekt(Projekt projekt) + { + this.projekt.add(projekt); + } + + public void removeProjekt(Projekt projekt) + { + this.projekt.remove(projekt); + } + + public Projekt[] toProjektArray() + { + Projekt[] lProjekt_Temp = new Projekt[this.projekt.size()]; + this.projekt.toArray(lProjekt_Temp); + return lProjekt_Temp; + } + + public Organisation getOrganisation() + { + return this.organisation; + } +} \ No newline at end of file diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/Dozent.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/Dozent.java new file mode 100644 index 0000000..7dea911 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/Dozent.java @@ -0,0 +1,49 @@ +package de.fhswf.in.inf.se.projektthemenvergabe; + +import java.util.ArrayList; + +public class Dozent +{ + private String name; + + private String vorname; + + private ArrayList projekt = new ArrayList(); + + public String getName() + { + return this.name; + } + + public void setName(String name) + { + this.name = name; + } + + public String getVorname() + { + return this.vorname; + } + + public void setVorname(String vorname) + { + this.vorname = vorname; + } + + public void addProjekt(Projekt projekt) + { + this.projekt.add(projekt); + } + + public void removeProjekt(Projekt projekt) + { + this.projekt.remove(projekt); + } + + public Projekt[] toProjektArray() + { + Projekt[] lProjekt_Temp = new Projekt[this.projekt.size()]; + this.projekt.toArray(lProjekt_Temp); + return lProjekt_Temp; + } +} \ No newline at end of file diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/Main.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/Main.java new file mode 100644 index 0000000..aad9537 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/Main.java @@ -0,0 +1,73 @@ +/** + * + */ +package de.fhswf.in.inf.se.projektthemenvergabe; + +/** + * Testet die generierten Klassen. + * + * @author Dina-Marie Hanxleden & Stefan Suhren + * @version 1.0 + */ +public final class Main +{ + + /** + * Leerer Hilfsmittelkonstruktor. + * + */ + private Main() + { + } + + /** + * Testet die generierten Klassen. + * + * @param args + * Kommandozeilenargumente. + */ + public static void main(String[] args) + { + Dozent klug = new Dozent(); + klug.setName("Klug"); + klug.setVorname("Uwe"); + + Student suhren = new Student(); + suhren.setNachname("Suhren"); + suhren.setVorname("Stefan"); + suhren.setMatrikelnummer(10034567); + + Student hanxleden = new Student(); + hanxleden.setNachname("Hanxleden"); + hanxleden.setVorname("Dina-Marie"); + hanxleden.setMatrikelnummer(10034568); + + Student talarczyk = new Student(); + talarczyk.setNachname("Talarczyk"); + talarczyk.setVorname("Martin"); + talarczyk.setMatrikelnummer(10034569); + + Organisation fhswf = new Organisation(); + fhswf.setName("Fachhochschule Südwestfalen - Iserlohn"); + + Ansprechpartner mueller = new Ansprechpartner(fhswf); + mueller.setNachname("Müller"); + mueller.setVorname("Gundula"); + + Projekt projektverwaltung = new Projekt(suhren, hanxleden, talarczyk, + mueller, klug); + projektverwaltung.setProjektthema("Projektverwaltung"); + projektverwaltung + .setProjektbeschreibung("Verwaltung von Projektthemen"); + projektverwaltung + .setSkizze("Ein Projekt zur Verwaltung von Themen für Projekte."); + projektverwaltung.setProjekteinhalte("Lorum Ipsum..."); + + System.out.println(talarczyk.getProjekt().getAnsprechpartner() + .getOrganisation().getName()); + + System.out.println(fhswf.toAnsprechpartnerArray()[0].toProjektArray()[0] + .getDozent().getName()); + } + +} diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/Organisation.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/Organisation.java new file mode 100644 index 0000000..7d1aa92 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/Organisation.java @@ -0,0 +1,38 @@ +package de.fhswf.in.inf.se.projektthemenvergabe; + +import java.util.ArrayList; + +public class Organisation +{ + private String name; + + private ArrayList ansprechpartner = new ArrayList(); + + public String getName() + { + return this.name; + } + + public void setName(String name) + { + this.name = name; + } + + public void addAnsprechpartner(Ansprechpartner ansprechpartner) + { + this.ansprechpartner.add(ansprechpartner); + } + + public void removeAnsprechpartner(Ansprechpartner ansprechpartner) + { + this.ansprechpartner.remove(ansprechpartner); + } + + public Ansprechpartner[] toAnsprechpartnerArray() + { + Ansprechpartner[] lAnsprechpartner_Temp = new Ansprechpartner[this.ansprechpartner + .size()]; + this.ansprechpartner.toArray(lAnsprechpartner_Temp); + return lAnsprechpartner_Temp; + } +} \ No newline at end of file diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/Projekt.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/Projekt.java new file mode 100644 index 0000000..4c689f7 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/Projekt.java @@ -0,0 +1,135 @@ +package de.fhswf.in.inf.se.projektthemenvergabe; + +import java.util.ArrayList; +import java.util.Date; + +public class Projekt +{ + private String projektthema; + + private String skizze; + + private String projektbeschreibung; + + private String projekteinhalte; + + private Date präsentationstermin; + + private Dozent dozent; + + private ArrayList student = new ArrayList(); + + private Ansprechpartner ansprechpartner; + + public String getProjektthema() + { + return this.projektthema; + } + + public void setProjektthema(String projektthema) + { + this.projektthema = projektthema; + } + + public String getSkizze() + { + return this.skizze; + } + + public void setSkizze(String skizze) + { + this.skizze = skizze; + } + + public String getProjektbeschreibung() + { + return this.projektbeschreibung; + } + + public void setProjektbeschreibung(String projektbeschreibung) + { + this.projektbeschreibung = projektbeschreibung; + } + + public String getProjekteinhalte() + { + return this.projekteinhalte; + } + + public void setProjekteinhalte(String projekteinhalte) + { + this.projekteinhalte = projekteinhalte; + } + + public Date getPräsentationstermin() + { + return this.präsentationstermin; + } + + public void setPräsentationstermin(Date präsentationstermin) + { + this.präsentationstermin = präsentationstermin; + } + + public Projekt(Student student1, Student student2, Student student3, + Ansprechpartner ansprechpartner, Dozent dozent) + { + 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 (dozent == null) + { + throw new IllegalArgumentException( + "Das Projekt sollte für einen Dozenten 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.dozent = dozent; + this.dozent.addProjekt(this); + this.ansprechpartner = ansprechpartner; + this.ansprechpartner.addProjekt(this); + } + + public Dozent getDozent() + { + return this.dozent; + } + + public Student[] toStudentArray() + { + Student[] lStudent_Temp = new Student[this.student.size()]; + this.student.toArray(lStudent_Temp); + return lStudent_Temp; + } + + public Ansprechpartner getAnsprechpartner() + { + return this.ansprechpartner; + } +} \ No newline at end of file diff --git a/src/de/fhswf/in/inf/se/projektthemenvergabe/Student.java b/src/de/fhswf/in/inf/se/projektthemenvergabe/Student.java new file mode 100644 index 0000000..2c06bf5 --- /dev/null +++ b/src/de/fhswf/in/inf/se/projektthemenvergabe/Student.java @@ -0,0 +1,52 @@ +package de.fhswf.in.inf.se.projektthemenvergabe; + +public class Student +{ + private String vorname; + + private String nachname; + + private int matrikelnummer; + + private Projekt projekt; + + public String getVorname() + { + return this.vorname; + } + + public void setVorname(String vorname) + { + this.vorname = vorname; + } + + public String getNachname() + { + return this.nachname; + } + + public void setNachname(String nachname) + { + this.nachname = nachname; + } + + public int getMatrikelnummer() + { + return this.matrikelnummer; + } + + public void setMatrikelnummer(int matrikelnummer) + { + this.matrikelnummer = matrikelnummer; + } + + public void setProjekt(Projekt projekt) + { + this.projekt = projekt; + } + + public Projekt getProjekt() + { + return this.projekt; + } +} \ No newline at end of file -- cgit v1.2.3-70-g09d2