Skip to content

Commit f10508e

Browse files
committed
#241: Fixed how Outlook TO, CC and BCC are handled [skip ci]
1 parent 9e739cd commit f10508e

File tree

4 files changed

+9
-31
lines changed

4 files changed

+9
-31
lines changed

Diff for: modules/core-module/src/main/java/org/simplejavamail/api/internal/outlooksupport/model/OutlookMessage.java

+3-7
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,10 @@ public interface OutlookMessage {
4040

4141
String getSubject();
4242

43-
String getToEmail();
44-
45-
String getToName();
46-
47-
OutlookRecipient getToRecipient();
48-
43+
List<OutlookRecipient> getToRecipients();
44+
4945
List<OutlookRecipient> getCcRecipients();
50-
46+
5147
List<OutlookRecipient> getBccRecipients();
5248

5349
@SuppressWarnings("ElementOnlyUsedFromTestCode")

Diff for: modules/outlook-module/pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
<dependency>
3232
<groupId>org.simplejavamail</groupId>
3333
<artifactId>outlook-message-parser</artifactId>
34-
<version>1.5.0</version>
34+
<version>1.6.0</version>
3535
</dependency>
3636
</dependencies>
3737
</project>

Diff for: modules/outlook-module/src/main/java/org/simplejavamail/internal/outlooksupport/converter/OutlookEmailConverter.java

+3-11
Original file line numberDiff line numberDiff line change
@@ -78,23 +78,15 @@ private static EmailFromOutlookMessage buildEmailFromOutlookMessage(
7878

7979
private static void copyReceiversFromOutlookMessage(@NotNull EmailPopulatingBuilder builder, @NotNull OutlookMessage outlookMessage) {
8080
//noinspection QuestionableName
81+
for (final OutlookRecipient to : outlookMessage.getToRecipients()) {
82+
builder.to(to.getName(), to.getAddress());
83+
}
8184
for (final OutlookRecipient cc : outlookMessage.getCcRecipients()) {
8285
builder.cc(cc.getName(), cc.getAddress());
8386
}
8487
for (final OutlookRecipient bcc : outlookMessage.getBccRecipients()) {
8588
builder.bcc(bcc.getName(), bcc.getAddress());
8689
}
87-
// only add remaining recipients...
88-
outerloop:
89-
for (final OutlookRecipient to : outlookMessage.getRecipients()) {
90-
for (final Recipient recipient : builder.getRecipients()) {
91-
if (Objects.equals(recipient.getName(), to.getName()) &&
92-
Objects.equals(recipient.getAddress(), to.getAddress())) {
93-
continue outerloop;
94-
}
95-
}
96-
builder.to(to.getName(), to.getAddress());
97-
}
9890
}
9991

10092
@NotNull

Diff for: modules/outlook-module/src/main/java/org/simplejavamail/internal/outlooksupport/internal/model/OutlookMessageProxy.java

+2-12
Original file line numberDiff line numberDiff line change
@@ -104,18 +104,8 @@ public String getSubject() {
104104
}
105105

106106
@Override
107-
public String getToEmail() {
108-
return delegate.getToEmail();
109-
}
110-
111-
@Override
112-
public String getToName() {
113-
return delegate.getToName();
114-
}
115-
116-
@Override
117-
public OutlookRecipient getToRecipient() {
118-
return new OutlookRecipientProxy(delegate.getToRecipient());
107+
public List<OutlookRecipient> getToRecipients() {
108+
return wrapRecipients(delegate.getToRecipients());
119109
}
120110

121111
@Override

0 commit comments

Comments
 (0)