JAMES-2368 Add documentation on user defined listener registration.

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/1094bf90
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/1094bf90
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/1094bf90

Branch: refs/heads/master
Commit: 1094bf90d5b16f391f45566839c017f301c3aea5
Parents: 991194a
Author: benwa <[email protected]>
Authored: Wed May 2 12:21:22 2018 +0700
Committer: benwa <[email protected]>
Committed: Fri May 4 13:39:07 2018 +0700

----------------------------------------------------------------------
 src/site/site.xml                         |  1 +
 src/site/xdoc/server/config-listeners.xml | 57 ++++++++++++++++++++++++++
 src/site/xdoc/server/dev-extend.xml       |  3 ++
 src/site/xdoc/server/packaging.xml        |  8 ++++
 4 files changed, 69 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/1094bf90/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index c0915bc..1ed9248 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -134,6 +134,7 @@
                         <item name="Spring JPA Postgres" 
href="/server/config-spring-jpa-postgres.html" />
                         <item name="Quota" href="/server/config-quota.html" />
                         <item name="Events" href="/server/config-events.html" 
/>
+                        <item name="Additional mailbox listeners" 
href="/server/config-listeners.html" />
                     </item>
                     <item name="5. Manage" href="/server/manage.html" 
collapse="true" >
                         <item name="WebAdmin" 
href="/server/manage-webadmin.html" />

http://git-wip-us.apache.org/repos/asf/james-project/blob/1094bf90/src/site/xdoc/server/config-listeners.xml
----------------------------------------------------------------------
diff --git a/src/site/xdoc/server/config-listeners.xml 
b/src/site/xdoc/server/config-listeners.xml
new file mode 100644
index 0000000..41bfece
--- /dev/null
+++ b/src/site/xdoc/server/config-listeners.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.    
+-->
+<document>
+
+    <properties>
+        <title>Apache James Server 3 - Listeners Configuration</title>
+    </properties>
+
+    <body>
+
+        <section name="Mailbox listeners Configuration">
+
+            <p>
+              Note: This feature requires Guice wiring. This is not 
implemented using Spring wiring.<br/>
+              Additionally, wiring not providing a mailbox support, like 
<code>jpa-smtp</code>, do not have support for
+              mailbox listeners configuration.
+            </p>
+
+            <p>Consult <a 
href="https://github.com/apache/james-project/blob/master/dockerfiles/run/guice/cassandra/destination/conf/listeners.xml";>listeners.xml</a>
+                to get some examples and hints.</p>
+
+            <p>James Guice wiring allow the user to register potentially user 
defined additional mailbox listeners.</p>
+
+            <p>To do so, just register the class that needs to be instantiated 
and added to global listeners. These JAR can be
+               part of James source code, or provided as an extension and thus 
should be located in the<code>extensions-jars</code> folder.</p>
+
+            <ul>
+                Already provided listeners includes:
+
+                 
<li><code>org.apache.james.mailbox.spamassassin.SpamAssassinListener</code>:
+                     Provides per user real-time HAM/SPAM feedback to a 
SpamAssassin server depending on user actions.
+                     For now it is only available on top of Cassandra-Guice 
wiring.</li>
+                 
<li><code>org.apache.james.mailbox.cassandra.MailboxOperationLoggingListener</code>:
+                     For Cassandra guice wiring. Provides more insights on 
mailbox operations</li>
+            </ul>
+        </section>
+
+    </body>
+
+</document>

http://git-wip-us.apache.org/repos/asf/james-project/blob/1094bf90/src/site/xdoc/server/dev-extend.xml
----------------------------------------------------------------------
diff --git a/src/site/xdoc/server/dev-extend.xml 
b/src/site/xdoc/server/dev-extend.xml
index 0f2fb5b..2119429 100644
--- a/src/site/xdoc/server/dev-extend.xml
+++ b/src/site/xdoc/server/dev-extend.xml
@@ -58,6 +58,9 @@
   <subsection name="Mailbox Listeners">
   
     <p>See the <a href="http://james.apache.org/mailbox";>mailbox</a> project 
for more information.</p>
+
+    <p>See the <a 
href="http://james.apache.org/server/config-listeners.html";>mailbox 
listeners</a> for configuring
+          additional mailbox listeners.</p>
   
   </subsection>
  

http://git-wip-us.apache.org/repos/asf/james-project/blob/1094bf90/src/site/xdoc/server/packaging.xml
----------------------------------------------------------------------
diff --git a/src/site/xdoc/server/packaging.xml 
b/src/site/xdoc/server/packaging.xml
index ac25549..cf457aa 100644
--- a/src/site/xdoc/server/packaging.xml
+++ b/src/site/xdoc/server/packaging.xml
@@ -194,6 +194,14 @@
                         <td>No</td>
                     </tr>
                     <tr>
+                        <td>User defined mailbox listener registration</td>
+                        <td>No</td>
+                        <td>Yes (master)</td>
+                        <td>Yes (master)</td>
+                        <td>Yes (master)</td>
+                        <td>No</td>
+                    </tr>
+                    <tr>
                         <td>Installation instructions</td>
                         <td><a href="install.html">Here</a></td>
                         <td><a 
href="install/guice-cassandra.html">Here</a></td>


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to