Skip to content

Methodensignaturen Java-SDK [M]

Warum?

Als Vorbereitung zur Erstellung des Java-SDK (#15 (closed)) soll die Funktionalität und Benutzbarkeit des Java-SDK auf Grundlage eines Grundgerüstes für eine Java-Bibliothek abgestimmt werden. Hierfür soll eine Library erstellt werden, die nur Methodensignaturen und JavaDoc (aber keine Implementierungen) enthält.

Relevante Links und Bemerkungen

Akzeptanzkriterien

  1. Im GitLab findet sich unter https://git.fitko.de/fit-connect/sdk-java ein Grundgerüst des SDKs mit Methodensignaturen.
  2. Jede Methode ist ausführlich mittels JavaDoc dokumentiert.
  3. Alle Methoden werfen eine NotImplementedException (o.ä.)
  4. Die folgenden Funktionalitäten sind abgebildet (nicht jede Funktionalität muss zwangsläufig über eine eigene Methode abgebildet werden, ggf. reicht auch ein // TODO: implement xyz):
    • Sender + Subscriber: Abruf von OAuth-Tokens
    • Sender: Prüfung von öffentlichen Schlüsseln und Zertifikatsketten + OCSP-Check (vgl. #119 (closed))
    • Sender: Verschlüsselung von Fachdaten (JSON, XML) mittels JWE
    • Sender: Verschlüsselung von Anhängen (Binärdaten) mittels JWE
    • Sender: Korrekte Erzeugung eines Metadatensatzes inkl. Hashwerte
    • Subscriber: Entschlüsselung von Fachdaten (JSON oder XML) mittels JWE
    • Subscriber: Entschlüsselung von Anhängen (Binärdaten) mittels JWE
    • Subscriber: Prüfung der empfangenen Metadaten gegen das zugehörige JSON-Schema
    • Subscriber: Prüfung der Hashwerte aus dem Metadatensatz.
    • Subscriber: SET-Erstellung inkl. Signaturerzeugung
    • Sender + Subscriber: SET-Empfang inkl. Signaturprüfung
    • Sender + Subscriber: Unterstüzung / Abstraktion der API-Nutzung (fitconnect.sendSubmission(metadata, destinationID, ...) o.ä.) für die oben genannten Use-Cases
    • Logging (Logging-Modul muss von außen kommen)
  5. Es ist vorgesehen, dass das SDK auch über einen HTTP-Proxy genutzt werden kann (vgl. ProxyRestTemplate im Zustelldienst).

Durchführungsplan (vom Entwickler bei Storyplanung auszufüllen)

Edited by Martin Vogel