OK, here goes:

- Diff for build.xml to include xdoclet task and to generate provided_mailets.xml
- Diff for src\java\org\apache\james\transport\mailets\RemoteDelivery.java
that shows how to incorporate xdoclet comments in the javadoc.
- Template file src\xdocs\provided_mailets.xdt that is used by xdoclet.


Cheers,

   Hes.

Index: src/java/org/apache/james/transport/mailets/RemoteDelivery.java
===================================================================
--- src/java/org/apache/james/transport/mailets/RemoteDelivery.java     
(revision 124588)
+++ src/java/org/apache/james/transport/mailets/RemoteDelivery.java     
(working copy)
@@ -88,7 +88,66 @@
  *
  * as well as other places.
  *
- * @version CVS $Revision: 1.33.4.22 $ $Date: 2004/08/20 03:39:35 $
+ * @mailetdoc Manages delivery of messages to recipients on remote SMTP hosts.
+ *
+ * @mailetdoc.param
+ *  name="outgoing"
+ *  required="true"
+ *  description="The URL for the repository that will hold messages being
+ *  processed by the RemoteDelivery Mailet."
+ *
+ * @mailetdoc.param
+ *  name="delayTime"
+ *  description="a non-negative Long value that is the time in milliseconds
+ *  between redelivery attempts for a particular mail. Defaults to six hours."
+ *
+ * @mailetdoc.param
+ *  name="maxRetries"
+ *  description="a non-negative Integer value that is number of times the 
Mailet
+ *  will attempt to deliver a particular mail. Defaults to five."
+ *
+ * @mailetdoc.param
+ *  name="timeout"
+ *  description="The SMTP connection timeout for SMTP connections generated by
+ *  this Mailet. Defaults to 60 seconds."
+ *
+ * @mailetdoc.param
+ *  name="deliveryThreads"
+ *  description="The number of threads this Mailet will use to generate SMTP
+ *  connections."
+ *
+ * @mailetdoc.param
+ *  name="gateway"
+ *  description="The host name of the SMTP server to be used as a gateway for
+ *  this server. If this value is set, then all messages will be delivered to
+ *  the gateway server, regardless of recipient address. To specify more than
+ *  one gateway server, add multiple gateway tags, each containing one value.
+ *  If more than one server is specified, they will be tried in order until one
+ *  is successful. In addition the port may be specified for each gateway in 
the
+ *  format <host>:<port>. If this value is unset, delivery will occur to
+ *  SMTP servers resolved by MX lookup."
+ *
+ * @mailetdoc.param
+ *  name="gatewayPort"
+ *  description="The default port number of the SMTP server to be used as a
+ *  gateway for this server. This value will be employed when a gateway is set
+ *  and the gateway value does not specify a port as described above."
+ *
+ * @mailetdoc.param
+ *  name="bind"
+ *  description="If present, this value is a string describing the local IP
+ *  address to which the mailet should be bound while delivering emails. If the
+ *  tag is absent then the service will bind to the default local address of 
the
+ *  machine. This tag is useful for multihomed machines.
+ *  Note: Currently you must use the same IP address for all of those
+ *  RemoteDelivery instances where you explicitly supply a bind address."
+ *
+ * @mailetdoc.param
+ *  name="debug"
+ *  description="a boolean value (true/false) indicating whether debugging is 
on.
+ *  Defaults to false."
+ *
+ * @version CVS $Revision$ $Date$
  */
 public class RemoteDelivery extends GenericMailet implements Runnable {
 
Index: build.xml
===================================================================
--- build.xml   (revision 124588)
+++ build.xml   (working copy)
@@ -1,7 +1,7 @@
 <?xml version="1.0"?>
 <!-- ==========================================================================
 
- James build file $Revision: 1.116.2.33 $  Committed on $Date: 2004/06/14 
20:44:13 $ by: $Author: noel $
+ James build file $Revision$  Committed on $Date$ by: $Author$
 
 Authors:
  James Project <server-dev@james.apache.org>
@@ -164,6 +164,10 @@
         <classpath refid="tools.class.path"/>
     </taskdef>
 
+    <taskdef name="xdoclet" classname="xdoclet.DocletTask">
+        <classpath refid="tools.class.path"/>
+    </taskdef>
+
     <!--
        ===================================================================
                                   Main target
@@ -382,8 +386,27 @@
             <fileset dir="${build.docs}"/>
         </copy>
     </target>
+
     <!--
        ===================================================================
+                                  Mailet info
+       ===================================================================
+     -->
+
+     <target name="mailetdoc">
+       <xdoclet destdir="${xdocs.dir}" force="true">
+         <fileset dir="${java.dir}">
+           <include name="**/*.java"/>
+         </fileset>
+         <template
+           templateFile="${xdocs.dir}/provided_mailets.xdt"
+           destinationfile="provided_mailets.xml"
+         />
+       </xdoclet>
+     </target>
+
+    <!--
+       ===================================================================
                                 build   website
        ===================================================================
   -->
<?xml version="1.0"?>

<document>

 <properties>
  <title>James 2.2 - Provided Mailets</title>
 </properties>

<body>

<section name="Mailets">

<p>James provides a number of implemented Mailets for use by James administrators in their 
configurations.  These are primarily mailets that members of the James developer or user 
communities have found useful in their own configurations.  A description of how to configure 
Mailets and use them in the James SpoolManager can be found <a href="spoolmanager_configuration_2_1.html">here</a>.</p>

<XDtClass:forAllClasses>
  <XDtClass:ifHasClassTag tagName="mailetdoc">
<subsection name="<XDtClass:className/>">
<p><XDtClass:classTagValue tagName="mailetdoc"/></p>
<XDtClass:ifHasClassTag tagName="mailetdoc.param">
<p>Parameters:
<ul>
<XDtClass:forAllClassTags tagName="mailetdoc.param">
<li><strong><XDtClass:classTagValue tagName="mailetdoc.param" paramName="name"/></strong> <XDtClass:ifClassTagValueEquals tagName="mailetdoc.param" paramName="required" value="true">(required)</XDtClass:ifClassTagValueEquals><XDtClass:ifClassTagValueNotEquals tagName="mailetdoc.param" paramName="required" value="true">(optional)</XDtClass:ifClassTagValueNotEquals> -
<XDtClass:classTagValue tagName="mailetdoc.param" paramName="description"/></li>
</XDtClass:forAllClassTags>
</ul>
</p>
</XDtClass:ifHasClassTag>
</subsection>
  </XDtClass:ifHasClassTag>
</XDtClass:forAllClasses>

</section>
</body>
</document>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to