Class Message
- java.lang.Object
-
- no.digipost.api.client.representations.Message
-
- All Implemented Interfaces:
MayHaveSender
public class Message extends java.lang.Object implements MayHaveSender
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classMessage.CannotSortDocumentsUsingMessageOrderstatic classMessage.MessageBuilder
-
Field Summary
Fields Modifier and Type Field Description java.util.List<Document>attachmentsjava.time.ZonedDateTimedeliveryTimejava.lang.StringinvoiceReferencejava.lang.StringmessageIdDocumentprimaryDocumentPrintIfUnreadprintIfUnreadMessageRecipientrecipientjava.lang.LongsenderIdSenderOrganizationsenderOrganization-
Fields inherited from interface no.digipost.api.client.representations.MayHaveSender
NO_SENDER
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MessagecopyMessageWithOnlyDigipostDetails(Message messageToCopy)static MessagecopyMessageWithOnlyPrintDetails(Message messageToCopy)java.util.Comparator<? super Document>documentOrder()java.util.stream.Stream<Document>getAllDocuments()ChannelgetChannel()java.util.Optional<SenderId>getSenderId()java.util.Optional<SenderOrganization>getSenderOrganization()booleanhasAnyDocumentRequiringEncryption()booleanisDirectPrint()booleanisSameMessageAs(Message message)static Message.MessageBuildernewMessage(java.lang.String messageId, Document primaryDocument)static Message.MessageBuildernewMessage(java.util.UUID messageId, Document primaryDocument)java.lang.StringtoString()
-
-
-
Field Detail
-
messageId
public final java.lang.String messageId
-
senderId
public final java.lang.Long senderId
-
senderOrganization
public final SenderOrganization senderOrganization
-
recipient
public final MessageRecipient recipient
-
deliveryTime
public final java.time.ZonedDateTime deliveryTime
-
invoiceReference
public final java.lang.String invoiceReference
-
primaryDocument
public final Document primaryDocument
-
attachments
public final java.util.List<Document> attachments
-
printIfUnread
public final PrintIfUnread printIfUnread
-
-
Method Detail
-
newMessage
public static Message.MessageBuilder newMessage(java.util.UUID messageId, Document primaryDocument)
-
newMessage
public static Message.MessageBuilder newMessage(java.lang.String messageId, Document primaryDocument)
-
copyMessageWithOnlyPrintDetails
public static Message copyMessageWithOnlyPrintDetails(Message messageToCopy)
-
copyMessageWithOnlyDigipostDetails
public static Message copyMessageWithOnlyDigipostDetails(Message messageToCopy)
-
getAllDocuments
public java.util.stream.Stream<Document> getAllDocuments()
- Returns:
- an ordered Stream containing every
Documentin this message. The primary document will be the first element of the list, with the attachments following.
-
isDirectPrint
public boolean isDirectPrint()
-
isSameMessageAs
public boolean isSameMessageAs(Message message)
-
hasAnyDocumentRequiringEncryption
public boolean hasAnyDocumentRequiringEncryption()
-
getChannel
public Channel getChannel()
-
documentOrder
public java.util.Comparator<? super Document> documentOrder()
- Returns:
Comparatorwhich order documents by the same order as they are contained in this message. If a document
-
getSenderId
public java.util.Optional<SenderId> getSenderId()
- Specified by:
getSenderIdin interfaceMayHaveSender- Returns:
- the sender ID, or
Optional.empty()if it does not exist.
-
getSenderOrganization
public java.util.Optional<SenderOrganization> getSenderOrganization()
- Specified by:
getSenderOrganizationin interfaceMayHaveSender- Returns:
- the sender organization, or
Optional.empty()if it does not exist.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-