diff --git a/README.md b/README.md index a961e35a108b4a5ac0e8e461fc9ebb4536efea06..f9f0560691759fe0dee7dab03ac18a1777d71e1a 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ ### Build -To build the maven artifact, run: `mvn clean install` +To build the maven artifact, run: `mvn clean package` #### diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/AdditionalReferenceInfo.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/AdditionalReferenceInfo.java index 56460300c5fff3204e8335206edcf5432a3ef240..07e92aadc53f3af2c8d244ce1cbb9b7cde76bf0c 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/AdditionalReferenceInfo.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/AdditionalReferenceInfo.java @@ -9,10 +9,6 @@ import lombok.Setter; import java.util.Map; -/** - * Eine Struktur, um zusätzliche Informationen zu hinterlegen - */ - @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "senderReference", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/ContentStructure.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/ContentStructure.java index b3ae4bb1bf382ad12e56cc5b139b0df8598bd839..8e06ae6c6d144d63ab4ab5cebe4bc1179cfc5019 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/ContentStructure.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/ContentStructure.java @@ -12,9 +12,6 @@ import lombok.Setter; import java.util.List; import java.util.Map; -/** - * Beschreibt die Struktur der zusätzlichen Inhalte der Einreichung, wie Anlagen oder Fachdaten. - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "data", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/PublicServiceType.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/PublicServiceType.java index cb06e95d12362a15e23f18c3e93cf893f4498c13..fb29a6d1c50fe39fc0b8beb399d46b736a2ff7ea 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/PublicServiceType.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/PublicServiceType.java @@ -9,13 +9,6 @@ import lombok.Setter; import java.util.Map; -/** - * Verwaltungsleistung - * <p> - * Beschreibung der Art der Verwaltungsleistung. Eine Verwaltungsleistung sollte immer mit einer LeiKa-Id beschrieben werden. - * <p> - * Ist für die gegebene Verwaltungsleistung keine LeiKa-Id vorhanden, kann die Verwaltungsleistung übergangsweise über die Angabe einer anderen eindeutigen Schema-URN beschrieben werden. - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "name", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Attachment.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Attachment.java index f26482f7f650267a8519faba38bbf90087c43b01..8147f76647a4629f9dfc44787fcdf26e4e774f33 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Attachment.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Attachment.java @@ -12,10 +12,6 @@ import lombok.Setter; import java.util.Map; import java.util.UUID; - -/** - * Eine in der Einreichung enthaltene Anlage. - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "hash", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Purpose.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Purpose.java index 3b2e50565c5e22590caf996b98f287ae0d1a5fbc..a5726ea3875d4c751fbd77058fb39489350ffcb1 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Purpose.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/Purpose.java @@ -6,12 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Zweck/Art der Anlage - * - form: Automatisch generierte PDF-Repräsentation des vollständigen Antragsformulars - * - attachment: Anlage, die von einem Bürger hochgeladen wurde - * - report: Vom Onlinedienst, nachträglich erzeugte Unterlage - */ public enum Purpose { FORM("form"), diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/EidasAdesProfile.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/EidasAdesProfile.java index 767a8071774df7cfb11dc6eb6dfee8e8ce820119..21199aef3400f361a95797a6c6b1ffe13307e63e 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/EidasAdesProfile.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/EidasAdesProfile.java @@ -6,11 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Referenziert ein eindeutiges Profil einer AdES (advanced electronic signature/seal) gemäß eIDAS-Verordnung über eine URI gemäß [ETSI TS 119 192](https://www.etsi.org/deliver/etsi_ts/119100_119199/119192/01.01.01_60/ts_119192v010101p.pdf). - * <p> - * Für die Details zur Verwendung und Validierung von Profilen siehe auch https://ec.europa.eu/cefdigital/DSS/webapp-demo/doc/dss-documentation.html#_signatures_profile_simplification - */ public enum EidasAdesProfile { HTTP_URI_ETSI_ORG_ADES_191_X_2_LEVEL_BASELINE_B_B("http://uri.etsi.org/ades/191x2/level/baseline/B-B#"), diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Hash__1.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Hash__1.java index 78ad80e7e343b998d4f454c7937e605b34543513..3522e8d5dfacbf4535829abe9df90b9932a87539 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Hash__1.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Hash__1.java @@ -9,12 +9,6 @@ import lombok.Setter; import java.util.Map; -/** - * Hashwert - * <p> - * Der Hashwert der unverschlüsselten Anlage. - * Die Angabe des Hashwertes dient der Integritätssicherung des Gesamtantrags und schützt vor einem Austausch der Anlage durch Systeme zwischen Sender und Subscriber (z.B. dem Zustelldienst). - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "type", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/SignatureFormat.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/SignatureFormat.java index 6f15103879e610477b0e821bfe9e0eaae09317dd..b9c613efe91ad281f4ead385a3652a66d0287846 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/SignatureFormat.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/SignatureFormat.java @@ -6,9 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Beschreibt, welches Signaturformat die genutzte Signatur / das genutzte Siegel nutzt. Aktuell wird die Hinterlegung folgender Signaturformate unterstützt: CMS = Cryptographic Message Syntax, Asic = Associated Signature Containers, PDF = PDF Signatur, XML = XML-Signature, JSON = JSON Web Signature. - */ public enum SignatureFormat { CMS("cms"), diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Signature__1.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Signature__1.java index de42b349f77504d7b02cfc9ae6d82cec68349059..b2288869acc3be85a2ec6d2b4bb5bdd2d4ad211a 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Signature__1.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Signature__1.java @@ -10,9 +10,6 @@ import lombok.Setter; import java.util.Map; -/** - * Beschreibt das Signaturformt und Profile - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "signatureFormat", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Type.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Type.java index 16257d48e65d233f4c31f812d98dab7d81d9c551..17b4660ee90a83fe8f0773d353b75b597f85c6fa 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Type.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/attachment/signature/Type.java @@ -6,9 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Der verwendete Hash-Algorithmus. Derzeit ist nur `sha512` erlaubt. - */ public enum Type { SHA_512("sha512"); diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Data.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Data.java index d83e7c4410e6c79a60cefbb091dac897138c7abc..58e9dc5d86a6be92f44055ce3e1394759694b80e 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Data.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Data.java @@ -10,9 +10,6 @@ import lombok.Setter; import java.util.Map; -/** - * Definiert das Schema und die Signatur(-art), die für die Fachdaten verwendet werden. - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "signature", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/EidasAdesProfile.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/EidasAdesProfile.java index 339f9b7ac50d3adfa797b5d683a3e999eab4d2ab..fc8843b28eb31a9b6e4ac09052f3ce3e12d35dfb 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/EidasAdesProfile.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/EidasAdesProfile.java @@ -6,11 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Referenziert ein eindeutiges Profil einer AdES (advanced electronic signature/seal) gemäß eIDAS-Verordnung über eine URI gemäß [ETSI TS 119 192](https://www.etsi.org/deliver/etsi_ts/119100_119199/119192/01.01.01_60/ts_119192v010101p.pdf). - * <p> - * Für die Details zur Verwendung und Validierung von Profilen siehe auch https://ec.europa.eu/cefdigital/DSS/webapp-demo/doc/dss-documentation.html#_signatures_profile_simplification - */ public enum EidasAdesProfile { HTTP_URI_ETSI_ORG_ADES_191_X_2_LEVEL_BASELINE_B_B("http://uri.etsi.org/ades/191x2/level/baseline/B-B#"), diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Hash.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Hash.java index 03d99b982c11c526cbed2ac44674793155a075c6..94475c30808ea346a22b1fa2dec4c7e0b6df61bf 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Hash.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Hash.java @@ -9,12 +9,6 @@ import lombok.Setter; import java.util.Map; - -/** - * Hashwert - * <p> - * Der Hashwert der unverschlüsselten Fachdaten. Die Angabe des Hashwertes dient der Integritätssicherung des Gesamtantrags und schützt vor einem Austausch der Fachdaten durch Systeme zwischen Sender und Subscriber (z.B. dem Zustelldienst). - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "type", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/MimeType.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/MimeType.java index b07f19a1145d8441f6f5f6a6de8be55db8ba2e53..cf210d4837c0b4114e00695a3f493123a15b1fa0 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/MimeType.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/MimeType.java @@ -6,9 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Mimetype (z.B. application/json oder application/xml) des referenzierten Schemas (z.B. XSD- oder JSON-Schema). - */ public enum MimeType { APPLICATION_JSON("application/json"), diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Signature.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Signature.java index 4ccfab279bfd2ade6dfde480562fb5b2ddadae7b..dba35defd74ff1ec7dfe8c1719fa8c87c01dce00 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Signature.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Signature.java @@ -9,9 +9,6 @@ import lombok.Setter; import java.util.Map; -/** - * Beschreibt das Signaturformt und Profile - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "signatureFormat", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SignatureFormat.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SignatureFormat.java index 47701c30ea63f748da09a008b050df6527567278..e1676eb7bb87c606403680c7637f60d7d95b06fe 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SignatureFormat.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SignatureFormat.java @@ -6,9 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Beschreibt, welches Signaturformat die genutzte Signatur / das genutzte Siegel nutzt. Aktuell wird die Hinterlegung folgender Signaturformate unterstützt: CMS = Cryptographic Message Syntax, Asic = Associated Signature Containers, PDF = PDF Signatur, XML = XML-Signature, JSON = JSON Web Signature. - */ public enum SignatureFormat { CMS("cms"), diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SubmissionSchema.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SubmissionSchema.java index fada0069564e099c1eddb379b213d60ca4a995ee..4d3b62bcdb7676e41bf967987fa80abefaab49ba 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SubmissionSchema.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/SubmissionSchema.java @@ -10,12 +10,6 @@ import lombok.Setter; import java.net.URI; import java.util.Map; - -/** - * Fachdatenschema - * <p> - * Referenz auf ein Schema, das die Struktur der Fachdaten einer Einreichung beschreibt. - */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "schemaUri", diff --git a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Type.java b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Type.java index e6b1d5688a1997fe558b444f836f51f7900feeea..060804d68bd84425a334e5d890f1aa5afa497dda 100644 --- a/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Type.java +++ b/api/src/main/java/de/fitko/fitconnect/api/domain/model/metadata/data/Type.java @@ -6,9 +6,6 @@ import com.fasterxml.jackson.annotation.JsonValue; import java.util.HashMap; import java.util.Map; -/** - * Der verwendete Hash-Algorithmus. Derzeit ist nur `sha512` erlaubt. - */ public enum Type { SHA_512("sha512"); diff --git a/client/README.md b/client/README.md index b243904dc304e154d51209ee1cf0ca13e96df049..360a90d897abacdb4e03d8bee7f2c4524c7892b4 100644 --- a/client/README.md +++ b/client/README.md @@ -3,17 +3,17 @@ ### API Flow The SdkClientFactory provides fluent API client both for **Sender** and **Subscriber**. -As the flow chart belwo shows, the fluent client ntercae guide you through all essentials calls -in order to hand in a **Submission**. +As the flow chart below shows, the fluent client guides through all essentials calls +in order to hand in a correct **Submission**. #### Api client flow for sending a submission ```mermaid flowchart LR -A[retrieveOAuthToken] --> B(Upload) -B -->|uploadAttachment| C[Result 1] -B -->|uploadData| D[Result 2] +A[retrieveOAuthToken] --> B(Upload Attachements) +B -->|encrypt Attachments| C[Create Submission] +B -->|upload Attachments| C[Result 2] ``` #### Api client flow for subscribing to a submission diff --git a/client/src/main/java/de/fitko/fitconnect/cmd/CommandLineRunner.java b/client/src/main/java/de/fitko/fitconnect/cmd/CommandLineRunner.java index 9145ff801a6a9179437d57fb4e06bf097559370b..fae9f0351ea151ab3edd74dbfa3c2cbefe3e1d9d 100644 --- a/client/src/main/java/de/fitko/fitconnect/cmd/CommandLineRunner.java +++ b/client/src/main/java/de/fitko/fitconnect/cmd/CommandLineRunner.java @@ -3,6 +3,8 @@ package de.fitko.fitconnect.cmd; import com.beust.jcommander.JCommander; import de.fitko.fitconnect.client.SenderClient; +import java.util.Optional; + public class CommandLineRunner { public static void main(String[] args) {