org.apache.maven.doxia.macro.toc
Class TocMacro

java.lang.Object
  extended by org.apache.maven.doxia.macro.AbstractMacro
      extended by org.apache.maven.doxia.macro.toc.TocMacro
All Implemented Interfaces:
LogEnabled, Macro

public class TocMacro
extends AbstractMacro

Macro to display a Table Of Content in a given Sink. The input parameters for this macro are:

section
Display a TOC for the specified section only, or all sections if 0.
Positive int, not mandatory, 0 by default.
fromDepth
Minimal depth of entries to display in the TOC. Sections are depth 1, sub-sections depth 2, etc.
Positive int, not mandatory, 0 by default.
toDepth
Maximum depth of entries to display in the TOC.
Positive int, not mandatory, 5 by default.
For instance, in an APT file, you could write:
%{toc|section=2|fromDepth=2|toDepth=3}
Display a TOC for the second section in the document, including all subsections (depth 2) and sub-subsections (depth 3).
%{toc}
display a TOC with all section and subsections (similar to %{toc|section=0} )
Moreover, you need to write APT link for section to allow anchor, for instance:
 * {SubSection 1}
 
Similarly, in an XDOC file, you could write:
 <macro name="toc">
   <param name="section" value="1" />
   <param name="fromDepth" value="1" />
   <param name="toDepth" value="2" />
 </macro>
 

Version:
$Id: TocMacro.java 1090706 2011-04-09 23:15:28Z hboutemy $
Author:
Vincent Siveton
Plexus component:
role-hint:
"toc"

Field Summary
 
Fields inherited from interface org.apache.maven.doxia.macro.Macro
EOL, ROLE
 
Constructor Summary
TocMacro()
           
 
Method Summary
 void execute(Sink sink, MacroRequest request)
          Execute the current macro using the given MacroRequest, and emit events into the given sink.
 
Methods inherited from class org.apache.maven.doxia.macro.AbstractMacro
enableLogging, getAttributesFromMap, getLog, required
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TocMacro

public TocMacro()
Method Detail

execute

public void execute(Sink sink,
                    MacroRequest request)
             throws MacroExecutionException
Execute the current macro using the given MacroRequest, and emit events into the given sink.

Parameters:
sink - The sink to receive the events.
request - The corresponding MacroRequest.
Throws:
MacroExecutionException - if an error occurred during execution.


Copyright © 2005-2012 The Apache Software Foundation. All Rights Reserved.