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 class
Message.CannotSortDocumentsUsingMessageOrder
static class
Message.MessageBuilder
-
Field Summary
Fields Modifier and Type Field Description java.util.List<Document>
attachments
java.time.ZonedDateTime
deliveryTime
java.lang.String
invoiceReference
java.lang.String
messageId
Document
primaryDocument
PrintIfUnread
printIfUnread
MessageRecipient
recipient
java.lang.Long
senderId
SenderOrganization
senderOrganization
-
Fields inherited from interface no.digipost.api.client.representations.MayHaveSender
NO_SENDER
-
-
Method Summary
Modifier and Type Method Description static Message
copyMessageWithOnlyDigipostDetails(Message messageToCopy)
static Message
copyMessageWithOnlyPrintDetails(Message messageToCopy)
java.util.Comparator<? super Document>
documentOrder()
java.util.stream.Stream<Document>
getAllDocuments()
Channel
getChannel()
java.util.Optional<SenderId>
getSenderId()
java.util.Optional<SenderOrganization>
getSenderOrganization()
boolean
hasAnyDocumentRequiringEncryption()
boolean
isDirectPrint()
boolean
isSameMessageAs(Message message)
static Message.MessageBuilder
newMessage(java.lang.String messageId, Document primaryDocument)
static Message.MessageBuilder
newMessage(java.util.UUID messageId, Document primaryDocument)
java.lang.String
toString()
-
-
-
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
Document
in 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:
Comparator
which 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:
getSenderId
in interfaceMayHaveSender
- Returns:
- the sender ID, or
Optional.empty()
if it does not exist.
-
getSenderOrganization
public java.util.Optional<SenderOrganization> getSenderOrganization()
- Specified by:
getSenderOrganization
in interfaceMayHaveSender
- Returns:
- the sender organization, or
Optional.empty()
if it does not exist.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-