Thanks, it is better now but I still think that this contribution needed a more accurate review: a catch block for NumberFormatException would be useful (to log the configuration error as warning and set the default port value).
Jacopo On Jul 17, 2014, at 6:52 AM, Jacques Le Roux <jacques.le.r...@les7arts.com> wrote: > BTW I don't really care, but if I have done another pass at r1611246 > > Feel free to update if it's not really what you want > > Jacques > > Le 16/07/2014 23:56, Jacques Le Roux a écrit : >> I forgot to save 1 formatting I did before committing, but for the var names >> I have no ideas, you would like to rename port1? >> >> Jacques >> >> Le 16/07/2014 17:52, Jacopo Cappellato a écrit : >>> I see some ugly formatting and variable names in this commit. >>> >>> Jacopo >>> >>> On Jul 16, 2014, at 3:29 PM, jler...@apache.org wrote: >>> >>>> Author: jleroux >>>> Date: Wed Jul 16 13:29:19 2014 >>>> New Revision: 1611002 >>>> >>>> URL: http://svn.apache.org/r1611002 >>>> Log: >>>> An updated ands slightly modified patch from BJ Freeman for "allow >>>> assignment of port for the Javamail container." >>>> https://issues.apache.org/jira/browse/1967 >>>> >>>> currently no property for setting the port to read email from in the >>>> javamail container. >>>> >>>> Modified: >>>> ofbiz/trunk/framework/service/ofbiz-component.xml >>>> ofbiz/trunk/framework/service/src/org/ofbiz/service/mail/JavaMailContainer.java >>>> >>>> Modified: ofbiz/trunk/framework/service/ofbiz-component.xml >>>> URL: >>>> http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/ofbiz-component.xml?rev=1611002&r1=1611001&r2=1611002&view=diff >>>> ============================================================================== >>>> --- ofbiz/trunk/framework/service/ofbiz-component.xml (original) >>>> +++ ofbiz/trunk/framework/service/ofbiz-component.xml Wed Jul 16 13:29:19 >>>> 2014 >>>> @@ -77,6 +77,7 @@ under the License. >>>> <property name="default-listener" value="store-listener"> >>>> <property name="mail.store.protocol" value="imap"/> >>>> <property name="mail.host" value="[host]"/> >>>> + <property name="mail.port" value="110"/> >>>> <property name="mail.user" value="[user]"/> >>>> <property name="mail.pass" value="[pass]"/> >>>> <property name="mail.debug" value="false"/> >>>> >>>> Modified: >>>> ofbiz/trunk/framework/service/src/org/ofbiz/service/mail/JavaMailContainer.java >>>> URL: >>>> http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/mail/JavaMailContainer.java?rev=1611002&r1=1611001&r2=1611002&view=diff >>>> ============================================================================== >>>> --- >>>> ofbiz/trunk/framework/service/src/org/ofbiz/service/mail/JavaMailContainer.java >>>> (original) >>>> +++ >>>> ofbiz/trunk/framework/service/src/org/ofbiz/service/mail/JavaMailContainer.java >>>> Wed Jul 16 13:29:19 2014 >>>> @@ -25,6 +25,7 @@ import java.util.Properties; >>>> import java.util.concurrent.Executors; >>>> import java.util.concurrent.ScheduledExecutorService; >>>> import java.util.concurrent.TimeUnit; >>>> + >>>> import javax.mail.FetchProfile; >>>> import javax.mail.Flags; >>>> import javax.mail.Folder; >>>> @@ -34,23 +35,23 @@ import javax.mail.NoSuchProviderExceptio >>>> import javax.mail.Session; >>>> import javax.mail.Store; >>>> import javax.mail.URLName; >>>> -import javax.mail.internet.MimeMessage; >>>> -import javax.mail.search.FlagTerm; >>>> import javax.mail.event.StoreEvent; >>>> import javax.mail.event.StoreListener; >>>> +import javax.mail.internet.MimeMessage; >>>> +import javax.mail.search.FlagTerm; >>>> >>>> import org.ofbiz.base.container.Container; >>>> import org.ofbiz.base.container.ContainerConfig; >>>> import org.ofbiz.base.container.ContainerException; >>>> import org.ofbiz.base.util.Debug; >>>> -import org.ofbiz.base.util.UtilValidate; >>>> import org.ofbiz.base.util.UtilMisc; >>>> +import org.ofbiz.base.util.UtilValidate; >>>> import org.ofbiz.entity.Delegator; >>>> import org.ofbiz.entity.DelegatorFactory; >>>> -import org.ofbiz.entity.GenericValue; >>>> import org.ofbiz.entity.GenericEntityException; >>>> -import org.ofbiz.service.LocalDispatcher; >>>> +import org.ofbiz.entity.GenericValue; >>>> import org.ofbiz.service.GenericServiceException; >>>> +import org.ofbiz.service.LocalDispatcher; >>>> import org.ofbiz.service.ServiceContainer; >>>> >>>> public class JavaMailContainer implements Container { >>>> @@ -77,6 +78,7 @@ public class JavaMailContainer implement >>>> * @throws org.ofbiz.base.container.ContainerException >>>> * >>>> */ >>>> + @Override >>>> public void init(String[] args, String name, String configFile) throws >>>> ContainerException { >>>> this.name = name; >>>> this.configFile = configFile; >>>> @@ -91,6 +93,7 @@ public class JavaMailContainer implement >>>> * @throws org.ofbiz.base.container.ContainerException >>>> * >>>> */ >>>> + @Override >>>> public boolean start() throws ContainerException { >>>> ContainerConfig.Container cfg = ContainerConfig.getContainer(name, >>>> configFile); >>>> String dispatcherName = ContainerConfig.getPropertyValue(cfg, >>>> "dispatcher-name", "JavaMailDispatcher"); >>>> @@ -141,12 +144,14 @@ public class JavaMailContainer implement >>>> * @throws org.ofbiz.base.container.ContainerException >>>> * >>>> */ >>>> + @Override >>>> public void stop() throws ContainerException { >>>> // stop the poller >>>> this.pollTimer.shutdown(); >>>> Debug.logWarning("stop JavaMail poller", module); >>>> } >>>> >>>> + @Override >>>> public String getName() { >>>> return name; >>>> } >>>> @@ -229,13 +234,32 @@ public class JavaMailContainer implement >>>> host = props.getProperty("mail.host"); >>>> } >>>> } >>>> - >>>> + >>>> + // check the port >>>> + int port1 = 0; >>>> + String strport = props.getProperty("mail." + protocol + ".port"); >>>> + if (!UtilValidate.isEmpty(strport)) { >>>> + port1 = Integer.valueOf(strport).intValue(); >>>> + } >>>> + if (port1==0) { >>>> + strport = props.getProperty("mail.port"); >>>> + if (!UtilValidate.isEmpty(strport)) { >>>> + port1 = Integer.valueOf(props.getProperty("mail.port")) >>>> + .intValue(); >>>> + } >>>> + } >>>> + // override the port if have found one. >>>> + if (port1!=0) { >>>> + port = port1; >>>> + } >>>> + >>>> if (Debug.verboseOn()) Debug.logVerbose("Update URL - " + protocol >>>> + "://" + userName + "@" + host + ":" + port + "!" + password + ";" + >>>> file, module); >>>> return new URLName(protocol, host, port, file, userName, password); >>>> } >>>> >>>> class LoggingStoreListener implements StoreListener { >>>> >>>> + @Override >>>> public void notification(StoreEvent event) { >>>> String typeString = ""; >>>> switch (event.getMessageType()) { >>>> @@ -261,6 +285,7 @@ public class JavaMailContainer implement >>>> this.userLogin = userLogin; >>>> } >>>> >>>> + @Override >>>> public void run() { >>>> if (UtilValidate.isNotEmpty(stores)) { >>>> for (Map.Entry<Store, Session> entry: stores.entrySet()) { >>>> >>>> >>> >>> >> > > --