import java.io.Serializable;
import java.text.MessageFormat;
+import java.util.Properties;
+import java.util.ResourceBundle;
+import javax.annotation.PostConstruct;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.jms.JMSException;
*/
private final DeliverableAddressbookEmail mailer;
+ /**
+ * Configuration file
+ */
+ private final String configFile = "org.mxchange.jmailer.config"; //NOI18N
+
/**
* Default constructor
*/
this.getLoggerBeanLocal().logTrace("onMessage - EXIT!"); //NOI18N
}
+ /**
+ * Post-construction
+ */
+ @PostConstruct
+ public void init () {
+ // Trace message
+ this.getLoggerBeanLocal().logTrace("init: CALLED!"); //NOI18N
+
+ // Try to load bundle
+ ResourceBundle bundle = ResourceBundle.getBundle(this.configFile);
+
+ // Debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("init: bundle={0}", bundle)); //NOI18N
+
+ // The bunble should be valid
+ if (null == bundle) {
+ // Throw NPE
+ throw new NullPointerException(MessageFormat.format("bundle is null, maybe file {0} does not exist?", this.configFile)); //NOI18N
+ }
+
+ // Init Properties
+ Properties properties = new Properties();
+
+ // Is the bundle not empty?
+ if (!bundle.keySet().isEmpty()) {
+ // Loop through all
+ for (final String key : bundle.keySet()) {
+ // Log debug message
+ this.getLoggerBeanLocal().logDebug(MessageFormat.format("init: key={0}", key)); //NOI18N
+
+ // Get string from bundle and set it in properties
+ properties.put(key, bundle.getString(key));
+ }
+ }
+
+ // Handle it over to the mailer
+ this.mailer.init(properties);
+
+ // Trace message
+ this.getLoggerBeanLocal().logTrace("init: EXIT!"); //NOI18N
+ }
}
--- /dev/null
+# Copyright (C) 2016 Roland Haeder
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# Email address for "Errors-To" header
+mailer.errorsto=you@foo.example
+# Email address for "Bounces-To" header
+mailer.bouncesto=you@foo.example
+# Email address for "X-Loop" header
+mailer.xloop=you@foo.example