diff --git a/src/main/java/de/ozgcloud/xta/client/model/XtaFile.java b/src/main/java/de/ozgcloud/xta/client/model/XtaFile.java index eefd8366ca9d7c171c1eff9ba53470651a0deb12..1617c7437c983d63d92bfe4abcffe90777af430a 100644 --- a/src/main/java/de/ozgcloud/xta/client/model/XtaFile.java +++ b/src/main/java/de/ozgcloud/xta/client/model/XtaFile.java @@ -21,15 +21,15 @@ import lombok.Builder; * @param contentType This attribute specifies the MIME type of the contained content, so it includes entries like {@code text/xml}, * {@code text/plain}, {@code application/gzip}, or {@code application/pdf}. <p>This field is required as it is particularly * important information (handled analogously in email).</p> - * @param contentDescription The description of the content, e.g., 'Offer' or 'Invoice'. <p>This field is optional.</p> - * @param encoding The character set that was used for encoding the content. <p>This field is optional.</p> - * @param name The filename of the data source, if the content was taken from a file. E.g.: For the transmission of xdomea messages, + * @param contentDescription Description of the content, e.g., 'Offer' or 'Invoice'. <p>This field is optional.</p> + * @param encoding Character set that was used for encoding the content. <p>This field is optional.</p> + * @param name Filename of the data source, if the content was taken from a file. E.g.: For the transmission of xdomea messages, * this attribute is mandatory. <p>This field is recommended as it is required for xdomea.</p> * @param id Provides the ability to reference the content via, for example, a running number. <p>This field is optional and will be * automatically set by the XTA server.</p> * @param language Language of the file content, for instance, {@code en-US} or {@code de-DE}, see <a * href="http://www.ietf.org/rfc/rfc3066.txt">RFC 3066</a>. <p>This field is optional.</p> - * @param size The size of the file content in bytes. + * @param size Size of the file content in bytes. * * <p> * This field is optional and will be automatically set by the XTA server. diff --git a/src/main/java/de/ozgcloud/xta/client/model/XtaIdentifier.java b/src/main/java/de/ozgcloud/xta/client/model/XtaIdentifier.java index 0156f132c2c9e13c182e1e42ab38a101d3678d22..30c50fda1f2c1e7232a4f62eb7a59ecb602c0753 100644 --- a/src/main/java/de/ozgcloud/xta/client/model/XtaIdentifier.java +++ b/src/main/java/de/ozgcloud/xta/client/model/XtaIdentifier.java @@ -22,9 +22,9 @@ import lombok.Builder; * .build(); * </pre> * - * @param name The name of the identifier. <p>This field is optional.</p> - * @param category The category of the identifier. <p>This field is optional.</p> - * @param value The value of the identifier. <p>This field is required.</p> + * @param name Name of the identifier. <p>This field is optional.</p> + * @param category Category of the identifier. <p>This field is optional.</p> + * @param value Value of the identifier. <p>This field is required.</p> */ @Builder public record XtaIdentifier( diff --git a/src/main/java/de/ozgcloud/xta/client/model/XtaMessage.java b/src/main/java/de/ozgcloud/xta/client/model/XtaMessage.java index 10cf16eb90b271057680c386fde04af0956da777..ae2d1845de39e7794519d11a3269ff29515511d4 100644 --- a/src/main/java/de/ozgcloud/xta/client/model/XtaMessage.java +++ b/src/main/java/de/ozgcloud/xta/client/model/XtaMessage.java @@ -7,6 +7,13 @@ import jakarta.validation.constraints.NotNull; import lombok.Builder; +/** + * A xta message consisting of meta data, a message file and optional attachment files. + * + * @param metaData Metadata of the message <p>This field is required.</p> + * @param messageFile Main message of the message <p>This field is required.</p> + * @param attachmentFiles Attachment files of the message <p>Note that this list should always be empty for xdomea messages.</p> + */ @Builder(toBuilder = true) public record XtaMessage( @NotNull @Valid XtaMessageMetaData metaData, diff --git a/src/main/java/de/ozgcloud/xta/client/model/XtaMessageAndTransportReport.java b/src/main/java/de/ozgcloud/xta/client/model/XtaMessageAndTransportReport.java deleted file mode 100644 index 6fed361806962dbb1f57c2a747ce65839cd79d4d..0000000000000000000000000000000000000000 --- a/src/main/java/de/ozgcloud/xta/client/model/XtaMessageAndTransportReport.java +++ /dev/null @@ -1,13 +0,0 @@ -package de.ozgcloud.xta.client.model; - -import jakarta.validation.Valid; -import jakarta.validation.constraints.NotNull; - -import lombok.Builder; - -@Builder -public record XtaMessageAndTransportReport( - @NotNull @Valid XtaMessage message, - @NotNull @Valid XtaTransportReport transportReport -) { -} diff --git a/src/main/java/de/ozgcloud/xta/client/model/XtaMessageMetaData.java b/src/main/java/de/ozgcloud/xta/client/model/XtaMessageMetaData.java index 4ff59de99851b17542b682b0efe5b92b80b5ee67..a9b83320e520c6a718ebd7815662fc477eb3dc20 100644 --- a/src/main/java/de/ozgcloud/xta/client/model/XtaMessageMetaData.java +++ b/src/main/java/de/ozgcloud/xta/client/model/XtaMessageMetaData.java @@ -10,6 +10,24 @@ import jakarta.validation.constraints.PositiveOrZero; import lombok.Builder; +/** + * Represents the metadata of an XTA message. + * + * <p> + * <small>Parameter documentation strings partially from <i>OSCI_MessageMetaData_V2.02.xsd</i>.</small> + * </p> + * + * @param service Distinct service in a certain business scenario context; in the XÖV context this is the "Dienste URI" (service URI). <p>This field is required.</p> + * @param businessScenarioCode Domain qualifier, e.g. Meldewesen, XVergabe... <p>This field is required.</p> + * @param businessScenarioListUri Code list URI of the business scenario. <p>If {@code null}, {@link XtaMessageMetaData#businessScenarioCode} refers to an undefined business scenario. Otherwise, it is a defined scenario which additionally requires {@link XtaMessageMetaData#businessScenarioListVersionId}.</p> + * @param businessScenarioListVersionId code list version ID of the business scenario. <p>Required if {@link XtaMessageMetaData#businessScenarioListUri} is not {@code null}.</p> + * @param messageTypeCode Code of the message type. <p>For instance, <i>Geschaeftsgang.Geschaeftsgang.0201</i> with business scenario <i>XDOMEAGAD_DATA</i>.</p> <p>This field is required.</p> + * @param messageTypePayloadSchema Payload schema of the message type. <p>For instance, <i>urn:xoev-de:xdomea:schema:2.4.0</i> with code <i>Geschaeftsgang.Geschaeftsgang.0201</i> and business scenario <i>XDOMEAGAD_DATA</i>.</p> <p>This field is required.</p> + * @param messageId Unique identifier of the message. <p>The ID is generated by the server and thus not required when sending.</p> + * @param authorIdentifier Identifier of the author of the message. <p>This field is required.</p> + * @param readerIdentifier Identifier of the reader of the message. <p>This field is required.</p> + * @param messageSize Size of the message in bytes. <p>The size is determined by the server an thus not required when sending.</p> + */ @Builder(toBuilder = true) public record XtaMessageMetaData( @NotBlank String service, diff --git a/src/main/java/de/ozgcloud/xta/client/model/XtaTransportReport.java b/src/main/java/de/ozgcloud/xta/client/model/XtaTransportReport.java index c768d2a3bf7e5fe1ef6c88ce46fc474b32829358..13dca75c777988fc90015225f78cb8384b96b137 100644 --- a/src/main/java/de/ozgcloud/xta/client/model/XtaTransportReport.java +++ b/src/main/java/de/ozgcloud/xta/client/model/XtaTransportReport.java @@ -7,6 +7,13 @@ import jakarta.validation.constraints.NotNull; import lombok.Builder; +/** + * A transport report of a XTA message. + * + * @param metaData Metadata of the message. + * @param reportTime Time of the report. + * @param status Status of the message at the time of {@link XtaTransportReport#reportTime}. + */ @Builder public record XtaTransportReport( @NotNull @Valid XtaMessageMetaData metaData,