Author: woonsan
Date: Wed Nov 19 23:52:33 2014
New Revision: 1640645

URL: http://svn.apache.org/r1640645
Log:
APA-67: describing content-rewriter module

Added:
    
portals/site/applications/src/site/resources/images/content-rewriter-class-diagram.png
   (with props)
Modified:
    portals/site/applications/src/site/argouml/apa-webcontent-2.zargo
    
portals/site/applications/src/site/xdoc/webcontent2/content-rewriter-module.xml

Modified: portals/site/applications/src/site/argouml/apa-webcontent-2.zargo
URL: 
http://svn.apache.org/viewvc/portals/site/applications/src/site/argouml/apa-webcontent-2.zargo?rev=1640645&r1=1640644&r2=1640645&view=diff
==============================================================================
Binary files - no diff available.

Added: 
portals/site/applications/src/site/resources/images/content-rewriter-class-diagram.png
URL: 
http://svn.apache.org/viewvc/portals/site/applications/src/site/resources/images/content-rewriter-class-diagram.png?rev=1640645&view=auto
==============================================================================
Binary file - no diff available.

Propchange: 
portals/site/applications/src/site/resources/images/content-rewriter-class-diagram.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Modified: 
portals/site/applications/src/site/xdoc/webcontent2/content-rewriter-module.xml
URL: 
http://svn.apache.org/viewvc/portals/site/applications/src/site/xdoc/webcontent2/content-rewriter-module.xml?rev=1640645&r1=1640644&r2=1640645&view=diff
==============================================================================
--- 
portals/site/applications/src/site/xdoc/webcontent2/content-rewriter-module.xml 
(original)
+++ 
portals/site/applications/src/site/xdoc/webcontent2/content-rewriter-module.xml 
Wed Nov 19 23:52:33 2014
@@ -25,7 +25,100 @@
   <body>
 
     <section name="Content Rewriter Module">
-      <p>TODO</p>
+      <p>
+        Content Rewriter module defines simple APIs to bridge any content 
rewriting libraries
+        such as <a href="http://htmlcleaner.sourceforge.net/"; 
target="_blank">HtmlCleaner</a>.
+        By default, this module includes HtmlCleaner based content rewriter 
component
+        as well as simple text-line based content rewriter component.
+      </p>
+
+      <subsection name="Class Diagram and Descriptions">
+
+        <p>Here is a class diagram showing the major interfaces and 
classes.</p>
+
+        <img alt="Class Diagram" 
src="../images/content-rewriter-class-diagram.png" />
+
+        <table>
+          <tr>
+            <th>Interface or Class</th>
+            <th>Description</th>
+          </tr>
+          <tr>
+            <td>ContentRewriter</td>
+            <td>
+              The main interface of the Content Rewriter module,
+              defining a simple <code>#rewrite(source, sink, context)</code> 
method
+              which should do content rewriting from <code>source</code> to 
<code>target</code>
+              with using the given <code>context</code>.
+            </td>
+          </tr>
+          <tr>
+            <td>Source</td>
+            <td>
+              Abstraction of input source which can give either 
<code>java.io.InputStream</code>
+              or <code>java.io.Reader</code> from the underlying content data 
source.
+            </td>
+          </tr>
+          <tr>
+            <td>Sink</td>
+            <td>
+              Abstraction of output target which can give either 
<code>java.io.OutputStream</code>
+              or <code>java.io.Writer</code> to the underlying content data 
sink.
+            </td>
+          </tr>
+          <tr>
+            <td>ContentRewritingContext</td>
+            <td>
+              Abstraction of the current content rewriting context which 
allows to
+              set/get/iterate attribute objects by name.
+              <br/>
+              This context abstraction is designed for the case where the 
caller needs to
+              set some environment specific attributes to be referenced by the 
content rewriter
+              component during the process.
+            </td>
+          </tr>
+          <tr>
+            <td>AbstractTextLineContentRewriter</td>
+            <td>
+              An abstract simple content rewriting component implementation 
class
+              which reads each line from the source and tries to rewrite it to 
the sink.
+              <br/>
+              Derived classes may simply override <code>#rewriteLine(String 
line, ContentRewritingContext context)</code> method
+              by reading the <code>line</code> and <code>context</code> 
attributes
+              and transforming the <code>line</code> to return.
+              For example, a derived class may use regular expressions to 
transform the <code>line</code>.
+            </td>
+          </tr>
+          <tr>
+            <td>HtmlCleanerContentRewriter</td>
+            <td>
+              HtmlCleaner based content rewriting component implementation 
class
+              which provides properties for the underlying HtmlCleaner instance
+              and simplified usages for most use cases.
+            </td>
+          </tr>
+        </table>
+
+      </subsection>
+
+      <subsection name="Examples">
+        <p>You can find example code in the unit tests:</p>
+        <ul>
+          <li>
+            Text line based content rewriting example:
+            <a 
href="http://svn.apache.org/repos/asf/portals/applications/webcontent/trunk/content-rewriter/src/test/java/org/apache/portals/applications/webcontent2/rewriter/TextLineContentRewriterTest.java";
 target="_blank">
+              TextLineContentRewriterTest.java
+            </a>
+          </li>
+          <li>
+            HtmlCleaner based content rewriting example:
+            <a 
href="http://svn.apache.org/repos/asf/portals/applications/webcontent/trunk/content-rewriter/src/test/java/org/apache/portals/applications/webcontent2/rewriter/HtmlCleanerContentRewriterTest.java";
 target="_blank">
+              HtmlCleanerContentRewriterTest.java
+            </a>
+          </li>
+        </ul>
+      </subsection>
+
     </section>
 
   </body>


Reply via email to