This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit 92d346e139df717ea7e8156d7b5617a98d2752ff Author: Benoit Tellier <[email protected]> AuthorDate: Sat Nov 16 10:58:31 2019 +0700 [Refactoring] JPAProperty should not implement Property --- .../james/mailbox/jpa/mail/model/JPAProperty.java | 33 +++------------------- .../model/openjpa/AbstractJPAMailboxMessage.java | 5 +++- 2 files changed, 8 insertions(+), 30 deletions(-) diff --git a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/JPAProperty.java b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/JPAProperty.java index 1f07100..0eba4df 100644 --- a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/JPAProperty.java +++ b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/JPAProperty.java @@ -28,11 +28,12 @@ import javax.persistence.Id; import javax.persistence.Table; import org.apache.james.mailbox.store.mail.model.Property; +import org.apache.james.mailbox.store.mail.model.impl.SimpleProperty; import org.apache.openjpa.persistence.jdbc.Index; @Entity(name = "Property") @Table(name = "JAMES_MAIL_PROPERTY") -public class JPAProperty implements Property { +public class JPAProperty { /** The system unique key */ @Id @@ -96,34 +97,8 @@ public class JPAProperty implements Property { this(property.getNamespace(), property.getLocalName(), property.getValue(), order); } - /** - * Gets the local part of the name of the property. - * - * @return not null - */ - @Override - public String getLocalName() { - return localName; - } - - /** - * Gets the namespace for the name. - * - * @return not null - */ - @Override - public String getNamespace() { - return namespace; - } - - /** - * Gets the value for this property. - * - * @return not null - */ - @Override - public String getValue() { - return value; + public Property toProperty() { + return new SimpleProperty(namespace, localName, value); } @Override diff --git a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/openjpa/AbstractJPAMailboxMessage.java b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/openjpa/AbstractJPAMailboxMessage.java index ebf69f9..6277c72 100644 --- a/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/openjpa/AbstractJPAMailboxMessage.java +++ b/mailbox/jpa/src/main/java/org/apache/james/mailbox/jpa/mail/model/openjpa/AbstractJPAMailboxMessage.java @@ -63,6 +63,7 @@ import org.apache.openjpa.persistence.jdbc.ElementJoinColumn; import org.apache.openjpa.persistence.jdbc.ElementJoinColumns; import org.apache.openjpa.persistence.jdbc.Index; +import com.github.steveash.guavate.Guavate; import com.google.common.base.Objects; /** @@ -356,7 +357,9 @@ public abstract class AbstractJPAMailboxMessage implements MailboxMessage { */ @Override public List<Property> getProperties() { - return new ArrayList<>(properties); + return properties.stream() + .map(JPAProperty::toProperty) + .collect(Guavate.toImmutableList()); } @Override --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
