You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by do...@apache.org on 2002/07/10 06:15:41 UTC
cvs commit: jakarta-avalon-logkit/src/xdocs/stylesheets changes.vsl docs.vsl project.xml templates.vm velocity.properties
donaldp 2002/07/09 21:15:41
Modified: . .cvsignore build.xml
src/xdocs announcement.xml changes.xml features.xml
index.xml whitepaper.xml
Added: src/xdocs/css ns4_only.css print.css site.css tigris.css
src/xdocs/images header.gif
src/xdocs/stylesheets changes.vsl docs.vsl project.xml
templates.vm velocity.properties
Removed: src/xdocs book.xml logkit.uris
src/xdocs/dtd changes-v10.dtd characters.ent
document-v10.dtd
Log:
Get documentation working again.
Revision Changes Path
1.13 +2 -2 jakarta-avalon-logkit/.cvsignore
Index: .cvsignore
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/.cvsignore,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- .cvsignore 20 May 2002 10:13:19 -0000 1.12
+++ .cvsignore 10 Jul 2002 04:15:40 -0000 1.13
@@ -1,10 +1,10 @@
ant.properties
Announcement.txt
docs
-prj.el
-emacs-jprj.el
dist
build
distributions
test
todo
+velocity.log*
+*.el
1.76 +49 -77 jakarta-avalon-logkit/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/build.xml,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -r1.75 -r1.76
--- build.xml 18 May 2002 03:14:26 -0000 1.75
+++ build.xml 10 Jul 2002 04:15:40 -0000 1.76
@@ -85,6 +85,7 @@
<property name="servlet.jar" value="${lib.dir}/servlet.jar"/>
<property name="mail.jar" value="${lib.dir}/mail.jar"/>
+ <property name="jakarta-site.dir" value="../jakarta-site"/>
<path id="project.class.path">
<pathelement path="${java.class.path}" />
@@ -100,9 +101,7 @@
</path>
<path id="tools.class.path">
- <pathelement location="${tools.jar}"/>
- <pathelement location="${junit.jar}"/>
- <fileset dir="${tools.dir}/lib"/>
+ <fileset dir="${jakarta-site.dir}/lib"/>
</path>
<path id="test.class.path">
@@ -422,87 +421,59 @@
</target>
- <!-- Create the Local API documentation -->
- <target name="local-javadocs" depends="javadocs">
-
- <delete dir="${javadocs.dir}"/>
- <mkdir dir="${javadocs.dir}"/>
-
- <copy todir="${javadocs.dir}">
- <fileset dir="${build.javadocs}" />
- </copy>
+ <target name="anakia-avail">
+ <available classname="org.apache.velocity.anakia.AnakiaTask"
+ property="AnakiaTask.present">
+ <classpath refid="tools.class.path"/>
+ </available>
+ </target>
+
+ <target name="anakia-check" depends="anakia-avail" unless="AnakiaTask.present">
+ <echo>
+ AnakiaTask is not present! Please check to make sure that
+ velocity.jar is in your classpath. The easiest way to build
+ the documentation is to checkout jakarta-site CVS and specify
+ jakarta-site.dir property.
+ </echo>
+ </target>
+
+ <target name="docs" depends="anakia-check" description="Generate documentation and website">
+ <taskdef name="anakia"
+ classname="org.apache.velocity.anakia.AnakiaTask">
+ <classpath refid="tools.class.path"/>
+ </taskdef>
+
+ <anakia basedir="${xdocs.dir}"
+ destdir="${docs.dir}"
+ style="docs.vsl"
+ projectfile="stylesheets/project.xml"
+ includes="**/*.xml"
+ excludes="stylesheets/**, changes.xml, announcement.xml"
+ velocitypropertiesfile="src/xdocs/stylesheets/velocity.properties"
+ />
+
+ <anakia basedir="${xdocs.dir}"
+ destdir="${docs.dir}"
+ style="changes.vsl"
+ projectfile="stylesheets/project.xml"
+ includes="changes.xml"
+ velocitypropertiesfile="${xdocs.dir}/stylesheets/velocity.properties"
+ />
- </target>
-
- <target name="printerdocs" depends="javadocs,all">
- <echo message="Printer friendly documentation not implemented yet"/>
- </target>
-
- <!-- Prepares the documentation directory -->
- <target name="docs" depends="javadocs,all">
-
- <mkdir dir="${build.context}"/>
- <mkdir dir="${build.xdocs}"/>
- <mkdir dir="${build.docs}"/>
- <mkdir dir="${build.dir}/work"/>
-
- <!-- Base pointers for non-xdocs documentation. Override these in .ant.properties to link to local docs -->
- <property name="avalon.base" value="http://jakarta.apache.org/avalon"/>
- <property name="framework.base" value="http://jakarta.apache.org/avalon/framework"/>
- <property name="phoenix.base" value="http://jakarta.apache.org/avalon/phoenix"/>
- <property name="cornerstone.base" value="http://jakarta.apache.org/avalon/cornerstone"/>
- <property name="logkit.base" value="http://jakarta.apache.org/avalon/logkit"/>
- <property name="testlet.base" value="http://jakarta.apache.org/avalon/testlet"/>
-
- <filter token="year" value="${year}"/>
- <filter token="AVALON_BASE" value="${avalon.base}"/>
- <filter token="FRAMEWORK_BASE" value="${framework.base}"/>
- <filter token="PHOENIX_BASE" value="${phoenix.base}"/>
- <filter token="CORNERSTONE_BASE" value="${cornerstone.base}"/>
- <filter token="LOGKIT_BASE" value="${logkit.base}"/>
- <filter token="TESTLET_BASE" value="${testlet.base}"/>
-
- <copy todir="${build.context}" overwrite="true" filtering="on">
- <fileset dir="${context.dir}">
- <exclude name="**/*.gif"/>
- <exclude name="**/*.jpg"/>
- <exclude name="**/*.png"/>
- </fileset>
- </copy>
- <copy todir="${build.context}" filtering="off">
- <fileset dir="${context.dir}">
+ <copy todir="${docs.dir}" filtering="off">
+ <fileset dir="${xdocs.dir}">
+ <include name="**/images/**"/>
<include name="**/*.gif"/>
<include name="**/*.jpg"/>
<include name="**/*.png"/>
+ <include name="**/*.css"/>
+ <include name="**/*.js"/>
</fileset>
</copy>
- <copy todir="${build.xdocs}" filtering="on" overwrite="true">
- <fileset dir="${xdocs.dir}"/>
- </copy>
-
- <java classname="org.apache.cocoon.Main" fork="true">
- <arg value="-c${build.context}/"/>
- <arg value="-d${build.docs}"/>
- <arg value="-w${build.dir}/work"/>
- <arg value="-l${build.dir}/work/cocoon.log"/>
- <arg value="-uINFO"/>
- <arg value="index.html"/>
- <classpath>
- <path refid="tools.class.path"/>
- <fileset dir="${build.lib}"/>
- <fileset dir="${tools.dir}/ext"/>
- </classpath>
- </java>
- </target>
-
- <target name="local-docs" depends="local-javadocs,docs">
- <copy todir="${docs.dir}">
- <fileset dir="${build.docs}"/>
- </copy>
- </target>
+ </target>
<!-- Update the www directory -->
- <target name="site-docs" depends="local-docs">
+ <target name="site-docs" depends="docs,javadocs">
<mkdir dir="${www.dir}"/>
@@ -516,7 +487,7 @@
<mkdir dir="${www.dir}"/>
<copy todir="${www.dir}">
- <fileset dir="${docs.dir}" />
+ <fileset dir="${build.docs}" />
</copy>
</target>
@@ -697,6 +668,7 @@
<delete dir="${build.dir}" />
<delete dir="test" /> <!-- cleanup unit test directory -->
<delete>
+ <fileset dir="." includes="velocity.log*"/>
<fileset dir="." includes="**/*~" defaultexcludes="no"/>
</delete>
</target>
1.11 +2 -4 jakarta-avalon-logkit/src/xdocs/announcement.xml
Index: announcement.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/src/xdocs/announcement.xml,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- announcement.xml 18 Nov 2001 07:51:02 -0000 1.10
+++ announcement.xml 10 Jul 2002 04:15:40 -0000 1.11
@@ -1,5 +1,4 @@
-<?xml version="1.0"?>
-
+<?xml version="1.0" encoding="UTF-8"?>
<announcement>
<title>@Name@ @version@</title>
<abstract>The Avalon team is proud to announce the @version@ @status@ release of @Name@.</abstract>
@@ -27,5 +26,4 @@
<downloads name="LogKit" base="http://jakarta.apache.org/builds/jakarta-avalon/release/@name@"/>
</project>
-</announcement>
-
+</announcement>
\ No newline at end of file
1.29 +9 -12 jakarta-avalon-logkit/src/xdocs/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/src/xdocs/changes.xml,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- changes.xml 17 Apr 2002 10:47:40 -0000 1.28
+++ changes.xml 10 Jul 2002 04:15:40 -0000 1.29
@@ -1,18 +1,15 @@
-<?xml version="1.0"?>
-
-<!DOCTYPE changes SYSTEM "dtd/changes-v10.dtd">
-
+<?xml version="1.0" encoding="UTF-8"?>
<changes title="LogKit History of Changes">
<devs>
- <person name="Peter Donald" email="peter@apache.org" id="PD"/>
- <person name="Berin Loritsch" email="bloritsch@apache.org" id="BL"/>
- <person name="Stuart Roebuck" email="stuart.roebuck@adolos.co.uk" id="SR"/>
- <person name="Eung-ju Park" email="colus@apache.org" id="EP"/>
- <person name="Leif Mortenson" email="leif@apache.org" id="LM"/>
- <person name="Giacomo Pati" email="giacomo@apache.org" id="GP"/>
- <person name="Marcus Crafter" email="crafterm@apache.org" id="MC"/>
+ <author email="peter@apache.org">Peter Donald</author>
+ <author email="bloritsch@apache.org">Berin Loritsch</author>
+ <author email="stuart.roebuck@adolos.co.uk">Stuart Roebuck</author>
+ <author email="colus@apache.org">Eung-ju Park</author>
+ <author email="leif@apache.org">Leif Mortenson</author>
+ <author email="giacomo@apache.org">Giacomo Pati</author>
+ <author email="crafterm@apache.org">Marcus Crafter</author>
</devs>
- <release version="1.1">
+ <release version="1.1" date="Unreleased">
<action dev="MC" type="add">
Added SMTPOutputLogTarget to enable logging to email addresses.
</action>
1.8 +10 -13 jakarta-avalon-logkit/src/xdocs/features.xml
Index: features.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/src/xdocs/features.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- features.xml 2 Apr 2002 11:03:32 -0000 1.7
+++ features.xml 10 Jul 2002 04:15:40 -0000 1.8
@@ -1,21 +1,18 @@
-<?xml version="1.0"?>
-
-<!DOCTYPE document SYSTEM "dtd/document-v10.dtd">
-
+<?xml version="1.0" encoding="UTF-8"?>
<document>
- <header>
+ <properties>
<title>Logkit - Features</title>
- <authors>
- <person name="Peter Donald" email="peter@apache.org"/>
- </authors>
- </header>
+
+ <author email="peter@apache.org">Peter Donald</author>
+
+ </properties>
<body>
-<s1 title="Features">
+<section name="Features">
<p>
- <strong>This document is under construction!</strong><br />
+ <strong>This document is under construction!</strong><br/>
The LogKit provides the following features:
</p>
<ul>
@@ -61,7 +58,7 @@
</li>
</ul>
-</s1>
+</section>
</body>
-</document>
+</document>
\ No newline at end of file
1.7 +12 -20 jakarta-avalon-logkit/src/xdocs/index.xml
Index: index.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/src/xdocs/index.xml,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- index.xml 2 Apr 2002 11:03:32 -0000 1.6
+++ index.xml 10 Jul 2002 04:15:40 -0000 1.7
@@ -1,28 +1,20 @@
-<?xml version="1.0"?>
-
-<!DOCTYPE document SYSTEM "dtd/document-v10.dtd">
-
+<?xml version="1.0" encoding="UTF-8"?>
<document>
- <header>
+ <properties>
<title>LogKit - Introduction</title>
- <authors>
- <person name="Avalon Documentation Team" email="avalon-dev@jakarta.apache.org"/>
- </authors>
- </header>
+
+ <author email="avalon-dev@jakarta.apache.org">Avalon Documentation Team</author>
+
+ </properties>
<body>
- <s1 title="Introduction">
+ <section name="Introduction">
<p>
LogKit is a logging toolkit designed for secure performance oriented logging
in applications. To get started using LogKit, it is recomended that you read the
- <link href="whitepaper.html">whitepaper</link> and browse the
- <link href="http://jakarta.apache.org/avalon/logkit/api/index.html">API docs</link>.
+ <link href="whitepaper.html" type="simple" show="replace" actuate="user">whitepaper</link> and browse the
+ <link href="http://jakarta.apache.org/avalon/logkit/api/index.html" type="simple" show="replace" actuate="user">API docs</link>.
</p>
- </s1>
+ </section>
</body>
- <footer>
- <legal>
- Copyright (c) @year@ The Jakarta Apache Project All rights reserved.
- $Revision$ $Date$
- </legal>
- </footer>
-</document>
+
+</document>
\ No newline at end of file
1.8 +46 -54 jakarta-avalon-logkit/src/xdocs/whitepaper.xml
Index: whitepaper.xml
===================================================================
RCS file: /home/cvs/jakarta-avalon-logkit/src/xdocs/whitepaper.xml,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- whitepaper.xml 2 Apr 2002 11:03:32 -0000 1.7
+++ whitepaper.xml 10 Jul 2002 04:15:40 -0000 1.8
@@ -1,16 +1,13 @@
-<?xml version="1.0"?>
-
-<!DOCTYPE document SYSTEM "dtd/document-v10.dtd">
-
+<?xml version="1.0" encoding="UTF-8"?>
<document>
- <header>
+ <properties>
<title>LogKit - Whitepaper</title>
- <authors>
- <person name="Peter Donald" email="peter@apache.org"/>
- </authors>
- </header>
+
+ <author email="peter@apache.org">Peter Donald</author>
+
+ </properties>
<body>
- <s1 title="Abstract">
+ <section name="Abstract">
<p>
Logging is an integral component to any software development project.
During the development stages it offers a valuable source of debugging
@@ -18,8 +15,8 @@
operational data that allows administrators to diagnose problems as they
arise. This whitepaper describes the design and implementation of LogKit.
</p>
- </s1>
- <s1 title="Introduction">
+ </section>
+ <section name="Introduction">
<p>
LogKit, began life as a facade for a more complex logging toolkit. During
@@ -43,9 +40,9 @@
serialization of events.
</p>
- </s1>
+ </section>
- <s1 title="Structure and Elements">
+ <section name="Structure and Elements">
<p>
The most basic components of LogKit are the Logger, the LogEvent and the
@@ -54,9 +51,9 @@
are routed to a LogTarget. The LogTarget decides what to do with the LogEvent,
usually it is recorded to a file, a database or transmitted over the network.
</p>
- </s1>
+ </section>
- <s1 title="Priorities">
+ <section name="Priorities">
<p>
One of the advantages of a logging toolkit is fine grain control over which
statements get printed. At some times during development you may wish to enable
@@ -123,7 +120,7 @@
"is<em>Priority</em>Enabled()". An example use case is displayed below.
</p>
-<source><![CDATA[
+<source xml:space="preserve">
if( logger.isDebugEnabled() )
{
//Construct a message (expensive operation)
@@ -131,11 +128,11 @@
"\tVar3 value: " + var3 + ".";
logger.debug( message );
}
-]]></source>
+</source>
- </s1>
+ </section>
- <s1 title="Categories">
+ <section name="Categories">
<p>
In a complex system it is often not enough to suppress logging based on priority.
@@ -176,9 +173,9 @@
loggers.
</p>
- </s1>
+ </section>
- <s1 title="Log Targets">
+ <section name="Log Targets">
<p>
In LogKit, LogTargets are the destination of LogEvents. Decoupling LogEvent
@@ -194,7 +191,7 @@
runtime performance penalty.
</p>
- <s2 title="Filters">
+ <subsection name="Filters">
<p>
Filters are a special kind of LogTarget. Instead of writing to an output
@@ -212,9 +209,9 @@
for pager log target.
</p>
- </s2>
+ </subsection>
- <s2 title="AsyncLogTarget">
+ <subsection name="AsyncLogTarget">
<p>
AsyncLogTarget is another kind of special LogTarget. It takes a log event
@@ -228,7 +225,7 @@
in another thread.
</p>
-<source><![CDATA[
+<source xml:space="preserve">
LogTarget mySlowTarget = ...;
AsyncLogTarget asyncTarget = new AsyncLogTarget( mySlowTarget );
Thread thread = new Thread( asyncTarget );
@@ -236,12 +233,12 @@
thread.start();
logger.setLogTargets( new LogTarget[] { asyncTarget } );
-]]></source>
- </s2>
+</source>
+ </subsection>
- </s1>
+ </section>
- <s1 title="Formatters">
+ <section name="Formatters">
<p>
LogTargets that write to a serial or unstructured store (ie filesystem or
@@ -275,7 +272,7 @@
and actual output.
</p>
-<source><![CDATA[
+<source xml:space="preserve">
format: "%7.7{priority} %5.5{rtime} [%8.8{category}]: %{message}\n%{throwable}"
output: DEBUG 123 [network.]: This is a debug message
@@ -286,7 +283,7 @@
format: "%7.7{priority} %5.5{rtime} [%10.{category}]: %{message}\n"
output: DEBUG 123 [network.interceptor.connected]: This is a debug message
output: DEBUG 123 [network ]: This is another debug message
-]]></source>
+</source>
<p>
There is also ExtendedPatternFormatter that allows two extra fields, namely
@@ -295,9 +292,9 @@
the name of the current thread.
</p>
- </s1>
+ </section>
- <s1 title="Context">
+ <section name="Context">
<p>
In many systems you need to include extra information depending in logs that depends
@@ -324,7 +321,7 @@
illustrated below.
</p>
-<source><![CDATA[
+<source xml:space="preserve">
format: "%7.7{priority} [%{context:hostname}]: %{message}\n"
output: DEBUG [helm.realityforge.org]: This is a debug message
@@ -335,7 +332,7 @@
format: "%7.7{priority} [%{context:user}]: %{message}\n"
output: DEBUG [Barney Rubble]: This is a debug message
-]]></source>
+</source>
<p>
<em>Warning:</em> Older versions of LogKit also incorporated a ContextStack
@@ -365,7 +362,7 @@
Below is an example of how a user can create and bind a ContextMap.
</p>
-<source><![CDATA[
+<source xml:space="preserve">
final ContextMap context = new ContextMap();
context.set( "user", "Fred Flinstone" );
context.set( "interface", myInterface );
@@ -375,11 +372,11 @@
//bind new ContextMap to current thread and subthreads
ContextMap.bind( context );
-]]></source>
+</source>
- </s1>
+ </section>
- <s1 title="Examples">
+ <section name="Examples">
<p>
One of the best ways to learn how to use a toolkit is to see an
@@ -388,13 +385,13 @@
The servlet example demonstrates the usage of filters.
</p>
-<source><![CDATA[
+<source xml:space="preserve">
Logger logger = Hierarchy.getDefaultHierarchy().getLoggerFor("myCategory");
logger.setPriority( Priority.DEBUG );
logger.debug( "This is a debug message" );
-]]></source>
+</source>
-<source><![CDATA[
+<source xml:space="preserve">
//Create a Log filter that writes to servlet Containers log
//If priority greater than ERROR
PriorityFilter filter = new PriorityFilter(Priority.ERROR);
@@ -427,11 +424,11 @@
//Set log targets parameter based on init parameters
Priority priority = Priority.getPriorityForName( logLevel );
myLogger.setPriority( priority );
-]]></source>
+</source>
- </s1>
+ </section>
- <s1 title="Conclusion">
+ <section name="Conclusion">
<p>
LogKit is a friendly, easy to use logging toolkit. It is high performing and
@@ -441,13 +438,8 @@
limiting client access to hierarchies.
</p>
- </s1>
+ </section>
</body>
- <footer>
- <legal>
- Copyright (c) @year@ The Jakarta Apache Project All rights reserved.
- $Revision$ $Date$
- </legal>
- </footer>
-</document>
+
+</document>
\ No newline at end of file
1.1 jakarta-avalon-logkit/src/xdocs/css/ns4_only.css
Index: ns4_only.css
===================================================================
/* simple rules suitable for Netscape 4.x only; richer rules are in tigris.css. see <http://style.tigris.org/> */
/* colors, backgrounds, borders, link indication */
body {
background: #fff;
color: #000;
}
#leftcol a:link, #leftcol a:visited {
color: blue;
}
a:active, a:hover, #leftcol a:active, #leftcol a:hover {
color: #f30;
}
#login a:link, #login a:visited {
color: white;
text-decoration: underline;
}
#banner a:active, #banner a:hover {
color: #f90;
}
#leftcol a, #breadcrumbs a {
text-decoration: none;
}
h2 .lastchild {
color: #777
}
.a td {
background: #ddd;
}
.b td {
background: #efefef;
}
.tabs td, .tabs th {
background-color: #ddd;
}
body .app th {
background-color: #bbb;
}
body .tabs th {
background-color: #888;
color: #fff;
}
body .app .axial th {
background-color: #ddd;
color: black
}
.tabs td {
background-color: #ddd;
}
.alert {
color: #c00;
}
.confirm {
color: green;
}
.info {
color: blue;
}
.selection {
background: #ffc;
}
#login {
color: #fff;
}
#helptext th {
background: #cc9;
}
#helptext td {
background: #ffc;
}
.tabs a {
text-decoration: none;
}
#navcolumn div strong {
color: #555;
}
#banner, #banner td {
background: #036;
color: #fff;
}
body #banner #login a {
color: white;
}
/* font and text properties, exclusive of link indication, alignment, text-indent */
body, div, p, th, td, li, dl, dd {
font-family: Lucida, Arial, Helvetica, sans-serif;
}
code, pre {
font-family: 'Andale Mono', Courier, monospace;
}
h2, h3, h4 {
font-family: Tahoma, Verdana, Helvetica, Arial, sans-serif;
}
.selection {
font-weight: bold
}
#login .username {
font-weight: bold;
}
/* box properties (exclusive of borders), positioning, alignments, list types, text-indent */
th, td {
text-align: left;
vertical-align: top
}
.right {
text-align: right;
}
.center {
text-align: center;
}
body .app .axial th {
text-align: right;
}
.app .axial td th {
text-align: left;
}
body td .stb {
margin-top: 1em;
text-indent: 0;
}
body td .mtb {
margin-top: 2em;
text-indent: 0;
}
dd {
margin-bottom: .67em;
}
#footer {
margin: 4px
}
#helptext {
margin-top: 1em
}
#helptext td div {
margin: .5em
}
.courtesylinks {
margin-top: 1em;
padding-top: 1em
}
#navcolumn div {
margin-bottom: .5em;
}
#navcolumn div div {
margin-top: .3em
}
#navcolumn div div {
padding-left: 1em;
}
#banner, #banner td {
vertical-align: middle;
}
body.docs, body.nonav {
margin: 1em
}
1.1 jakarta-avalon-logkit/src/xdocs/css/print.css
Index: print.css
===================================================================
#banner, #footer, #leftcol, #breadcrumbs, .docs #toc, .docs .courtesylinks {
display: none;
}
body.docs div.docs {
margin: 0 !important;
border: none !important
}
1.1 jakarta-avalon-logkit/src/xdocs/css/site.css
Index: site.css
===================================================================
div#banner {
border-top: 1px solid #fff;
border-bottom: 1px solid #aaa;
}
#banner, #banner td {
background: #fff;
color: #036;
}
#source {
background-color: #fff;
color: #000;
border-right: 1px solid #888;
border-left: 1px solid #888;
border-top: 1px solid #888;
border-bottom: 1px solid #888;
margin-right: 7px;
margin-left: 7px;
margin-top: 1em;
}
#source pre {
margin-right: 7px;
margin-left: 7px;
}
1.1 jakarta-avalon-logkit/src/xdocs/css/tigris.css
Index: tigris.css
===================================================================
/* contains rules unsuitable for Netscape 4.x; simpler rules are in ns4_only.css. see <http://style.tigris.org/> */
/* colors, backgrounds, borders, link indication */
body {
background: #fff;
color: #000;
}
.app h3, .app h4, .tabs td, .tabs th, .functnbar {
background-image: url(../images/nw_min.gif);
background-repeat: no-repeat;
}
#navcolumn div div, body.docs #toc li li {
background-image: url(../images/strich.gif);
background-repeat: no-repeat;
background-position: .5em .5em;
}
#navcolumn div div.heading {
background-image: none;
}
.app h3, .app h4 {
color: #fff;
}
.app h3 {
background-color: #036;
}
.app h4 {
background-color: #888;
}
.a td {
background: #ddd;
}
.b td {
background: #efefef;
}
table, th, td {
border: none
}
.mtb {
border-top: solid 1px #ddd;
}
div.colbar {
background: #bbb;
}
#banner {
border-top: 1px solid #369;
border-bottom: 1px solid #003;
}
div#helptext th {
border-bottom: 1px solid #996;
border-right: 1px solid #996;
}
div#helptext td {
border-bottom: 1px solid #cc9;
border-right: 1px solid #cc9;
}
.tabs th {
border-right: 1px solid #333;
background-color: #ddd;
color: #fff;
}
.tabs td {
background-color: #999;
border-bottom: 1px solid #fff;
border-right: 1px solid #fff;
}
.tabs {
border-bottom: 6px #ddd solid;
}
.tabs th, .tabs th a:link, .tabs th a:visited {
color: #555;
}
.tabs td, .tabs td a:link, .tabs td a:visited {
color: #fff;
}
.tabs a {
text-decoration: none;
}
#navcolumn {
background: #eee;
border-right: 1px solid #aaa;
border-bottom: 1px solid #aaa;
}
#breadcrumbs {
border-bottom: 1px solid #aaa;
background-color: #ddd
}
#navcolumn, #breadcrumbs {
border-top: 1px solid #fff;
}
#rightcol div.www, #rightcol div.help {
border: 1px solid #ddd;
}
div#navcolumn div.focus {
border-top: 1px solid #aaa;
border-left: 1px solid #aaa;
background-color: #fff;
}
body.docs div.docs {
background: #fff;
border-left: 1px solid #ddd;
border-top: 1px solid #ddd;
}
body.docs {
background: #eee url(../images/help_logo.gif) top right no-repeat !important;
}
.docs h3, .docs h4 {
border-top: solid 1px #000;
}
#alerterrormessage {
background: url(../images/icon_alert.gif) top left no-repeat !important;
}
.functnbar {
background-color: #aaa;
}
.functnbar2, .functnbar3 {
background: #aaa url(../images/sw_min.gif) no-repeat bottom left;
}
.functnbar3 {
background-color: #ddd;
}
.functnbar, .functnbar2, .functnbar3 {
color: #000;
}
.functnbar a, .functnbar2 a, .functnbar3 a {
color: #000;
text-decoration: underline;
}
#topmodule {
background: #ddd;
border-top: 1px solid #fff;
border-bottom: 1px solid #aaa;
border-right: 1px solid #aaa;
}
#topmodule #issueid {
border-right: 1px solid #aaa;
}
a:link, #navcolumn a:visited, .app a:visited, .tasknav a:visited {
color: blue;
}
a:link.selfref, a:visited.selfref {
color: #555 !important;
text-decoration: none;
}
a:active, a:hover, #leftcol a:active, #leftcol a:hover {
color: #f30 !important;
}
#login a:link, #login a:visited {
color: white;
text-decoration: underline;
}
#banner a:active, #banner a:hover {
color: #f90 !important;
}
#leftcol a, #breadcrumbs a {
text-decoration: none;
}
#apphead h2 em {
color: #777;
}
a:link.selfref, a:visited.selfref {
color: #555 !important;
text-decoration: none;
}
.app th {
background-color: #bbb;
}
.axial th {
background-color: #ddd;
color: black
}
.alert {
color: #c00;
}
.confirm {
color: green;
}
.info {
color: blue;
}
.selection {
background: #ffc;
}
#login {
color: #fff;
}
#helptext th {
background: #cc9;
}
#helptext td {
background: #ffc;
}
#navcolumn div strong {
color: #000;
}
#banner, #banner td {
background: #036;
color: #fff;
}
body #banner #login a {
color: #fff;
}
h4 a:link, h4 a:visited {
text-decoration: underline;
color: #fff;
}
/* font and text properties, exclusive of link indication, alignment, text-indent */
body, th, td, input, select, textarea, h2 small {
font-family: Verdana, Helvetica, Arial, sans-serif;
}
code, pre {
font-family: 'Andale Mono', Courier, monospace;
}
html body, body th, body td, textarea, h2 small, .app h3, .app h4, #rightcol h3, #bodycol pre, #bodycol code {
font-size: x-small;
voice-family: "\"}\"";
voice-family: inherit;
font-size: small
}
html>body, html>body th, html>body td, html>body input, html>body select, html>body textarea, html>body h2 small, html>body .app h3, html>body .app h4, html>body #rightcol h3, html>body #bodycol pre, html>body #bodycol code {
font-size: small
}
small, div#footer td, div#login, div.tabs th, div.tabs td, input, select, .paginate, .functnbar, .functnbar2, .functnbar3, #breadcrumbs td, .courtesylinks, #rightcol div.help, .colbar, .tasknav, body.docs div#toc, #leftcol {
font-size: x-small;
voice-family: "\"}\"";
voice-family: inherit;
font-size: x-small
}
html>body small, html>body div#footer td, html>body div#login, html>body div.tabs th, html>body div.tabs td, html>body input, html>body select, html>body .paginate, html>body .functnbar, html>body .functnbar2, html>body .functnbar3, html>body #breadcrumbs td, html>body .courtesylinks, html>body #rightcol div.help, html>body .colbar, html>body .tasknav, html>body.docs #toc, html>body #leftcol {
font-size: x-small
}
#bodycol h2 {
font-family: Tahoma, Verdana, Helvetica, Arial, sans-serif;
font-size: 1.5em;
font-weight: normal;
}
.tabs td, .tabs th, dt, .tasknav .selfref, #login .username, .selection {
font-weight: bold
}
h4 {
font-size: 1em;
}
#apphead h2 em {
font-style: normal;
}
/* box properties (exclusive of borders), positioning, alignments, list types, text-indent */
#bodycol h2 {
margin-top: .3em;
margin-bottom: .5em;
}
p, ul, ol, dl {
margin-top: .67em;
margin-bottom: .67em;
}
h3, h4 {
margin-bottom: 0;
}
form {
margin-top: 0;
margin-bottom: 0;
}
#bodycol {
padding-left: 12px;
padding-right: 12px;
width: 100%;
voice-family: "\"}\"";
voice-family: inherit;
width: auto;
}
html>body #bodycol {
width: auto;
}
.docs {
line-height: 1.4;
}
.app h3, .app h4 {
padding: 5px;
margin-right: 2px;
margin-left: 2px;
}
.h3 p, .h4 p, .h3 dt, .h4 dt {
margin-right: 7px;
margin-left: 7px;
}
.tasknav {
margin-bottom: 1.33em
}
div.colbar {
padding: 3px;
margin: 2px 2px 0;
}
.tabs {
margin-top: .67em;
margin-right: 2px;
margin-left: 2px;
}
#leftcol {
padding-bottom: .5em;
}
#breadcrumbs td {
vertical-align: middle;
padding: 2px 8px;
}
.tabs td, .tabs th {
padding: 3px 9px;
}
#rightcol div.www, #rightcol div.help {
padding: 0 .5em
}
#navcolumn {
margin: -8px -8px 0 -8px;
padding: 4px;
}
#navcolumn div {
padding-left: 5px
}
div#navcolumn div div {
margin-top: .3em;
margin-bottom: .3em;
}
div#navcolumn div.focus {
margin-top: -.1em;
padding: .2em 4px;
}
body.docs #toc {
position: absolute;
top: 15px;
left: 0px;
width: 120px;
padding: 0 20px 0 0
}
body.docs #toc ul, #toc ol {
margin-left: 0;
padding-left: 0;
}
body.docs #toc li {
margin-top: 7px;
padding-left: 10px;
list-style-type: none;
}
body.docs div.docs {
margin: 61px 0 0 150px;
padding: 1em 2em 1em 1em !important;
}
.docs p+p {
text-indent: 5%;
margin-top: -.67em
}
.docs h3, .docs h4 {
margin-bottom: .1em;
padding-top: .3em;
}
#alerterrormessage {
padding-left: 100px;
}
.functnbar, .functnbar2, .functnbar3 {
padding: 5px;
margin: .67em 2px;
}
#topmodule td {
vertical-align: middle;
padding: 2px 8px
}
body {
padding: 1em;
}
body.composite, body.docs {
margin: 0;
padding: 0;
}
th, td {
text-align: left;
vertical-align: top
}
.right {
text-align: right !important;
}
.center {
text-align: center !important;
}
.axial th {
text-align: right;
}
.app .axial td th {
text-align: left;
}
body td .stb {
margin-top: 1em;
text-indent: 0;
}
body td .mtb {
margin-top: 2em;
text-indent: 0;
}
dd {
margin-bottom: .67em;
}
#footer {
margin: 4px
}
#helptext {
margin-top: 1em
}
#helptext td div {
margin: .5em
}
.courtesylinks {
margin-top: 1em;
padding-top: 1em
}
#navcolumn div {
margin-bottom: .5em;
}
#navcolumn div div {
margin-top: .3em
}
#navcolumn div div {
padding-left: 1em;
}
#banner, #banner td {
vertical-align: middle;
}
1.1 jakarta-avalon-logkit/src/xdocs/images/header.gif
<<Binary file>>
1.1 jakarta-avalon-logkit/src/xdocs/stylesheets/changes.vsl
Index: changes.vsl
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
#parse( "templates.vm" )
<!-- Content Stylesheet for Site -->
## Defined variables
#set ($bodybg = "#ffffff")
#set ($bodyfg = "#000000")
#set ($bodylink = "#525D76")
#set ($bannerbg = "#525D76")
#set ($bannerfg = "#ffffff")
#set ($subbannerbg = "#828DA6")
#set ($subbannerfg = "#ffffff")
#set ($tablethbg = "#039acc")
#set ($tabletdbg = "#a0ddf0")
#set ($pound = "#" )
<!-- start the processing -->
#changes()
<!-- end the processing -->
#macro (change $action)
<p>$action.getText() ($action.getAttributeValue("dev"))</p>
#end
#macro (changeset $release)
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="$subbannerbg">
<font color="$subbannerfg" face="arial,helvetica,sanserif">
<strong>
Revision $release.getAttributeValue("version") ($release.getAttributeValue("date"))
</strong>
</font>
</td></tr>
<tr><td>
<blockquote>
<ul>
#foreach ($action in $release.getChildren("action"))
<li>#change ($action)</li>
#end
</ul>
</blockquote>
</td></tr>
</table>
</a>
#end
#macro (changes)
#header
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="$bannerbg">
<font color="$bannerfg" face="arial,helvetica,sanserif">
<strong>ChangeLog</strong>
</font>
</td></tr>
<tr><td>
<blockquote>
#set ($releases = $root.getChildren("release"))
#foreach ( $release in $releases )
#changeset ($release)
#end
</blockquote>
</td></tr>
</table>
#footer
#end
1.1 jakarta-avalon-logkit/src/xdocs/stylesheets/docs.vsl
Index: docs.vsl
===================================================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
#parse ( "templates.vm" )
#macro(document)
#header()
#set($allSections = $root.getChild("body").getChildren("section"))
#foreach( $section in $allSections )
#section ($section)
#end
#footer()
#end
#macro ( subsection $subsection)
<div class="h4">
#if ( $subsection.getAttributeValue("anchor") )
#set ($anchor = $subsection.getAttributeValue("anchor"))
#else
#set ($anchor = $subsection.getAttributeValue("name"))
#end
<h4><a name="$anchor">$subsection.getAttributeValue("name")</a></h4>
#foreach ( $items in $subsection.getChildren() )
#copy($items)
#end
</div>
#end
#macro (section $section)
<div class="h3">
#if ( $section.getAttributeValue("anchor") )
#set ($anchor = $section.getAttributeValue("anchor"))
#else
#set ($anchor = $section.getAttributeValue("name"))
#end
<h3><a name="$anchor">$section.getAttributeValue("name")</a></h3>
#foreach ( $items in $section.getChildren() )
#if ($items.getName().equals("subsection"))
#subsection ($items)
#else
#copy($items)
#end
#end
</div>
#end
#parse ( "templates.vm" )
<!-- This is a generated file. Do not edit. -->
#document()
1.1 jakarta-avalon-logkit/src/xdocs/stylesheets/project.xml
Index: project.xml
===================================================================
<?xml version="1.0" encoding="UTF-8"?>
<project href="http://jakarta.apache.org/avalon/logkit"
name="LogKit">
<title>LogKit</title>
<logo href="images/header.gif">LogKit</logo>
<body>
<menu name="About">
<item name="Overview" href="/index.html"/>
<item name="Features" href="/features.html"/>
<item name="Download" href="http://jakarta.apache.org/builds/jakarta-avalon/release/logkit/latest"/>
<item name="Whitepaper" href="/whitepaper.html"/>
<item name="Changes" href="/changes.html"/>
<item name="API Docs" href="http://jakarta.apache.org/avalon/logkit/api/index.html"/>
</menu>
</body>
</project>
1.1 jakarta-avalon-logkit/src/xdocs/stylesheets/templates.vm
Index: templates.vm
===================================================================
#macro (header)
<html>
<head>
<style type="text/css">
@import url("$relativePath/css/tigris.css");
@import url("$relativePath/css/site.css");
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
#set ($authors = $root.getChild("properties").getChildren("author"))
#foreach ( $au in $authors )
#metaauthor ( $au.getText() $au.getAttributeValue("email") )
#end
<title>$project.getChild("title").getText() - $root.getChild("properties").getChild("title").getText()</title>
</head>
<body marginwidth="0" marginheight="0" class="composite">
<div id="banner">
<table border="0" cellspacing="0" cellpadding="8" width="100%">
<!-- TOP IMAGE -->
<tr>
<td>#getProjectImage()</td>
<td><div align="right" valign="bottom"><b><font size="+3">$project.getChild("title").getText()</font></b></div></td>
</tr>
</table>
</div>
<table border="0" cellspacing="0" cellpadding="8" width="100%" id="main">
<tr valign="top">
<!-- LEFT SIDE NAVIGATION -->
<td id="leftcol" width="20%">
<div id="navcolumn">
#makeProject()
</div>
</td>
<td><div id="bodycol"><div class="app">
#end
#macro (footer)
</div>
#getAuthorList()
</div></td>
</tr>
</table>
<!-- FOOTER -->
<div id="footer">
<table border="0" cellspacing="0" cellpadding="4">
<tr>
<td>Copyright © 1999-2002, Apache Software Foundation</td>
</tr>
</table>
</div>
</body>
</html>
#end
#macro ( subsection $subsection)
<div class="h4">
#if ( $subsection.getAttributeValue("anchor") )
#set ($anchor = $subsection.getAttributeValue("anchor"))
#else
#set ($anchor = $subsection.getAttributeValue("name"))
#end
<h4><a name="$anchor">$subsection.getAttributeValue("name")</a></h4>
#foreach ( $items in $subsection.getChildren() )
#copy($items)
#end
</div>
#end
#macro (section $section)
<div class="h3">
#if ( $section.getAttributeValue("anchor") )
#set ($anchor = $section.getAttributeValue("anchor"))
#else
#set ($anchor = $section.getAttributeValue("name"))
#end
<h3><a name="$anchor">$section.getAttributeValue("name")</a></h3>
#foreach ( $items in $section.getChildren() )
#if ($items.getName().equals("subsection"))
#subsection ($items)
#else
#copy($items)
#end
#end
</div>
#end
#macro ( table $table)
#set ($rowcount = 1)
<table cellpadding="3" cellspacing="2" border="1" width="100%">
#foreach ( $items in $table.getChildren() )
#if ($items.getName().equals("tr"))
#tr ($items)
#end
#end
</table>
#end
#macro ( tr $tr)
#printRow ($rowcount)
#set ($rowcount = $rowcount + 1)
#foreach ( $items in $tr.getChildren() )
#if ($items.getName().equals("td"))
#td ($items)
#elseif ($items.getName().equals("th"))
#th ($items)
#end
#end
</tr>
#end
#macro (printRow $count)
#if ($count % 2 > 0)
<tr class="a">
#else
<tr class="b">
#end
#end
#macro ( td $value)
<td
#if ($value.getAttributeValue("colspan"))
#set ($colspan = $value.getAttributeValue("colspan"))
colspan="$!colspan"
#end
#if ($value.getAttributeValue("rowspan"))
#set ($rowspan = $value.getAttributeValue("rowspan"))
rowspan="$!rowspan"
#end
>
#if ($value.getText().length() != 0 || $value.hasChildren())
#copycontent($value)
#else
#end
</td>
#end
#macro ( th $value)
<th
#if ($value.getAttributeValue("colspan"))
#set ($colspan = $value.getAttributeValue("colspan"))
colspan="$!colspan"
#end
#if ($value.getAttributeValue("rowspan"))
#set ($rowspan = $value.getAttributeValue("rowspan"))
rowspan="$!rowspan"
#end
>
#if ($value.getText().length() != 0 || $value.hasChildren())
#copycontent($value)
#else
#end
</th>
#end
#macro ( anchor $name $value )
#if ($value.startsWith("http://"))
<a href="$value">$name</a>
#elseif ($value.startsWith("/site"))
<a href="http://jakarta.apache.org$value">$name</a>
#elseif ( $value.startsWith("/") )
<a href="$relativePath$value">$name</a>
#else
<a href="$value">$name</a>
#end
#end
#macro ( metaauthor $author $email )
<meta name="author" value="$author">
<meta name="email" value="$email">
#end
#macro ( image $value )
#if ($value.getAttributeValue("width"))
#set ($width=$value.getAttributeValue("width"))
#end
#if ($value.getAttributeValue("height"))
#set ($height=$value.getAttributeValue("height"))
#end
#if ($value.getAttributeValue("align"))
#set ($align=$value.getAttributeValue("align"))
#end
<img src="$relativePath$value.getAttributeValue("src")">
#end
#macro ( source $value)
<div id="source">
<pre>$escape.getText( $value.text.trim() )</pre>
</div>
#end
#macro ( makeProject )
#set ($menus = $project.getChild("body").getChildren("menu"))
#foreach ( $menu in $menus )
<div>
<strong>$menu.getAttributeValue("name")</strong>
#foreach ( $item in $menu.getChildren() )
#set ($name = $item.getAttributeValue("name"))
<div><small>#anchor($name $item.getAttributeValue("href"))</small></div>
#end
</div>
#end
#end
#macro (getProjectImage)
#if ($project.getChild("logo"))
<td align="left">
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" border="0"/></a>
</td>
<td align="right">
#set ( $logoString = $project.getChild("logo").getAttributeValue("href") )
#if ( $logoString.startsWith("/") )
<a href="$project.getAttributeValue("href")"><img src="$relativePath$logoString" alt="$project.getChild("logo").getText()" border="0"/></a>
#else
<a href="$project.getAttributeValue("href")"><img src="$relativePath/$logoString" alt="$project.getChild("logo").getText()" border="0"/></a>
#end
</td>
#else
<td colspan="2">
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" align="left" border="0"/></a>
</td>
#end
#end
#macro (copy $element)
#if ( $element.name == "a" )
#anchor ( $element.content $element.getAttributeValue( "href" ) )
#elseif ( $element.name == "img" )
#image ($element)
#elseif ( $element.name == "source" )
#source ($element)
#elseif ( $element.name == "table" )
#table ($element)
#elseif ( $element.name == "pre" )
<pre>$element.content</pre>
#elseif ( $element.name == "escaped" )
$element.text
#else
<$element.name
#foreach ( $attr in $element.attributes )
$attr.name="$attr.value"
#end
>#copycontent($element)</$element.name>
#end
#end
#macro (getAuthorList)
<div align="right" id="authors">
#set ($authors = $root.getChild("properties").getChildren("author"))
#foreach ( $au in $authors )
#if( $velocityCount == 1 )by #end
#if( $velocityCount != 1 ),#end <a href="$au.getAttributeValue("email")">$au.getText()</a>
#end
</div>
#end
#macro (copycontent $element)
#if ( $element.children.size() > 0 )
#foreach ( $child in $element.content )
#if ( $child.class.name.endsWith( "Element" ) )
#copy( $child )
#else
$escape.getText( $child.getText() )
#end
#end
#else
$element.content
#end
#end
1.1 jakarta-avalon-logkit/src/xdocs/stylesheets/velocity.properties
Index: velocity.properties
===================================================================
file.resource.loader.path=src/xdocs/stylesheets
# disable this for now velocimacro.library=templates.vm
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>