Author: vsiveton Date: Mon Mar 2 17:49:07 2009 New Revision: 749378 URL: http://svn.apache.org/viewvc?rev=749378&view=rev Log: o moved overview to an xdoc to use <map/>, tx to the converter :) o added the associated png
Added: maven/doxia/site/src/site/resources/images/architecture.odg (with props) maven/doxia/site/src/site/xdoc/overview.xml (with props) Removed: maven/doxia/site/src/site/apt/overview.apt Added: maven/doxia/site/src/site/resources/images/architecture.odg URL: http://svn.apache.org/viewvc/maven/doxia/site/src/site/resources/images/architecture.odg?rev=749378&view=auto ============================================================================== Binary file - no diff available. Propchange: maven/doxia/site/src/site/resources/images/architecture.odg ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Added: maven/doxia/site/src/site/xdoc/overview.xml URL: http://svn.apache.org/viewvc/maven/doxia/site/src/site/xdoc/overview.xml?rev=749378&view=auto ============================================================================== --- maven/doxia/site/src/site/xdoc/overview.xml (added) +++ maven/doxia/site/src/site/xdoc/overview.xml Mon Mar 2 17:49:07 2009 @@ -0,0 +1,170 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + /* + * 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 xmlns="http://maven.apache.org/XDOC/2.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd"> + <properties> + <title>Overview Of The Doxia Framework</title> + <author>Vincent Siveton</author> + <date>2009-03-02</date> + </properties> + <body> + <section name="Overview Of The Doxia Framework"> + <p> + The following figure represents the main components of the Doxia Framework. + </p> + <p> + <!-- workaround for DOXIA-227: usemap attribute is stripped (fixed in Doxia 1.1, was 1.0-beta-1) --> + <script type="text/javascript"> + tag='<img src="images/architecture.png" width="450" height="383" border="0" usemap="#Doxia_Framework" />'; + tag=tag.substring(0,tag.length-2)+' usemap=\'#Doxia_Framework\''+tag.substring(tag.length-2); + document.write(tag); + </script> + <map id="Doxia_Framework" name="Doxia_Framework"> + <area shape="rect" coords="347,134,419,173" + href="http://maven.apache.org/doxia/doxia-sitetools/doxia-decoration-model/" + alt="Decoration Model"/> + <area shape="rect" coords="231,133,315,170" + href="http://maven.apache.org/doxia/doxia-sitetools/doxia-site-renderer/" + alt="Site Renderer"/> + <area shape="rect" coords="229,181,317,220" + href="http://maven.apache.org/doxia/doxia-sitetools/doxia-doc-renderer/" + alt="Doc Renderer"/> + <area shape="rect" coords="106,304,147,363" + href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-fml/" + alt="FML Module"/> + <area shape="rect" coords="58,306,95,358" + href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-xdoc/" + alt="XDoc Module"/> + <area shape="rect" coords="9,306,49,361" + href="http://maven.apache.org/doxia/doxia/doxia-modules/doxia-module-apt/" + alt="APT Module"/> + <area shape="rect" coords="221,101,450,233" + href="http://maven.apache.org/doxia/doxia-sitetools/" + alt="Site Tools"/> + <area shape="rect" coords="0,274,204,383" + href="http://maven.apache.org/doxia/doxia/doxia-modules/index.html" + alt="Modules"/> + <area shape="rect" coords="48,129,165,200" + href="http://maven.apache.org/doxia/doxia/doxia-core/" + alt="Core"/> + <area shape="rect" coords="155,0,221,49" + href="http://maven.apache.org/doxia/doxia/doxia-sink-api/" + alt="Sink API"/> + </map> + </p> + <p> + <b>Note</b>: Just like Maven, Doxia uses + <a class="externalLink" href="http://plexus.codehaus.org/">Plexus</a> extensively. + </p> + + <subsection name="Sink API"> + <p> + The <i>Sink</i> interface is a generic markup language interface. It contains + several methods that encapsulate common text syntax. A start tag is denoted by + <i>xxxx()</i> method and a end of tag by <i>xxxx_()</i> method. + </p> + <p> + For instance, you could do things like: + </p> + <source> +sink.paragraph(); +sink.text( "my text" ); +sink.paragraph_(); </source> + <p> + similar to this HTML markup: + </p> + <source> +<p>my text</p></source> + <p>To find out more about the Sink API, you could read the Javadoc + <a class="externalLink" + href="http://maven.apache.org/doxia/doxia-sink-api/apidocs/org/apache/maven/doxia/sink/Sink.html">here</a>. + </p> + </subsection> + + <subsection name="Doxia Core"> + <p> + The <i>Core</i> is the API to parse a source and populate it in a <i>Sink</i> + object. The <i>Parser</i> interface contains only one method: + </p> + <source> +void parse( Reader source, Sink sink ) + throws ParseException; </source> + <p> + The <i>ParseException</i> class has the responsibility to catch all parsing + exceptions. It provides an helper method, <i>getLineNumber()</i>, which helps to + find where an error occurred. + </p> + <p> + The <i>AbstractParser</i> class is an abstract implementation of the + <i>Parser</i>. It provides a macro mechanism to give dynamic functionalities for + the parsing. For more information on macros, read the <a + href="./macros/index.html">Doxia Macro Guide</a>. + </p> + <p> + Finally, the <i>SiteModule</i> interface is the last part of the puzzle. It + provides main definitions of a given Doxia module and it is used by the + <i>doxia-site-renderer</i> site tools. + </p> + </subsection> + + <subsection name="Doxia Modules"> + <p> + A Doxia module is an implementation of a given markup language like APT or Xdoc. + Each module should implement these interfaces: + </p> + <ul> + <li><i>Parser</i> interface, more specifically the <i>AbstractParser</i> class</li> + <li><i>SiteModule</i> interface</li> + </ul> + <p> + Several modules provide also a <i>Sink</i> implementation to handle a specific + markup language. + </p> + <p> + For more information on modules, read the <a href="./modules/index.html">Doxia + Module Guide</a>. + </p> + </subsection> + + <subsection name="Doxia Site Tools"> + <p> + The <i>Site Tools</i> are a collection of tools to renderer an output. The main + tool used by Maven, specifically the + <a class="externalLink" href="http://maven.apache.org/plugins/maven-site-plugin/">Maven Site Plugin</a>, + is the <i>doxia-site-renderer</i> which renders in HTML any + documents wrote with supported markup syntax. It used + <a class="externalLink" href="http://velocity.apache.org/">Velocity templates</a> + to customize the renderer and the <i>site-decoration-model</i> tool to decorate the + renderer. + This component describes the layout of the site defined in the <i>site.xml</i> + file. + </p> + <p> + The <i>doxia-doc-renderer</i> tool is used to renderer any document in another + document. + </p> + </subsection> + </section> + </body> +</document> Propchange: maven/doxia/site/src/site/xdoc/overview.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/doxia/site/src/site/xdoc/overview.xml ------------------------------------------------------------------------------ svn:keywords = Author Date Id Revision