Class Message
- java.lang.Object
-
- no.digipost.api.client.representations.Message
-
- All Implemented Interfaces:
MayHaveSender
public class Message extends 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 List<Document>
attachments
Batch
batch
ZonedDateTime
deliveryTime
String
invoiceReference
String
messageId
Document
primaryDocument
PrintIfNotRegistered
printIfNotRegistered
PrintIfUnread
printIfUnread
MessageRecipient
recipient
Long
senderId
SenderOrganization
senderOrganization
-
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 Message
copyMessageWithOnlyDigipostDetails(Message messageToCopy)
static Message
copyMessageWithOnlyPrintDetails(Message messageToCopy)
Comparator<? super Document>
documentOrder()
Stream<Document>
getAllDocuments()
Channel
getChannel()
Optional<SenderId>
getSenderId()
Optional<SenderOrganization>
getSenderOrganization()
boolean
hasAnyDocumentRequiringEncryption()
boolean
isDirectPrint()
boolean
isSameMessageAs(Message message)
static Message.MessageBuilder
newMessage(String messageId, Document primaryDocument)
static Message.MessageBuilder
newMessage(UUID messageId, Document primaryDocument)
String
toString()
-
-
-
Field Detail
-
messageId
public final String messageId
-
senderId
public final Long senderId
-
senderOrganization
public final SenderOrganization senderOrganization
-
recipient
public final MessageRecipient recipient
-
deliveryTime
public final ZonedDateTime deliveryTime
-
invoiceReference
public final String invoiceReference
-
primaryDocument
public final Document primaryDocument
-
printIfUnread
public final PrintIfUnread printIfUnread
-
printIfNotRegistered
public final PrintIfNotRegistered printIfNotRegistered
-
batch
public final Batch batch
-
-
Method Detail
-
newMessage
public static Message.MessageBuilder newMessage(UUID messageId, Document primaryDocument)
-
newMessage
public static Message.MessageBuilder newMessage(String messageId, Document primaryDocument)
-
copyMessageWithOnlyPrintDetails
public static Message copyMessageWithOnlyPrintDetails(Message messageToCopy)
-
copyMessageWithOnlyDigipostDetails
public static Message copyMessageWithOnlyDigipostDetails(Message messageToCopy)
-
getAllDocuments
public 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 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 Optional<SenderId> getSenderId()
- Specified by:
getSenderId
in interfaceMayHaveSender
- Returns:
- the sender ID, or
Optional.empty()
if it does not exist.
-
getSenderOrganization
public Optional<SenderOrganization> getSenderOrganization()
- Specified by:
getSenderOrganization
in interfaceMayHaveSender
- Returns:
- the sender organization, or
Optional.empty()
if it does not exist.
-
-