Initial Commit

This commit is contained in:
joss 2025-03-31 21:11:37 +02:00
commit 4b78ccbbd9
8 changed files with 179 additions and 0 deletions

26
src/Main.java Normal file
View file

@ -0,0 +1,26 @@
package hsmw.jotto5.beleg;
import hsmw.jotto5.beleg.views.*;
import com.sun.net.httpserver.*;
import java.net.InetSocketAddress;
/**
* Die Main-Klasse mit dem Einstiegspunkt der Anwendung
*/
public class Main {
/**
* Main-Methode
* @param args Die Programmargumente
*/
public static void main(String[] args) throws Exception {
HttpServer s = HttpServer.create(new InetSocketAddress(8000), 0);
s.createContext("/main", new StartView());
s.setExecutor(null);
s.start();
}
}

26
src/Model.java Normal file
View file

@ -0,0 +1,26 @@
package hsmw.jotto5.beleg;
import java.util.ArrayList;
/**
* Das Model der Anwendung.
*
* Stellt einfache Abfragen bereit und verwaltet die Anbindung an ein Speicher-Backend.
* Zugriff auf Daten ist Thread-sicher. Um ständiges Zusammenbauen von Objekten
* zu vermeiden und um besser vom eigentlichen Backend zu abstrahieren sind viele
* einfache Abfragen als Methode umgesetzt.
*/
public class Model {
private ArrayList<Student> students;
private ArrayList<Resource> resources;
/**
* Initialisiert ein leeres Model.
*/
public Model() {
students = new ArrayList<Student>();
resources = new ArrayList<Resource>();
}
}

13
src/Resource.java Normal file
View file

@ -0,0 +1,13 @@
package hsmw.jotto5.beleg;
/**
* Basisklasse für eine beliebige Ressource.
*
* Alle spezifischen Ressourcen erben von dieser Klasse.
*/
public abstract class Resource {
private String displayName;
private String uid; // UID String, ähnlich "CN" in LDAP
}

13
src/Student.java Normal file
View file

@ -0,0 +1,13 @@
package hsmw.jotto5.beleg;
/**
* Beschreibt eine Studierende Person.
*
* Aus verwaltungstechnischen Gründen zählen Studierende auch als Ressourcen.
*/
public class Student extends Resource {
private String name;
private String lastName;
}

21
src/views/StartView.java Normal file
View file

@ -0,0 +1,21 @@
package hsmw.jotto5.beleg.views;
import java.io.IOException;
import java.io.OutputStream;
import com.sun.net.httpserver.*;
public class StartView implements HttpHandler {
public void handle(HttpExchange t) throws IOException {
String response;
OutputStream os;
response = "<h1>Beleg - Startseite!</h1><p>Bitte waehle aus einer der nachstehenden Optionen.</p>";
od = t.getResponseBody();
t.sendResponseHeaders(200, response.length());
os.write(response.getBytes());
os.close();
}
}