public AbstractJPAMailboxMessage(JPAMailbox mailbox, Date internalDate, Flags flags, long contentOctets, int bodyStartOctet, PropertyBuilder propertyBuilder) { this.mailbox = mailbox; this.internalDate = internalDate; userFlags = new ArrayList<>(); setFlags(flags); this.contentOctets = contentOctets; this.bodyStartOctet = bodyStartOctet; this.textualLineCount = propertyBuilder.getTextualLineCount(); this.mediaType = propertyBuilder.getMediaType(); this.subType = propertyBuilder.getSubType(); final List<Property> properties = propertyBuilder.toProperties(); this.properties = new ArrayList<>(properties.size()); int order = 0; for (Property property : properties) { this.properties.add(new JPAProperty(property, order++)); } }
public SimpleMailboxMessage(MessageId messageId, Date internalDate, long size, int bodyStartOctet, SharedInputStream content, Flags flags, PropertyBuilder propertyBuilder, MailboxId mailboxId, List<MessageAttachment> attachments) { super(new SimpleMessage( messageId, content, size, internalDate, propertyBuilder.getSubType(), propertyBuilder.getMediaType(), bodyStartOctet, propertyBuilder.getTextualLineCount(), propertyBuilder.toProperties(), attachments )); setFlags(flags); this.mailboxId = mailboxId; this.userFlags = flags.getUserFlags(); }
@Test void saveShouldSaveNullValueForTextualLineCountAsZero() throws Exception { message = createMessage(messageId, CONTENT, BODY_START, new PropertyBuilder(), NO_ATTACHMENT); testee.save(message).join(); MessageWithoutAttachment attachmentRepresentation = toMessage(testee.retrieveMessages(messageIds, MessageMapper.FetchType.Metadata, Limit.unlimited())); assertThat(attachmentRepresentation.getPropertyBuilder().getTextualLineCount()) .isEqualTo(0L); }
@Test void saveShouldSaveTextualLineCount() throws Exception { long textualLineCount = 10L; PropertyBuilder propertyBuilder = new PropertyBuilder(); propertyBuilder.setTextualLineCount(textualLineCount); message = createMessage(messageId, CONTENT, BODY_START, propertyBuilder, NO_ATTACHMENT); testee.save(message).join(); MessageWithoutAttachment attachmentRepresentation = toMessage(testee.retrieveMessages(messageIds, MessageMapper.FetchType.Metadata, Limit.unlimited())); assertThat(attachmentRepresentation.getPropertyBuilder().getTextualLineCount()).isEqualTo(textualLineCount); }