| ----- |
| Doxia Sink API |
| ----- |
| Hervé Boutemy |
| ----- |
| 2010-05-08 |
| ----- |
| |
| ~~ 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. |
| |
| ~~ NOTE: For help with the syntax of this file, see: |
| ~~ http://maven.apache.org/doxia/references/apt-format.html |
| |
| Doxia Sink API |
| |
| The <Sink> interface is a generic markup language interface provided as a Java API. |
| It contains several methods that encapsulate common text syntax. A start tag is denoted by |
| <<<xxxx()>>> method and a end of tag by <<<xxxx_()>>> method. |
| |
| For instance, you could do things like: |
| |
| +-- |
| sink.paragraph(); |
| sink.text( "my text" ); |
| sink.paragraph_(); |
| +-- |
| |
| similar to this HTML markup: |
| |
| +-- |
| <p>my text</p> |
| +-- |
| |
| To find out more about the Sink API, you can read the |
| {{{./apidocs/org/apache/maven/doxia/sink/Sink.html}Javadoc}}. |
| |
| |
| * API Changes |
| |
| With every Doxia release, a new <<<doxia-sink-api>>> artifact has been released even if the API itself didn't change. |
| |
| Here is a summary of API changes: |
| |
| *--------------+--------------------------+ |
| || <<doxia-sink-api version>> || <<change description>> || |
| *--------------+--------------------------+ |
| | 1.0-alpha-6 | added <<<org.apache.maven.doxia.sink.Sink>>> interface which supercedes <<<org.codehaus.doxia.sink.Sink>>> | |
| *--------------+--------------------------+ |
| | 1.0-alpha-9 | added <<<org.apache.maven.doxia.sink.SinkFactory>>> interface | |
| *--------------+--------------------------+ |
| | 1.1 | added <<<org.apache.maven.doxia.sink.SinkEventAttributes>>> interface and a dependency on <<<doxia-logging-api>>> | |
| *--------------+--------------------------+ |
| |
| Note that <<<doxia-sink-api 1.0>>> is equivalent to <<<doxia-sink-api 1.0-alpha-9>>>. |
| |
| * Maven dependency |
| |
| <<<doxia-sink-api>>> is included in every Maven 2 distribution. Decoupling has been done in Maven 3. |
| |
| *--------------------+------------------------------+ |
| || <<Maven version>> || <<doxia-sink-api version>> || |
| *--------------------+------------------------------+ |
| | 2.0.x | 1.0 | |
| *--------------------+------------------------------+ |
| | 2.1.x+ | 1.1 | |
| *--------------------+------------------------------+ |
| | 3.0+ | <no more dependency> | |
| *--------------------+------------------------------+ |
| |
| Maven 2.0.8 is the first Maven 2.0.x version including <<<doxia-sink-api 1.0(-alpha-9)>>>. |
| |
| To hide the difference between <<<doxia-sink-api 1.0-alpha-6>>> and <<<1.0>>> included in previous Maven 2.0.x versions, |
| <<<org.apache.maven.doxia.sink.SinkFactory>>> interface was copied into <<<maven-site-plugin 2.0-beta-6>>>. |