chukwa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ey...@apache.org
Subject svn commit: r766749 [1/3] - in /hadoop/chukwa: branches/chukwa-0.1/ branches/chukwa-0.1/ivy/ branches/chukwa-0.1/src/docs/ branches/chukwa-0.1/src/docs/changes/ trunk/ trunk/ivy/ trunk/src/docs/ trunk/src/docs/changes/
Date Mon, 20 Apr 2009 16:49:29 GMT
Author: eyang
Date: Mon Apr 20 16:49:28 2009
New Revision: 766749

URL: http://svn.apache.org/viewvc?rev=766749&view=rev
Log:
CHUKWA-157. Added javadoc target, api-xml, api-report, and change log 2 html. (Eric Yang)

Added:
    hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/
    hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesFancyStyle.css
    hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesSimpleStyle.css
    hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/changes2html.pl   (with props)
    hadoop/chukwa/branches/chukwa-0.1/src/docs/overview.html
    hadoop/chukwa/branches/chukwa-0.1/src/docs/releasenotes.html
    hadoop/chukwa/trunk/src/docs/changes/
    hadoop/chukwa/trunk/src/docs/changes/ChangesFancyStyle.css
    hadoop/chukwa/trunk/src/docs/changes/ChangesSimpleStyle.css
    hadoop/chukwa/trunk/src/docs/changes/changes2html.pl
    hadoop/chukwa/trunk/src/docs/overview.html
    hadoop/chukwa/trunk/src/docs/releasenotes.html
Modified:
    hadoop/chukwa/branches/chukwa-0.1/CHANGES.txt
    hadoop/chukwa/branches/chukwa-0.1/build.xml
    hadoop/chukwa/branches/chukwa-0.1/ivy.xml
    hadoop/chukwa/branches/chukwa-0.1/ivy/libraries.properties
    hadoop/chukwa/trunk/CHANGES.txt
    hadoop/chukwa/trunk/build.xml
    hadoop/chukwa/trunk/ivy.xml
    hadoop/chukwa/trunk/ivy/libraries.properties

Modified: hadoop/chukwa/branches/chukwa-0.1/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/chukwa/branches/chukwa-0.1/CHANGES.txt?rev=766749&r1=766748&r2=766749&view=diff
==============================================================================
--- hadoop/chukwa/branches/chukwa-0.1/CHANGES.txt (original)
+++ hadoop/chukwa/branches/chukwa-0.1/CHANGES.txt Mon Apr 20 16:49:28 2009
@@ -1,17 +1,21 @@
-Trunk (unreleased changes)
+Chukwa Change Log
 
-  INCOMPATIBLE CHANGES
+Trunk (unrelease changes)
+
+Release 0.1.2 - 2009-04-24
 
   NEW FEATURES
 
-    CHUKWA-78.  Added down sample SQL aggregation for job data, task data and utilization data. (Eric Yang)
+    CHUKWA-100. Added ability to run aggregation by command line utility. (Eric Yang)
+
+    CHUKWA-78. Added down sample SQL aggregation for job data, task data and utilization data. (Eric Yang)
 
     CHUKWA-17. Collect PS output every 10 minutes and parse into key/value pairs sequence file. (Cheng Zhang via Eric Yang)
 
     CHUKWA-55. Aggregate data from HDFS bytes usage, and Mapreduce Job slot time to compute user usage of the cluster. (Eric Yang)
 
-    CHUKWA-50.  Added parser for extract Job History and Job Conf into key value pairs, 
-                and database loader dictionary file. (Contribute by Cheng Zhang via Eric Yang)
+    CHUKWA-50. Added parser for extract Job History and Job Conf into key value pairs, 
+    and database loader dictionary file. (Contribute by Cheng Zhang via Eric Yang)
 
     CHUKWA-69.  Calculate trapezoid area for a given series of data.  (Contribute by Cheng Zhang via Eric Yang)
 
@@ -23,10 +27,10 @@
 
     CHUKWA-45.  Added docs to folder structure. (Corinne Chandel via asrabkin)
 
-    CHUKWA-13.  * Create a new Macro class for macro substitution. (Eric Yang)
-                * Changed Aggregator to use Macro class.
-                * Added macro substitution support to Chukwa Charting.
-                * Added Macro test case.
+    CHUKWA-13.  Create a new Macro class for macro substitution.
+                Changed Aggregator to use Macro class.
+                Added macro substitution support to Chukwa Charting.
+                Added Macro test case. (Eric Yang)
 
     HADOOP-4989. Added capability to add scatter chart. (Eric Yang)
 
@@ -38,21 +42,21 @@
 
     CHUKWA-140. Updated Chukwa Docs tab for 0.1.2. (Corinne Chandel via Eric Yang)
 
-    CHUKWA-112.  Updated README file.  (Corinne Chandel via Eric Yang)
+    CHUKWA-112. Updated README file.  (Corinne Chandel via Eric Yang)
 
     CHUKWA-134. Add release audit target. (Giridharan Kesavan via Eric Yang)
 
-    CHUKWA-80.  Extracted rpm spec file from build.xml file.  Fix start up script, and config script. (Eric Yang)
+    CHUKWA-80. Extracted rpm spec file from build.xml file.  Fix start up script, and config script. (Eric Yang)
 
-    CHUKWA-26.  * DemuxManager, ArchiveManager and PostProcessorManager are now a single daemon process each.
-                * Each one working independently from others, as soon as something is available.
-                * Start-data-processor is now using those new daemons instead of pocessSink.sh
-                * Daily will process a daily compaction only when all hourly would have been done.
-                * Demux is now able to send NSCA commands to Nagios. (Jerome Boulon via Eric Yang)
+    CHUKWA-26. DemuxManager, ArchiveManager and PostProcessorManager are now a single daemon process each.
+               Each one working independently from others, as soon as something is available.
+               Start-data-processor is now using those new daemons instead of pocessSink.sh
+               Daily will process a daily compaction only when all hourly would have been done.
+               Demux is now able to send NSCA commands to Nagios. (Jerome Boulon via Eric Yang)
 
-    CHUKWA-81.  Fix file descriptor leak.  (asrabkin)
+    CHUKWA-81. Fix file descriptor leak.  (asrabkin)
 
-    CHUKWA-29.  Added TaskTracker and DataNode client trace log parser and database loader.  (Chris Douglas via Eric Yang)
+    CHUKWA-29. Added TaskTracker and DataNode client trace log parser and database loader.  (Chris Douglas via Eric Yang)
 
     CHUKWA-86. Improved JDBC compatibility layer (Cheng Zhang via Eric Yang)
 
@@ -60,7 +64,7 @@
 
     CHUKWA-59. Collect HDFS Usage information for users. (Contribute by Cheng Zhang via Eric Yang)
 
-    CHUKWA-54. Filters web based input from HICC to prevent cross site scripting attack.
+    CHUKWA-54. Filters web based input from HICC to prevent cross site scripting attack. (Eric Yang)
 
     CHUKWA-31. Added duration logging for SQL statements. (Eric Yang)
  
@@ -70,9 +74,9 @@
 
     HADOOP-5228. Chukwa tests shouldn't write to /tmp. (asrabkin)
 
-    HADOOP-5035. * Improved Y axis ticker labelling. (Eric Yang) 
-                 * Used TreeMap to build non-time series data for charting. 
-                 * Improved handling of "not a number "values.
+    HADOOP-5035. Improved Y axis ticker labelling.
+                 Used TreeMap to build non-time series data for charting. 
+                 Improved handling of "not a number "values. (Eric Yang)
 
     HADOOP-5030. Changed RPM install location to the value specified by build.properties file. (Eric Yang)
 
@@ -80,15 +84,19 @@
 
     HADOOP-4843. Enable job history log file streaming into Chukwa by using JobTrackerInstrumentation API. (Eric Yang)
 
-    HADOOP-4827. * Replace Consolidator with Aggregator macros 
-                 * Updated database table schema 
-                 * Fix interval for aggregation execute 
-                 * Improved SQL macros support, add group_avg() and past_*_minutes key word (Eric Yang)
+    HADOOP-4827. Replace Consolidator with Aggregator macros 
+                 Updated database table schema 
+                 Fix interval for aggregation execute 
+                 Improved SQL macros support, add group_avg() and past_*_minutes key word (Eric Yang)
 
   OPTIMIZATIONS
 
   BUG FIXES
 
+    CHUKWA-156. Test Macro testcase changed to use timestamp check for the generated macros. (Eric Yang)
+
+    CHUKWA-154.  Handle adaptor exception, close file pointers on failure condition.  (Jerome Boulon via Eric Yang)
+
     CHUKWA-139. Rewrite collector bail out code.  (Cheng Zhang via Eric Yang)
 
     CHUKWA-119.  Removed dependency of ChukwaAgent from ChunkImpl for preventing multiple 
@@ -200,7 +208,7 @@
     HADOOP-4791. Add build configuration parameter to specify where Chukwa will be installed for RPM packaging. (Eric Yang)
 
 
-Release 0.19.0 - Unreleased
+Release 0.1.1 - Unreleased
 
   IMPROVEMENTS
 
@@ -214,7 +222,6 @@
 
     HADOOP-5033.  Simplified ChukwaWriter API.  (asrabkin)
 
-
   NEW FEATURES
 
     HADOOP-3719. Initial checkin of Chukwa, which is a data collection and 

Modified: hadoop/chukwa/branches/chukwa-0.1/build.xml
URL: http://svn.apache.org/viewvc/hadoop/chukwa/branches/chukwa-0.1/build.xml?rev=766749&r1=766748&r2=766749&view=diff
==============================================================================
--- hadoop/chukwa/branches/chukwa-0.1/build.xml (original)
+++ hadoop/chukwa/branches/chukwa-0.1/build.xml Mon Apr 20 16:49:28 2009
@@ -17,279 +17,360 @@
    limitations under the License.
 -->
 
-<project name="chukwa" default="main" 
-	xmlns:ivy="antlib:org.apache.ivy.ant">
+<project name="chukwa" default="main" xmlns:ivy="antlib:org.apache.ivy.ant">
 
-	<property name="name" value="chukwa"/>
-        <property name="chukwaVersion" value="0.1.2"/>
-        <property name="chukwaRelease" value="alpha"/>
-	<property name="final.name" value="${name}-${chukwaVersion}"/>
-
-        <import file="../build-contrib.xml" optional="true"/>
-        <available file="../build-contrib.xml" property="present"/>
-
-        <property file="build.properties"/>
-        <property file="default.properties"/>
-
-        <condition property="standaloneMode">
-                <and><not><available file="../build-contrib.xml" property="present"/></not></and>
-        </condition>
-
-        <condition property="hadoopMode">
-                <and><available file="../build-contrib.xml" property="present"/></and>
-        </condition>
-
-        <target name="init-standalone" depends="ivy-retrieve" if="standaloneMode">
-          <echo>Standalone Mode</echo>
-          <property environment="env"/>
-	  <property name="basedir" value="."/>
-          <!--SET UP HADOOP JARS-->
-          <property name="hadoop.home.dir" value="${env.HADOOP_HOME}"/>
-          <echo message="HADOOP_HOME set to: ${hadoop.home.dir}"/>
-          <property name="hadoop.default.jars.dir" value="${basedir}/hadoopjars"/>
-
-          <condition property="hadoop.home.jars.dir" value="${hadoop.home.dir}/build" else="${basedir}/hadoopjars">
-                <available file="${hadoop.home.dir}/build"/>
-          </condition>
-          <echo message="hadoop.home.jars.dir set to ${hadoop.home.jars.dir}"/>
-
-          <property name="build.dir" value="${basedir}/build"/>
-          <property name="build.classes" value="${basedir}/build/classes"/>
-          <property name="test.build.dir" value="${build.dir}/test"/>
-          <property name="test.build.classes" value="${test.build.dir}/classes"/>
-          <property name="lib.dir" value="${basedir}/lib"/>
-          <path id="classpath">
-                  <fileset dir="${lib.dir}">
-                          <include name="**/*.jar" />
-                          <exclude name="**/excluded/" />
-                  </fileset>
-                  <fileset dir="${hadoop.default.jars.dir}">   <!-- ASR -->
-                          <include name="**/*.jar" />
-                          <exclude name="**/*core*.jar" />
-                  </fileset>
-                  <fileset dir="${hadoop.home.jars.dir}">   <!-- ASR -->
-                          <include name="**/hadoop-0.2*-core.jar" />
-                  </fileset>
-                  <fileset dir="${common.ivy.lib.dir}">
-                          <include name="**/*.jar" />
-                  </fileset>
-                  <path refid="contrib-classpath"/>
-          </path>
-	  <path id="dp-classpath">
-                  <fileset dir="${lib.dir}">
-                          <include name="**/*.jar" />
-                          <exclude name="**/excluded/" />
-                  </fileset>
-		  <pathelement location="${build.classes}"/>
-                  <fileset dir="${hadoop.default.jars.dir}">   <!-- ASR -->
-                          <include name="**/*.jar" />
-                          <exclude name="**/*core*.jar" />
-                  </fileset>
-                  <fileset dir="${hadoop.default.jars.dir}">   <!-- ASR -->
-                          <include name="**/hadoop-0.18.0-core.jar" />
-                  </fileset>
-                  <fileset dir="${common.ivy.lib.dir}">
-                          <include name="**/*.jar" />
-                  </fileset>
-		  <pathelement location="${conf.dir}"/>
-	  </path>
-          <path id="testClasspath">
-                  <pathelement location="${build.classes}"/>
-                  <pathelement location="${test.build.classes}"/>
-                  <fileset dir="${lib.dir}">
-                          <include name="**/*.jar" />
-                          <exclude name="**/excluded/" />
-                  </fileset>
-                  <fileset dir="${hadoop.default.jars.dir}">   <!-- ASR -->
-                          <include name="**/*.jar" />
-                          <exclude name="**/*core*.jar" />
-                  </fileset>
-                  <fileset dir="${hadoop.home.jars.dir}">   <!-- ASR -->
-                          <include name="**/hadoop-0.20*.jar" />
-                  </fileset>
-                  <path refid="contrib-classpath"/>
-          </path>
-          <path id="testDemuxClasspath">
-                  <pathelement location="${build.classes}"/>
-                  <pathelement location="${test.build.classes}"/>
-                  <fileset dir="${hadoop.default.jars.dir}">   <!-- ASR -->
-                          <include name="**/*.jar" />
-                          <exclude name="**/hadoop-0.2*-core.jar" />
-                  </fileset>
-                  <fileset dir="${hadoop.home.jars.dir}">   <!-- ASR -->
-                          <include name="**/*core*.jar" />
-                  </fileset>
-                  <fileset dir="${lib.dir}">
-                          <include name="**/*.jar" />
-                          <exclude name="**/excluded/" />
-                  </fileset>
-                  <path refid="contrib-classpath"/>
-          </path>
-        </target>
+	<property name="name" value="chukwa" />
+	<property name="chukwaVersion" value="0.1.2" />
+	<property name="chukwaRelease" value="alpha" />
+	<property name="final.name" value="${name}-${chukwaVersion}" />
+
+	<import file="../build-contrib.xml" optional="true" />
+	<available file="../build-contrib.xml" property="present" />
+
+	<property file="build.properties" />
+	<property file="default.properties" />
+
+	<condition property="standaloneMode">
+		<and>
+			<not>
+				<available file="../build-contrib.xml" property="present" />
+			</not>
+		</and>
+	</condition>
+
+	<condition property="hadoopMode">
+		<and>
+			<available file="../build-contrib.xml" property="present" />
+		</and>
+	</condition>
+
+	<target name="init-standalone" depends="ivy-retrieve" if="standaloneMode">
+		<echo>Standalone Mode</echo>
+		<property environment="env" />
+		<property name="basedir" value="." />
+		<!--SET UP HADOOP JARS-->
+		<property name="hadoop.home.dir" value="${env.HADOOP_HOME}" />
+		<echo message="HADOOP_HOME set to: ${hadoop.home.dir}" />
+		<property name="hadoop.default.jars.dir" value="${basedir}/hadoopjars" />
+
+		<condition property="hadoop.home.jars.dir" value="${hadoop.home.dir}/build" else="${basedir}/hadoopjars">
+			<available file="${hadoop.home.dir}/build" />
+		</condition>
+		<echo message="hadoop.home.jars.dir set to ${hadoop.home.jars.dir}" />
+
+		<property name="build.dir" value="${basedir}/build" />
+		<property name="build.classes" value="${basedir}/build/classes" />
+		<property name="build.docs" value="${build.dir}/docs" />
+		<property name="build.javadoc" value="${build.docs}/api" />
+		<property name="build.javadoc.timestamp" value="${build.javadoc}/index.html" />
+		<property name="build.javadoc.dev" value="${build.docs}/dev-api" />
+
+		<property name="test.build.dir" value="${build.dir}/test" />
+		<property name="test.build.classes" value="${test.build.dir}/classes" />
+		<property name="lib.dir" value="${basedir}/lib" />
+		<path id="classpath">
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<fileset dir="${hadoop.default.jars.dir}">
+				<!-- ASR -->
+				<include name="**/*.jar" />
+				<exclude name="**/*core*.jar" />
+			</fileset>
+			<fileset dir="${hadoop.home.jars.dir}">
+				<!-- ASR -->
+				<include name="**/hadoop-0.2*-core.jar" />
+			</fileset>
+			<fileset dir="${common.ivy.lib.dir}">
+				<include name="**/*.jar" />
+			</fileset>
+			<path refid="contrib-classpath" />
+		</path>
+		<path id="dp-classpath">
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<pathelement location="${build.classes}" />
+			<fileset dir="${hadoop.default.jars.dir}">
+				<!-- ASR -->
+				<include name="**/*.jar" />
+				<exclude name="**/*core*.jar" />
+			</fileset>
+			<fileset dir="${hadoop.default.jars.dir}">
+				<!-- ASR -->
+				<include name="**/hadoop-0.18.0-core.jar" />
+			</fileset>
+			<fileset dir="${common.ivy.lib.dir}">
+				<include name="**/*.jar" />
+			</fileset>
+			<pathelement location="${conf.dir}" />
+		</path>
+		<path id="testClasspath">
+			<pathelement location="${build.classes}" />
+			<pathelement location="${test.build.classes}" />
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<fileset dir="${hadoop.default.jars.dir}">
+				<!-- ASR -->
+				<include name="**/*.jar" />
+				<exclude name="**/*core*.jar" />
+			</fileset>
+			<fileset dir="${hadoop.home.jars.dir}">
+				<!-- ASR -->
+				<include name="**/hadoop-0.20*.jar" />
+			</fileset>
+			<path refid="contrib-classpath" />
+		</path>
+		<path id="testDemuxClasspath">
+			<pathelement location="${build.classes}" />
+			<pathelement location="${test.build.classes}" />
+			<fileset dir="${hadoop.default.jars.dir}">
+				<!-- ASR -->
+				<include name="**/*.jar" />
+				<exclude name="**/hadoop-0.2*-core.jar" />
+			</fileset>
+			<fileset dir="${hadoop.home.jars.dir}">
+				<!-- ASR -->
+				<include name="**/*core*.jar" />
+			</fileset>
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<path refid="contrib-classpath" />
+		</path>
+	</target>
 
 	<target name="ivy-init-properties-local" description="to initiate ivy properties">
 		<property name="ivy.dir" location="ivy" />
-	  	<property name="ivysettings.xml" location="${ivy.dir}/ivysettings.xml"/>
-	  	<loadproperties srcfile="${ivy.dir}/libraries.properties"/>
-	  	<loadproperties srcfile="${ivy.dir}/libraries.properties"/>
-	  	<property name="ivy.jar" location="${ivy.dir}/ivy-${ivy.version}.jar"/>
-                <property name="ivy_repo_url" 
-			  value="http://repo2.maven.org/maven2/org/apache/ivy/ivy/${ivy.version}/ivy-${ivy.version}.jar" />
-	  	<property name="build.dir" location="build" />
-	  	<property name="build.ivy.dir" location="${build.dir}/ivy" />
-	  	<property name="build.ivy.lib.dir" location="${build.ivy.dir}/lib" />
+		<property name="ivysettings.xml" location="${ivy.dir}/ivysettings.xml" />
+		<loadproperties srcfile="${ivy.dir}/libraries.properties" />
+		<loadproperties srcfile="${ivy.dir}/libraries.properties" />
+		<property name="ivy.jar" location="${ivy.dir}/ivy-${ivy.version}.jar" />
+		<property name="ivy_repo_url" value="http://repo2.maven.org/maven2/org/apache/ivy/ivy/${ivy.version}/ivy-${ivy.version}.jar" />
+		<property name="build.dir" location="build" />
+		<property name="build.ivy.dir" location="${build.dir}/ivy" />
+		<property name="build.ivy.lib.dir" location="${build.ivy.dir}/lib" />
 		<property name="build.ivy.report.dir" location="${build.ivy.dir}/report" />
-	  	<property name="common.ivy.lib.dir" location="${build.ivy.lib.dir}/${ant.project.name}/common"/> 
-                <property name="rat.reporting.classname" value="rat.Report"/> 
-	  	<!--this is the naming policy for artifacts we want pulled down-->
-	  	<property name="ivy.artifact.retrieve.pattern"
-    			value="${ant.project.name}/[conf]/[artifact]-[revision].[ext]"/>
-	</target>  
-
-        <target name="ivy-download-local" description="To download ivy"
-		unless="offline">
-    		<get src="${ivy_repo_url}" dest="${ivy.jar}" usetimestamp="true"/>
+		<property name="common.ivy.lib.dir" location="${build.ivy.lib.dir}/${ant.project.name}/common" />
+		<property name="rat.reporting.classname" value="rat.Report" />
+		<property name="jdiff.build.dir" value="${build.docs}/jdiff" />
+		<property name="jdiff.xml.dir" value="${build.ivy.lib.dir}/${name}/jdiff" />
+		<property name="jdiff.stable" value="0.1.2" />
+		<property name="jdiff.stable.javadoc" value="http://hadoop.apache.org/core/docs/r${jdiff.stable}/api/" />
+
+		<!--this is the naming policy for artifacts we want pulled down-->
+		<property name="ivy.artifact.retrieve.pattern" value="${ant.project.name}/[conf]/[artifact]-[revision].[ext]" />
+		<property name="jdiff.home" value="${build.ivy.lib.dir}/${ant.project.name}/jdiff" />
+		<property name="jdiff.jar" value="${jdiff.home}/jdiff-${jdiff.version}.jar" />
+		<property name="xerces.jar" value="${jdiff.home}/xerces-${xerces.version}.jar" />
+
+		<property name="clover.jar" location="${clover.home}/lib/clover.jar" />
+		<available property="clover.present" file="${clover.jar}" />
+
+	</target>
+
+	<target name="ivy-download-local" description="To download ivy" unless="offline">
+		<get src="${ivy_repo_url}" dest="${ivy.jar}" usetimestamp="true" />
 	</target>
 
 	<target name="ivy-init-dirs-local" depends="ivy-init-properties-local">
-    		<mkdir dir="${build.ivy.dir}" />
-    		<mkdir dir="${build.ivy.lib.dir}" />
-    		<mkdir dir="${build.ivy.report.dir}" />
+		<mkdir dir="${build.ivy.dir}" />
+		<mkdir dir="${build.ivy.lib.dir}" />
+		<mkdir dir="${build.ivy.report.dir}" />
 	</target>
 
-  	<target name="ivy-probe-antlib-local" >
-    		<condition property="ivy.found.local">
-      			<typefound uri="antlib:org.apache.ivy.ant" name="cleancache"/>
-    		</condition>
+	<target name="ivy-probe-antlib-local">
+		<condition property="ivy.found.local">
+			<typefound uri="antlib:org.apache.ivy.ant" name="cleancache" />
+		</condition>
 	</target>
 
 	<target name="ivy-init-antlib-local" depends="ivy-init-dirs-local,ivy-download-local,ivy-probe-antlib-local" unless="ivy.found.local">
-    		<typedef uri="antlib:org.apache.ivy.ant" onerror="fail" loaderRef="ivyLoader">
+		<typedef uri="antlib:org.apache.ivy.ant" onerror="fail" loaderRef="ivyLoader">
 			<classpath>
-        			<pathelement location="${ivy.jar}"/>
-		      	</classpath>
-    		</typedef>
-    		<fail>
-      		<condition>
-		        <not>
-          			<typefound uri="antlib:org.apache.ivy.ant" name="cleancache"/>
-		        </not>
-		</condition>
+				<pathelement location="${ivy.jar}" />
+			</classpath>
+		</typedef>
+		<fail>
+			<condition>
+				<not>
+					<typefound uri="antlib:org.apache.ivy.ant" name="cleancache" />
+				</not>
+			</condition>
 			      You need Apache Ivy 2.0 or later from http://ant.apache.org/
 			      It could not be loaded from ${ivy_repo_url}
 		 </fail>
 	</target>
 
-  	<target name="ivy-init-local" depends="ivy-init-antlib-local">
-    		<ivy:configure settingsid="${ant.project.name}.ivy.settings" file="${ivysettings.xml}" override="true"/>
+	<target name="ivy-init-local" depends="ivy-init-antlib-local">
+		<ivy:configure settingsid="${ant.project.name}.ivy.settings" file="${ivysettings.xml}" override="true" />
+	</target>
+
+	<target name="ivy-retrieve" depends="ivy-resolve" description="Retrieve Ivy-managed artifacts for the compile/test configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" sync="true" />
+		<ivy:cachepath pathid="contrib-classpath" conf="common" />
 	</target>
 
 	<target name="ivy-resolve" depends="ivy-init-local">
-    		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="common"/>
-  	</target>
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" />
+	</target>
 
-	<target name="ivy-retrieve" depends="ivy-resolve"
-		    description="Retrieve Ivy-managed artifacts for the compile/test configurations">
-		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" 
-		 pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" sync="true" />
-		<ivy:cachepath pathid="contrib-classpath" conf="common" />
+	<target name="ivy-resolve-javadoc" depends="ivy-init-local">
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="javadoc" />
 	</target>
-        
 
-<target name="init-hadoop" if="hadoopMode">
-		<antcall target="ivy-retrieve-common"/>
-                <echo>Hadoop Mode</echo>
-	        <property name="build.dir" value="${basedir}/build"/>
-	        <property name="build.classes" value="${basedir}/build/classes"/>
-                <property name="test.build.dir" value="${build.dir}/test"/>
-                <property name="test.build.classes" value="${test.build.dir}/classes"/>
-                <delete file="${build.dir}/${final.name}/hadoop-*-core.jar" />
-	        <property name="lib.dir" value="${basedir}/lib"/>
-	        <path id="classpath">
-		        <fileset dir="${lib.dir}">
-			        <include name="**/*.jar" />
-			        <exclude name="**/excluded/" />
-		        </fileset>
-		        <fileset dir="${hadoop.root}/lib">
-			        <include name="**/*.jar" />
-			        <exclude name="**/excluded/" />
-		        </fileset>
-                        <pathelement location="${hadoop.root}/build/classes"/>
- 			<path refid="contrib-classpath"/>
-	        </path>
-                <path id="testClasspath">
-                        <pathelement location="${build.classes}"/>
-                        <pathelement location="${test.build.classes}"/>
- 			<path refid="contrib-classpath"/>
-                        <fileset dir="${lib.dir}">
-                                <include name="**/*.jar" />
-                                <exclude name="**/excluded/" />
-                        </fileset>
-		        <fileset dir="${hadoop.root}/lib">
-			        <include name="**/*.jar" />
-                                <exclude name="**/excluded/" />
-                        </fileset>
-                        <pathelement location="${hadoop.root}/build/classes"/>
-                        <pathelement location="${hadoop.root}/build/test/classes"/>
-                        <pathelement location="${clover.jar}"/>
-                </path>
-
-                <path id="testDemuxClasspath">
-                        <pathelement location="${build.classes}"/>
-                        <pathelement location="${test.build.classes}"/>
- 			<path refid="contrib-classpath"/>
-                        <fileset dir="${hadoop.root}/lib">
-                                <include name="**/*.jar" />
-                                <exclude name="**/excluded/" />
-                        </fileset>
-                        <fileset dir="${lib.dir}">
-                                <include name="**/*.jar" />
-                                <exclude name="**/excluded/" />
-                        </fileset>
-                        <pathelement location="${hadoop.root}/build/classes"/>
-                        <pathelement location="${hadoop.root}/build/test/classes"/>
-                </path>
+	<target name="ivy-resolve-checkstyle" depends="ivy-init-local">
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="checkstyle" />
+	</target>
 
-        </target>
+	<target name="ivy-retrieve-checkstyle" depends="ivy-resolve-checkstyle" description="Retrieve Ivy-managed artifacts for the checkstyle configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
+		<ivy:cachepath pathid="checkstyle-classpath" conf="checkstyle" />
+	</target>
+
+	<target name="ivy-resolve-test" depends="ivy-init-local">
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="test" />
+	</target>
+
+	<target name="ivy-resolve-common" depends="ivy-init-local">
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="common" />
+	</target>
+
+	<target name="ivy-resolve-jdiff" depends="ivy-init-local">
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="jdiff" />
+	</target>
+
+	<target name="ivy-retrieve-jdiff" depends="ivy-resolve-jdiff" description="Retrieve Ivy-managed artifacts for the javadoc configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
+		<ivy:cachepath pathid="jdiff-classpath" conf="jdiff" />
+	</target>
+
+	<target name="ivy-retrieve-javadoc" depends="ivy-resolve-javadoc" description="Retrieve Ivy-managed artifacts for the javadoc configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
+		<ivy:cachepath pathid="javadoc-classpath" conf="javadoc" />
+	</target>
+
+	<target name="ivy-retrieve-test" depends="ivy-resolve-test" description="Retrieve Ivy-managed artifacts for the test configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
+		<ivy:cachepath pathid="test.classpath" conf="test" />
+	</target>
+
+	<target name="ivy-retrieve-common" depends="ivy-resolve-common" description="Retrieve Ivy-managed artifacts for the compile configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
+		<ivy:cachepath pathid="ivy-common.classpath" conf="common" />
+	</target>
+
+	<target name="ivy-report" depends="ivy-resolve-releaseaudit" description="Generate">
+		<ivy:report todir="${build.ivy.report.dir}" settingsRef="${ant.project.name}.ivy.settings" />
+		<echo>
+      Reports generated:${build.ivy.report.dir}
+    </echo>
+	</target>
+
+	<target name="init-hadoop" if="hadoopMode">
+		<antcall target="ivy-retrieve-common" />
+		<echo>Hadoop Mode</echo>
+		<property name="build.dir" value="${basedir}/build" />
+		<property name="build.classes" value="${basedir}/build/classes" />
+		<property name="test.build.dir" value="${build.dir}/test" />
+		<property name="test.build.classes" value="${test.build.dir}/classes" />
+		<delete file="${build.dir}/${final.name}/hadoop-*-core.jar" />
+		<property name="lib.dir" value="${basedir}/lib" />
+		<path id="classpath">
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<fileset dir="${hadoop.root}/lib">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<pathelement location="${hadoop.root}/build/classes" />
+			<path refid="contrib-classpath" />
+		</path>
+		<path id="testClasspath">
+			<pathelement location="${build.classes}" />
+			<pathelement location="${test.build.classes}" />
+			<path refid="contrib-classpath" />
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<fileset dir="${hadoop.root}/lib">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<pathelement location="${hadoop.root}/build/classes" />
+			<pathelement location="${hadoop.root}/build/test/classes" />
+			<pathelement location="${clover.jar}" />
+		</path>
+
+		<path id="testDemuxClasspath">
+			<pathelement location="${build.classes}" />
+			<pathelement location="${test.build.classes}" />
+			<path refid="contrib-classpath" />
+			<fileset dir="${hadoop.root}/lib">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<fileset dir="${lib.dir}">
+				<include name="**/*.jar" />
+				<exclude name="**/excluded/" />
+			</fileset>
+			<pathelement location="${hadoop.root}/build/classes" />
+			<pathelement location="${hadoop.root}/build/test/classes" />
+		</path>
+
+	</target>
 
 	<target name="init" depends="init-standalone,init-hadoop">
-                <property name="src.dir" value="${basedir}/src"/>
-                <property name="build.classes" value="${build.dir}/classes"/>
-                <property name="conf.dir" value="${basedir}/conf"/>
-                <property name="docs.dir" value="${basedir}/docs"/>
-                <property name="tools.dir" value="${basedir}/tools"/>
-                <property name="dist.dir" value="${basedir}/dist"/>
-                <property name="opt.dir" value="${basedir}/opt"/>
-                <property name="javac.debug" value="on"/>
-                <property name="javac.version" value="1.6"/>
-                <property name="test.src.dir" value="${basedir}/src/test"/>
-                <property name="test.lib.dir" value="${basedir}/src/test/lib"/>
-                <property name="test.build.dir" value="${build.dir}/test"/>
-                <property name="test.generated.dir" value="${test.build.dir}/src"/>
-                <property name="test.build.data" value="${test.build.dir}/data"/>
-                <property name="test.cache.data" value="${test.build.dir}/cache"/>
-                <property name="test.debug.data" value="${test.build.dir}/debug"/>
-                <property name="test.log.dir" value="${test.build.dir}/logs"/>
-                <property name="test.build.classes" value="${test.build.dir}/classes"/>
-                <property name="test.build.testjar" value="${test.build.dir}/testjar"/>
-                <property name="test.include" value="Test*"/>
-                <property name="test.classpath.id" value="test.classpath"/>
-                <property name="test.output" value="no"/>
-                <property name="test.timeout" value="900000"/>
-                <property name="test.junit.output.format" value="plain"/>
-                <property name="test.junit.fork.mode" value="perTest" />
-                <property name="test.junit.printsummary" value="yes" />
-                <property name="test.junit.haltonfailure" value="yes" />
-                <property name="test.junit.maxmemory" value="256m" />
-		<mkdir dir="${build.dir}"/>
-		<mkdir dir="${build.classes}"/>
-		<mkdir dir="${build.dir}/test"/>
+		<property name="src.dir" value="${basedir}/src" />
+		<property name="build.classes" value="${build.dir}/classes" />
+		<property name="conf.dir" value="${basedir}/conf" />
+		<property name="docs.src" value="${basedir}/src/docs" />
+		<property name="docs.dir" value="${basedir}/docs" />
+		<property name="changes.src" value="${docs.src}/changes" />
+		<property name="tools.dir" value="${basedir}/tools" />
+		<property name="opt.dir" value="${basedir}/opt" />
+		<property name="javac.debug" value="on" />
+		<property name="javac.version" value="1.6" />
+		<property name="test.src.dir" value="${basedir}/src/test" />
+		<property name="test.lib.dir" value="${basedir}/src/test/lib" />
+		<property name="test.build.dir" value="${build.dir}/test" />
+		<property name="test.generated.dir" value="${test.build.dir}/src" />
+		<property name="test.build.data" value="${test.build.dir}/data" />
+		<property name="test.cache.data" value="${test.build.dir}/cache" />
+		<property name="test.debug.data" value="${test.build.dir}/debug" />
+		<property name="test.log.dir" value="${test.build.dir}/logs" />
+		<property name="test.build.classes" value="${test.build.dir}/classes" />
+		<property name="test.build.testjar" value="${test.build.dir}/testjar" />
+		<property name="test.build.javadoc" value="${test.build.dir}/docs/api" />
+		<property name="test.build.javadoc.dev" value="${test.build.dir}/docs/dev-api" />
+		<property name="test.include" value="Test*" />
+		<property name="test.classpath.id" value="test.classpath" />
+		<property name="test.output" value="no" />
+		<property name="test.timeout" value="900000" />
+		<property name="test.junit.output.format" value="plain" />
+		<property name="test.junit.fork.mode" value="perTest" />
+		<property name="test.junit.printsummary" value="yes" />
+		<property name="test.junit.haltonfailure" value="yes" />
+		<property name="test.junit.maxmemory" value="256m" />
+		<property name="javadoc.link.java" value="http://java.sun.com/javase/6/docs/api/" />
+		<property name="javadoc.packages" value="org.apache.hadoop.*" />
+		<property name="javadoc.maxmemory" value="512m" />
+
+		<mkdir dir="${build.dir}" />
+		<mkdir dir="${build.classes}" />
+		<mkdir dir="${build.dir}/test" />
 		<exec executable="echo" output="${basedir}/bin/VERSION">
 			<arg line="${chukwaVersion}" />
 		</exec>
 
-		<mkdir dir="${dist.dir}"/>
-
 	</target>
 
 	<target name="main" depends="init, compile, compress" description="Main target">
@@ -303,116 +384,110 @@
 
 	<target name="compile-common" depends="init" description="Compilation target">
 		<javac srcdir="src/java" destdir="${build.classes}" debug="${javac.debug}">
-                        <exclude name="org/apache/hadoop/chukwa/datacollection/**" />
-                        <exclude name="org/apache/hadoop/chukwa/extraction/**" />
-                        <exclude name="org/apache/hadoop/chukwa/inputtools/**" />
-                        <exclude name="org/apache/hadoop/mapred/**" />
-                        <compilerarg value="-Xlint"/>
+			<exclude name="org/apache/hadoop/chukwa/datacollection/**" />
+			<exclude name="org/apache/hadoop/chukwa/extraction/**" />
+			<exclude name="org/apache/hadoop/chukwa/inputtools/**" />
+			<exclude name="org/apache/hadoop/mapred/**" />
+			<compilerarg value="-Xlint" />
 			<classpath refid="classpath" />
 		</javac>
 	</target>
 
 	<target name="compile-inputtools" depends="init,compile-common" description="Compile Input Tools">
 		<javac srcdir="src/java" destdir="${build.classes}" excludes="**/ChukwaTTInstru.java" debug="${javac.debug}">
-                        <compilerarg value="-Xlint"/>
-                        <exclude name="org/apache/hadoop/*" />
-                        <include name="org/apache/hadoop/chukwa/inputtools/**" />
+			<compilerarg value="-Xlint" />
+			<exclude name="org/apache/hadoop/*" />
+			<include name="org/apache/hadoop/chukwa/inputtools/**" />
 			<classpath refid="classpath" />
 		</javac>
 	</target>
 
 	<target name="compile-datacollection" depends="init,compile-common" description="Compilation Data Collection Framework">
 		<javac srcdir="src/java" destdir="${build.classes}" debug="${javac.debug}">
-                        <compilerarg value="-Xlint"/>
+			<compilerarg value="-Xlint" />
 			<classpath refid="classpath" />
-                        <exclude name="org/apache/hadoop/mapred/**" />
-                        <include name="org/apache/hadoop/chukwa/datacollection/**" />
-                        <include name="org/apache/hadoop/metrics/spi/**" />
+			<exclude name="org/apache/hadoop/mapred/**" />
+			<include name="org/apache/hadoop/chukwa/datacollection/**" />
+			<include name="org/apache/hadoop/metrics/spi/**" />
 		</javac>
 	</target>
 
 	<target name="compile-extraction" depends="init,compile-common" description="Compilation Data Processing Framework">
 		<javac srcdir="src/java" destdir="${build.classes}" debug="${javac.debug}">
-                        <compilerarg value="-Xlint"/>
+			<compilerarg value="-Xlint" />
 			<classpath refid="dp-classpath" />
-                        <exclude name="org/apache/hadoop/chukwa/*" />
-                        <include name="org/apache/hadoop/chukwa/database/**" />
-                        <include name="org/apache/hadoop/chukwa/extraction/**" />
+			<exclude name="org/apache/hadoop/chukwa/*" />
+			<include name="org/apache/hadoop/chukwa/database/**" />
+			<include name="org/apache/hadoop/chukwa/extraction/**" />
 		</javac>
 	</target>
 
 	<target name="compile-hicc" depends="init" description="Compilation HICC Framework">
 		<javac srcdir="src/java" destdir="${build.classes}" debug="${javac.debug}">
-                        <compilerarg value="-Xlint"/>
+			<compilerarg value="-Xlint" />
 			<classpath refid="classpath" />
-                        <exclude name="org/apache/hadoop/chukwa/*" />
-                        <include name="org/apache/hadoop/chukwa/hicc/**" />
+			<exclude name="org/apache/hadoop/chukwa/*" />
+			<include name="org/apache/hadoop/chukwa/hicc/**" />
 		</javac>
 	</target>
 
 	<target name="compile-test" depends="init" description="Test target">
-	                      
-           <delete dir="${test.build.dir}"/>
-           <mkdir dir="${test.build.dir}"/>
-           <delete dir="${test.log.dir}"/>
-           <mkdir dir="${test.log.dir}"/>
-           <delete dir="${test.build.classes}"/>
-           <mkdir dir="${test.build.classes}"/>
-
-            <javac srcdir="${test.src.dir}" destdir="${test.build.dir}/classes"  debug="${javac.debug}">
-                 <classpath refid="testClasspath" />
-                 <classpath refid="testDemuxClasspath" />
-            </javac>
-
-            <copy todir="${test.build.dir}/classes/org/apache/hadoop/chukwa/inputtools/log4j/">
-                  <fileset dir="${basedir}/src/test/org/apache/hadoop/chukwa/inputtools/log4j/">
-                     <include name="late-log4j.properties" />
-                  </fileset>
-            </copy>
 
-        </target>
+		<delete dir="${test.build.dir}" />
+		<mkdir dir="${test.build.dir}" />
+		<delete dir="${test.log.dir}" />
+		<mkdir dir="${test.log.dir}" />
+		<delete dir="${test.build.classes}" />
+		<mkdir dir="${test.build.classes}" />
+
+		<javac srcdir="${test.src.dir}" destdir="${test.build.dir}/classes" debug="${javac.debug}">
+			<classpath refid="testClasspath" />
+			<classpath refid="testDemuxClasspath" />
+		</javac>
+
+		<copy todir="${test.build.dir}/classes/org/apache/hadoop/chukwa/inputtools/log4j/">
+			<fileset dir="${basedir}/src/test/org/apache/hadoop/chukwa/inputtools/log4j/">
+				<include name="late-log4j.properties" />
+			</fileset>
+		</copy>
+
+	</target>
 
-            <!--printsummary="${test.junit.printsummary}" -->
+	<!--printsummary="${test.junit.printsummary}" -->
 
 	<target name="test-chukwa" depends="compile,compile-test" description="Run Chukwa unit tests">
-          <mkdir dir="${basedir}/var"/>
-          <junit showoutput="${test.output}"
-            fork="yes"
-            printsummary="withOutAndErr"
-            forkmode="${test.junit.fork.mode}"
-            maxmemory="${test.junit.maxmemory}"
-            dir="${test.build.dir}/classes/" timeout="${test.timeout}"
-            errorProperty="tests.failed" failureProperty="tests.failed">
-           <classpath refid="testClasspath"/>
-           <env key="DATACONFIG" value="${build.dir}/conf"/>
-           <sysproperty key="test.src.dir" value="${test.src.dir}"/>
-           <formatter type="${test.junit.output.format}" />
-           <batchtest todir="${test.build.dir}" unless="testcase">
-            <fileset dir="${test.src.dir}">
-              <include name="**/${test.include}.java"/>
-              <exclude name="**/${test.exclude}.java"/>
-              <exclude name="**/TestAgentConfig.java"/>
-              <exclude name="**/TestDemux.java"/>
-            </fileset>
-           </batchtest>
-           <batchtest todir="${test.build.dir}" if="testcase">
-            <fileset dir="${test.src.dir}" includes="**/${testcase}.java">
-              <exclude name="**/TestDemux.java"/>
-            </fileset>
-           </batchtest>
-         </junit>
-         <fail if="tests.failed">Tests failed!</fail>
-         <delete>
-            <fileset dir="${basedir}/var" includes="*"/>
-         </delete>
-        </target>
+		<mkdir dir="${basedir}/var" />
+		<junit showoutput="${test.output}" fork="yes" printsummary="withOutAndErr" forkmode="${test.junit.fork.mode}" maxmemory="${test.junit.maxmemory}" dir="${test.build.dir}/classes/" timeout="${test.timeout}" errorProperty="tests.failed" failureProperty="tests.failed">
+			<classpath refid="testClasspath" />
+			<env key="DATACONFIG" value="${build.dir}/conf" />
+			<sysproperty key="test.src.dir" value="${test.src.dir}" />
+			<formatter type="${test.junit.output.format}" />
+			<batchtest todir="${test.build.dir}" unless="testcase">
+				<fileset dir="${test.src.dir}">
+					<include name="**/${test.include}.java" />
+					<exclude name="**/${test.exclude}.java" />
+					<exclude name="**/TestAgentConfig.java" />
+					<exclude name="**/TestDemux.java" />
+				</fileset>
+			</batchtest>
+			<batchtest todir="${test.build.dir}" if="testcase">
+				<fileset dir="${test.src.dir}" includes="**/${testcase}.java">
+					<exclude name="**/TestDemux.java" />
+				</fileset>
+			</batchtest>
+		</junit>
+		<fail if="tests.failed">Tests failed!</fail>
+		<delete>
+			<fileset dir="${basedir}/var" includes="*" />
+		</delete>
+	</target>
 
 	<target name="collector" depends="compile" description="Prepare collector.war">
-		<mkdir dir="${build.dir}/collector"/>
-		<mkdir dir="${build.dir}/collector/WEB-INF"/>
-		<mkdir dir="${build.dir}/collector/WEB-INF/classes"/>
-		<mkdir dir="${build.dir}/collector/WEB-INF/lib"/>
-		<mkdir dir="${build.dir}/collector/META-INF"/>
+		<mkdir dir="${build.dir}/collector" />
+		<mkdir dir="${build.dir}/collector/WEB-INF" />
+		<mkdir dir="${build.dir}/collector/WEB-INF/classes" />
+		<mkdir dir="${build.dir}/collector/WEB-INF/lib" />
+		<mkdir dir="${build.dir}/collector/META-INF" />
 		<copy todir="${build.dir}/collector/WEB-INF/classes">
 			<fileset dir="${build.classes}">
 				<include name="org/apache/hadoop/chukwa/conf/**/*.class" />
@@ -463,153 +538,153 @@
 	<target name="tools_jar" depends="compile, collector" description="Create tools jar">
 		<jar jarfile="${build.dir}/tools-${chukwaVersion}.jar" basedir="${build.classes}" includes="org/apache/hadoop/chukwa/inputtools/**/*.class">
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/inputtools/**/*.java"/>
+				<include name="org/apache/hadoop/chukwa/inputtools/**/*.java" />
 			</fileset>
 		</jar>
 	</target>
 
 	<target name="agent_jar" depends="compile, collector" description="Create agent jar">
-		<jar jarfile="${build.dir}/chukwa-agent-${chukwaVersion}.jar" basedir="${build.classes}" includes="org/apache/hadoop/chukwa/client/**/*.class" >
+		<jar jarfile="${build.dir}/chukwa-agent-${chukwaVersion}.jar" basedir="${build.classes}" includes="org/apache/hadoop/chukwa/client/**/*.class">
 			<fileset dir="${build.dir}">
-				<include name="org/apache/hadoop/chukwa/conf/**/*.class"/>
+				<include name="org/apache/hadoop/chukwa/conf/**/*.class" />
+			</fileset>
+			<fileset dir="${build.classes}">
+				<include name="org/apache/hadoop/metrics/**/*.class" />
 			</fileset>
-                        <fileset dir="${build.classes}">
-                                <include name="org/apache/hadoop/metrics/**/*.class"/>
-                        </fileset>
 
 			<fileset dir="${build.classes}">
-				<include name="org/apache/hadoop/chukwa/util/**/*.class"/>
+				<include name="org/apache/hadoop/chukwa/util/**/*.class" />
 			</fileset>
 			<fileset dir="${build.classes}">
-				<include name="org/apache/hadoop/chukwa/inputtools/**/*.class"/>
+				<include name="org/apache/hadoop/chukwa/inputtools/**/*.class" />
 			</fileset>
 			<fileset dir="${build.classes}">
-                                <exclude name="org/apache/hadoop/chukwa/datacollection/collector/**/*.class"/>
-                                <exclude name="org/apache/hadoop/chukwa/datacollection/writer/**/*.class"/>
-				<include name="org/apache/hadoop/chukwa/datacollection/**/*.class"/>
+				<exclude name="org/apache/hadoop/chukwa/datacollection/collector/**/*.class" />
+				<exclude name="org/apache/hadoop/chukwa/datacollection/writer/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/datacollection/**/*.class" />
 			</fileset>
 
-                        <fileset dir="${basedir}/src/java">
-                                <include name="org/apache/hadoop/metrics/**/*.java"/>
-                        </fileset>
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/client/**/*.java"/>
+				<include name="org/apache/hadoop/metrics/**/*.java" />
 			</fileset>
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/util/**/*.java"/>
+				<include name="org/apache/hadoop/chukwa/client/**/*.java" />
 			</fileset>
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/inputtools/**/*.java"/>
+				<include name="org/apache/hadoop/chukwa/util/**/*.java" />
 			</fileset>
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/inputtools/**/*.java"/>
+				<include name="org/apache/hadoop/chukwa/inputtools/**/*.java" />
 			</fileset>
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/datacollection/**/*.java"/>
-				<exclude name="org/apache/hadoop/chukwa/datacollection/collector/**/*.java"/>
-				<exclude name="org/apache/hadoop/chukwa/datacollection/writer/**/*.java"/>
+				<include name="org/apache/hadoop/chukwa/inputtools/**/*.java" />
+			</fileset>
+			<fileset dir="${basedir}/src/java">
+				<include name="org/apache/hadoop/chukwa/datacollection/**/*.java" />
+				<exclude name="org/apache/hadoop/chukwa/datacollection/collector/**/*.java" />
+				<exclude name="org/apache/hadoop/chukwa/datacollection/writer/**/*.java" />
 			</fileset>
 
 		</jar>
 	</target>
 
 	<target name="chukwa_jar" depends="compile, collector" description="Create chukwa-core jar">
-		<jar jarfile="${build.dir}/chukwa-core-${chukwaVersion}.jar" basedir="${build.classes}" includes="org/apache/hadoop/chukwa/datacollection/**/*.class" >
-                        <manifest>
-                            <section name="org/apache/hadoop/chukwa">
-                                <attribute name="Implementation-Title" value="Chukwa"/>
-                                <attribute name="Implementation-Version" value="${version}"/>
-                                <attribute name="Implementation-Vendor" value="Apache"/>
-                            </section>
-                        </manifest>
+		<jar jarfile="${build.dir}/chukwa-core-${chukwaVersion}.jar" basedir="${build.classes}" includes="org/apache/hadoop/chukwa/datacollection/**/*.class">
+			<manifest>
+				<section name="org/apache/hadoop/chukwa">
+					<attribute name="Implementation-Title" value="Chukwa" />
+					<attribute name="Implementation-Version" value="${version}" />
+					<attribute name="Implementation-Vendor" value="Apache" />
+				</section>
+			</manifest>
 
 			<fileset dir="${build.classes}">
-				<include name="org/apache/hadoop/chukwa/**/*.class"/>
+				<include name="org/apache/hadoop/chukwa/**/*.class" />
 			</fileset>
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/chukwa/**/*.java"/>
+				<include name="org/apache/hadoop/chukwa/**/*.java" />
 			</fileset>
 		</jar>
 	</target>
 
 	<target name="chukwa-hadoop_jar" depends="compile" description="Create chukwa_hadoop jar for use with getting hadoop to use chukwa">
-                <mkdir dir="${build.dir}/conf"/>
+		<mkdir dir="${build.dir}/conf" />
 		<jar jarfile="${build.dir}/chukwa-hadoop-${chukwaVersion}-client.jar" basedir="${build.classes}" includes="org/apache/hadoop/chukwa/inputtools/log4j/**/*.class">
 			<fileset dir="${basedir}/src/java">
-				<include name="org/apache/hadoop/mapred/**/*.java"/>
-				<include name="org/apache/hadoop/chukwa/inputtools/log4j/**/*.java"/>
-		                <include name="org/apache/hadoop/chukwa/datacollection/client/**/*.java"/>
-		                <include name="org/apache/hadoop/chukwa/util/**/*.java"/>
+				<include name="org/apache/hadoop/mapred/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/inputtools/log4j/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/datacollection/client/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/util/**/*.java" />
 			</fileset>
 			<fileset dir="${build.classes}">
-				<include name="org/apache/hadoop/mapred/**/*.class"/>
-				<include name="org/apache/hadoop/chukwa/datacollection/client/**/*.class"/>
-				<include name="org/apache/hadoop/chukwa/util/**/*.class"/>
-				<include name="org/apache/hadoop/chukwa/datacollection/controller/*.class"/>
+				<include name="org/apache/hadoop/mapred/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/datacollection/client/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/util/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/datacollection/controller/*.class" />
 			</fileset>
 		</jar>
 	</target>
 
-        <target name="hicc" depends="compile, chukwa_jar, package-hadoop, package-standalone" description="Prepare hicc.war">
-                <mkdir dir="${build.dir}/hicc"/>
-                <mkdir dir="${build.dir}/hicc/WEB-INF"/>
-                <mkdir dir="${build.dir}/hicc/WEB-INF/classes"/>
-                <mkdir dir="${build.dir}/hicc/WEB-INF/lib"/>
-                <mkdir dir="${build.dir}/hicc/META-INF"/>
-                <copy todir="${build.dir}/hicc">
-                        <fileset dir="${basedir}/src/web/hicc">
-                                <include name="**" />
-                        </fileset>
-                </copy>
-                <copy todir="${build.dir}/hicc/WEB-INF/classes">
-                        <fileset dir="${build.classes}">
-                                <include name="org/apache/hadoop/chukwa/hicc/**/*.class" />
-                                <include name="org/apache/hadoop/chukwa/conf/**/*.class" />
-                                <include name="org/apache/hadoop/chukwa/database/**/*.class" />
-                                <include name="org/apache/hadoop/chukwa/datacollection/**/*.class" />
-                                <include name="org/apache/hadoop/chukwa/extraction/engine/**/*.class" />
-                                <include name="org/apache/hadoop/chukwa/inputtools/*.class" />
-                                <include name="org/apache/hadoop/chukwa/util/**/*.class" />
-                        </fileset>
-
-                        <fileset dir="${basedir}/src/java">
-                                <include name="org/apache/hadoop/chukwa/hicc/**/*.java" />
-                                <include name="org/apache/hadoop/chukwa/conf/**/*.java" />
-                                <include name="org/apache/hadoop/chukwa/datacollection/**/*.java" />
-                                <include name="org/apache/hadoop/chukwa/extraction/engine/**/*.java" />
-                                <include name="org/apache/hadoop/chukwa/inputtools/*.java" />
-                                <include name="org/apache/hadoop/chukwa/util/**/*.java" />
-                        </fileset>
-
-                </copy>
-                <copy todir="${build.dir}/hicc/WEB-INF/lib">
-                        <fileset dir="${basedir}/lib">
-                                <include name="json.jar" />
-                                <include name="html-filter-1.0.jar" />
-                        </fileset>
-                        <fileset dir="${common.ivy.lib.dir}">
-                                <include name="*.jar" />
-                                <exclude name="jetty-*.jar" />
-                                <exclude name="jsp-api*.jar" />
-                                <exclude name="junit-*.jar" />
-                        </fileset>
-                        <fileset dir="${build.dir}">
-                                <include name="${name}-core-${chukwaVersion}.jar" />
-                        </fileset>
-                        <fileset dir="${build.dir}/${final.name}/hadoopjars">
-                                <include name="*.jar" />
-                                <exclude name="hadoop-0.2*-core.jar" />
-                                <exclude name="jasper-*.jar" />
-                                <exclude name="jetty-*.jar" />
-                                <exclude name="jsp-api*.jar" />
-                        </fileset>
-                </copy>
-        </target>
-
-        <target name="hicc_war" depends="compile, hicc" description="Create hicc jar">
-                <jar jarfile="${build.dir}/hicc.war" basedir="${build.dir}/hicc">
-                </jar>
-        </target>
+	<target name="hicc" depends="compile, chukwa_jar, package-hadoop, package-standalone" description="Prepare hicc.war">
+		<mkdir dir="${build.dir}/hicc" />
+		<mkdir dir="${build.dir}/hicc/WEB-INF" />
+		<mkdir dir="${build.dir}/hicc/WEB-INF/classes" />
+		<mkdir dir="${build.dir}/hicc/WEB-INF/lib" />
+		<mkdir dir="${build.dir}/hicc/META-INF" />
+		<copy todir="${build.dir}/hicc">
+			<fileset dir="${basedir}/src/web/hicc">
+				<include name="**" />
+			</fileset>
+		</copy>
+		<copy todir="${build.dir}/hicc/WEB-INF/classes">
+			<fileset dir="${build.classes}">
+				<include name="org/apache/hadoop/chukwa/hicc/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/conf/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/database/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/datacollection/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/extraction/engine/**/*.class" />
+				<include name="org/apache/hadoop/chukwa/inputtools/*.class" />
+				<include name="org/apache/hadoop/chukwa/util/**/*.class" />
+			</fileset>
+
+			<fileset dir="${basedir}/src/java">
+				<include name="org/apache/hadoop/chukwa/hicc/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/conf/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/datacollection/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/extraction/engine/**/*.java" />
+				<include name="org/apache/hadoop/chukwa/inputtools/*.java" />
+				<include name="org/apache/hadoop/chukwa/util/**/*.java" />
+			</fileset>
+
+		</copy>
+		<copy todir="${build.dir}/hicc/WEB-INF/lib">
+			<fileset dir="${basedir}/lib">
+				<include name="json.jar" />
+				<include name="html-filter-1.0.jar" />
+			</fileset>
+			<fileset dir="${common.ivy.lib.dir}">
+				<include name="*.jar" />
+				<exclude name="jetty-*.jar" />
+				<exclude name="jsp-api*.jar" />
+				<exclude name="junit-*.jar" />
+			</fileset>
+			<fileset dir="${build.dir}">
+				<include name="${name}-core-${chukwaVersion}.jar" />
+			</fileset>
+			<fileset dir="${build.dir}/${final.name}/hadoopjars">
+				<include name="*.jar" />
+				<exclude name="hadoop-0.2*-core.jar" />
+				<exclude name="jasper-*.jar" />
+				<exclude name="jetty-*.jar" />
+				<exclude name="jsp-api*.jar" />
+			</fileset>
+		</copy>
+	</target>
+
+	<target name="hicc_war" depends="compile, hicc" description="Create hicc jar">
+		<jar jarfile="${build.dir}/hicc.war" basedir="${build.dir}/hicc">
+		</jar>
+	</target>
 
 	<target name="compress" depends="compile,collector,collector_jar,hicc_war,tools_jar,agent_jar,chukwa_jar,chukwa-hadoop_jar" description="Compression target">
 		<copy todir="." includeEmptyDirs="false">
@@ -623,26 +698,121 @@
 	<target name="test" depends="compile,compile-test,test-chukwa" description="Automated Test Framework">
 	</target>
 
-        <!-- ================================================================== -->
-        <!-- Clean.  Delete the build files, and their directories              -->
-        <!-- ================================================================== -->
-        <target name="clean" depends="init" description="Clean.  Delete the build files, and their directories">
-            <delete dir="${build.dir}"/>
-            <delete dir="${build.ivy.lib.dir}/${ant.project.home}"/>
-            <delete dir="build"/>
-	    <delete file="${ivy.jar}"/>	
-            <delete dir="${docs.src}/build"/>
-        </target>
+	<!-- ================================================================== -->
+	<!-- Documentation                                                      -->
+	<!-- ================================================================== -->
+
+	<target name="docs" depends="init,javadoc">
+		<copy file="${docs.src}/releasenotes.html" todir="${build.docs}" />
+		<copy file="${docs.src}/src/documentation/resources/images/chukwa_logo_small.jpg" todir="${build.docs}/images" />
+		<antcall target="changes-to-html" />
+	</target>
+
+	<target name="javadoc-uptodate" depends="compile, ivy-retrieve-javadoc">
+		<uptodate property="javadoc.is.uptodate">
+			<srcfiles dir="${src.dir}/java">
+				<include name="**/*.java" />
+				<exclude name="org/apache/hadoop/chukwa/inputtools/ChukwaTTInstru.java" />
+				<include name="**/*.html" />
+			</srcfiles>
+			<mapper type="merge" to="${build.javadoc.timestamp}" />
+		</uptodate>
+	</target>
+
+	<target name="javadoc" description="Generate javadoc" depends="javadoc-uptodate" unless="javadoc.is.uptodate">
+		<mkdir dir="${build.javadoc}" />
+		<javadoc overview="${src.dir}/docs/overview.html" packagenames="org.apache.hadoop.chukwa.*" destdir="${build.javadoc}" author="true" version="true" use="true" windowtitle="${name} ${chukwaVersion} API" doctitle="${name} ${chukwaVersion} API" bottom="Copyright &amp;copy; ${year} The Apache Software Foundation" maxmemory="${javadoc.maxmemory}">
+			<packageset dir="${src.dir}/java">
+				<exclude name="org/apache/hadoop/mapred/**" />
+				<exclude name="org/apache/hadoop/chukwa/inputtools/ChukwaTTInstru" />
+			</packageset>
+
+			<link href="${javadoc.link.java}" />
+
+			<classpath>
+				<path refid="classpath" />
+				<path refid="javadoc-classpath" />
+				<pathelement path="${java.class.path}" />
+				<pathelement location="${build.tools}" />
+			</classpath>
+
+			<group title="Chukwa" packages="org.apache.*" />
+		</javadoc>
+	</target>
+
+	<target name="api-xml" depends="ivy-retrieve-jdiff,javadoc,write-null">
+		<mkdir dir="${jdiff.build.dir}" />
+		<javadoc maxmemory="${javadoc.maxmemory}">
+			<doclet name="jdiff.JDiff" path="${jdiff.jar}:${xerces.jar}">
+				<param name="-apidir" value="${jdiff.xml.dir}" />
+				<param name="-apiname" value="${name} ${chukwaVersion}" />
+			</doclet>
+			<packageset dir="${src.dir}/java">
+				<exclude name="org/apache/hadoop/mapred/**" />
+			</packageset>
+			<classpath>
+				<path refid="classpath" />
+				<path refid="jdiff-classpath" />
+				<pathelement path="${java.class.path}" />
+			</classpath>
+		</javadoc>
+	</target>
+
+	<target name="write-null">
+		<exec executable="touch">
+			<arg value="${jdiff.home}/Null.java" />
+		</exec>
+	</target>
+
+	<target name="api-report" depends="ivy-retrieve-jdiff,api-xml">
+		<mkdir dir="${jdiff.build.dir}" />
+		<javadoc sourcepath="src/core,src/hdfs,src,mapred,src/tools" destdir="${jdiff.build.dir}" sourceFiles="${jdiff.home}/Null.java" maxmemory="${javadoc.maxmemory}">
+			<doclet name="jdiff.JDiff" path="${jdiff.jar}:${xerces.jar}">
+				<param name="-oldapi" value="chukwa ${jdiff.stable}" />
+				<param name="-newapi" value="chukwa ${chukwaVersion}" />
+				<param name="-oldapidir" value="${jdiff.xml.dir}" />
+				<param name="-newapidir" value="${jdiff.xml.dir}" />
+				<param name="-javadocold" value="${jdiff.stable.javadoc}" />
+				<param name="-javadocnew" value="../../api/" />
+				<param name="-stats" />
+			</doclet>
+			<classpath>
+				<path refid="classpath" />
+				<path refid="jdiff-classpath" />
+				<pathelement path="${java.class.path}" />
+			</classpath>
+		</javadoc>
+	</target>
+
+	<target name="changes-to-html" description="Convert CHANGES.txt into an html file">
+		<mkdir dir="${build.docs}" />
+		<exec executable="perl" input="CHANGES.txt" output="${build.docs}/changes.html" failonerror="true">
+			<arg value="${changes.src}/changes2html.pl" />
+		</exec>
+		<copy todir="${build.docs}">
+			<fileset dir="${changes.src}" includes="*.css" />
+		</copy>
+	</target>
+
+	<!-- ================================================================== -->
+	<!-- Clean.  Delete the build files, and their directories              -->
+	<!-- ================================================================== -->
+	<target name="clean" depends="init" description="Clean.  Delete the build files, and their directories">
+		<delete dir="${build.dir}" />
+		<delete dir="${build.ivy.lib.dir}/${ant.project.home}" />
+		<delete dir="build" />
+		<delete file="${ivy.jar}" />
+		<delete dir="${docs.src}/build" />
+	</target>
 	<!-- ====================================================== -->
 	<!-- Macro definitions                                      -->
 	<!-- ====================================================== -->
 	<macrodef name="macro_tar" description="Worker Macro for tar">
-		<attribute name="param.destfile"/>
-		<element name="param.listofitems"/>
+		<attribute name="param.destfile" />
+		<element name="param.listofitems" />
 		<sequential>
-			<tar compression="gzip" longfile="gnu"
-          destfile="@{param.destfile}">
-				<param.listofitems/>
+			<tar compression="gzip" longfile="gnu" destfile="@{param.destfile}">
+				<param.listofitems />
 			</tar>
 		</sequential>
 	</macrodef>
@@ -653,49 +823,50 @@
 	<!--                                                                    -->
 	<!-- ================================================================== -->
 
-        <target name="package-hadoop" description="package hadoop from hadoop source" if="hadoopMode">
-		<mkdir dir="${build.dir}/${final.name}/hadoopjars"/>
-                <copy toDir="${build.dir}/${final.name}/hadoopjars">
-                        <fileset dir="${hadoop.root}/build">
-                                <include name="hadoop-*-core.jar" />
-                        </fileset>
+	<target name="package-hadoop" description="package hadoop from hadoop source" if="hadoopMode">
+		<mkdir dir="${build.dir}/${final.name}/hadoopjars" />
+		<copy toDir="${build.dir}/${final.name}/hadoopjars">
+			<fileset dir="${hadoop.root}/build">
+				<include name="hadoop-*-core.jar" />
+			</fileset>
 			<fileset dir="${build.ivy.lib.dir}\Hadoop\common">
-				
-                                <include name="jetty-*.jar" />
-                                <include name="commons-httpclient-*.jar" />
-                                <include name="commons-logging-*.jar" />
-                                <include name="commons-net-*.jar" />
-                                <include name="jasper-*.jar" />
-                                <include name="commons-el.jar" />
-                                <include name="commons-codec-*.jar" />
+
+				<include name="jetty-*.jar" />
+				<include name="commons-httpclient-*.jar" />
+				<include name="commons-logging-*.jar" />
+				<include name="commons-net-*.jar" />
+				<include name="jasper-*.jar" />
+				<include name="commons-el.jar" />
+				<include name="commons-codec-*.jar" />
 			</fileset>
 			<fileset dir="lib">
-                                <include name="jsp-api.jar"/>
+				<include name="jsp-api.jar" />
+			</fileset>
+			<fileset dir="${hadoop.root}/lib">
+				<include name="commons-cli-*.jar" />
 			</fileset>
-                        <fileset dir="${hadoop.root}/lib">
-                                <include name="commons-cli-*.jar"/>
-                        </fileset>
-                </copy>
-        </target>
+		</copy>
+	</target>
 
-        <target name="package-standalone" description="package hadoop from hadoop source" if="standaloneMode">
-		<mkdir dir="${build.dir}/${final.name}/hadoopjars"/>
+	<target name="package-standalone" description="package hadoop from hadoop source" if="standaloneMode">
+		<mkdir dir="${build.dir}/${final.name}/hadoopjars" />
 		<copy todir="${build.dir}/${final.name}/hadoopjars" includeEmptyDirs="false">
 			<fileset dir="${basedir}/hadoopjars">
 				<include name="**/*.jar" />
 			</fileset>
 		</copy>
-        </target>
+	</target>
 
-	<target name="package" depends="compress,package-hadoop,package-standalone" description="Build distribution">
-		<mkdir dir="${build.dir}/${final.name}"/>
-		<mkdir dir="${build.dir}/${final.name}/lib"/>
-		<mkdir dir="${build.dir}/${final.name}/bin"/>
-		<mkdir dir="${build.dir}/${final.name}/opt"/>
-		<mkdir dir="${build.dir}/${final.name}/tools"/>
-		<mkdir dir="${build.dir}/${final.name}/var"/>
-		<mkdir dir="${build.dir}/${final.name}/var/run"/>
-		<mkdir dir="${build.dir}/${final.name}/logs"/>
+	<target name="package" depends="compress,docs,package-hadoop,package-standalone" description="Build distribution">
+		<mkdir dir="${build.dir}/${final.name}" />
+		<mkdir dir="${build.dir}/${final.name}/lib" />
+		<mkdir dir="${build.dir}/${final.name}/bin" />
+		<mkdir dir="${build.dir}/${final.name}/docs" />
+		<mkdir dir="${build.dir}/${final.name}/opt" />
+		<mkdir dir="${build.dir}/${final.name}/tools" />
+		<mkdir dir="${build.dir}/${final.name}/var" />
+		<mkdir dir="${build.dir}/${final.name}/var/run" />
+		<mkdir dir="${build.dir}/${final.name}/logs" />
 
 		<copy todir="${build.dir}/${final.name}" includeEmptyDirs="false">
 			<fileset dir="${build.dir}">
@@ -703,38 +874,32 @@
 				<include name="**/*.war" />
 			</fileset>
 		</copy>
+
 		<copy todir="${build.dir}/${final.name}/lib" includeEmptyDirs="false">
 			<fileset dir="lib">
-				<exclude name="**/native/**"/>
+				<exclude name="**/native/**" />
 			</fileset>
 			<fileset dir="${common.ivy.lib.dir}">
-				<include name="*.jar"/>
+				<include name="*.jar" />
 			</fileset>
 		</copy>
 
-		<exec dir="${dist.dir}" executable="sh" failonerror="true">
-			<env key="BASE_NATIVE_LIB_DIR" value="${lib.dir}/native"/>
-			<env key="BUILD_NATIVE_DIR" value="${build.dir}/native"/>
-			<env key="DIST_LIB_DIR" value="${dist.dir}/lib/native"/>
-		</exec>
-
 		<copy todir="${build.dir}/${final.name}/bin">
-			<fileset dir="${basedir}/bin"/>
+			<fileset dir="${basedir}/bin" />
 		</copy>
 
 		<copy todir="${build.dir}/${final.name}/conf">
 			<fileset dir="${basedir}/conf">
-                                <exclude name="hadoop-metrics.properties" />
-                        </fileset>
+				<exclude name="hadoop-metrics.properties" />
+			</fileset>
+		</copy>
+		<copy file="${basedir}/conf/hadoop-metrics.properties" tofile="${build.dir}/${final.name}/conf/hadoop-metrics.properties">
+			<filterchain>
+				<replacetokens>
+					<token key="CHUKWA_LOG_DIR" value="${CHUKWA_LOG_DIR}" />
+				</replacetokens>
+			</filterchain>
 		</copy>
-                <copy file="${basedir}/conf/hadoop-metrics.properties"
-                            tofile="${build.dir}/${final.name}/conf/hadoop-metrics.properties">
-                        <filterchain>
-                                <replacetokens>
-                                        <token key="CHUKWA_LOG_DIR" value="${CHUKWA_LOG_DIR}"/>
-                                </replacetokens>
-                        </filterchain>
-                </copy>
 
 		<copy todir="${build.dir}/${final.name}/opt" failonerror="false">
 			<fileset dir="${opt.dir}" />
@@ -765,10 +930,14 @@
 		</copy>
 
 		<copy todir="${build.dir}/${final.name}/src" includeEmptyDirs="true">
-			<fileset dir="src" excludes="**/*.template **/docs/build/**/*"/>
+			<fileset dir="src" excludes="**/*.template **/docs/build/**/*" />
+		</copy>
+
+		<copy todir="${build.dir}/${final.name}/docs" includeEmptyDirs="true">
+			<fileset dir="${build.docs}" excludes="**/*.template **/docs/build/**/*" />
 		</copy>
 
-		<copy todir="${build.dir}/${final.name}" file="build.xml"/>
+		<copy todir="${build.dir}/${final.name}" file="build.xml" />
 
 	</target>
 
@@ -817,51 +986,48 @@
 		</macro_tar>
 	</target>
 
-        <target name="rpm" depends="tar" description="Make release rpm">
-		<mkdir dir="${build.dir}/BUILD"/>
-		<mkdir dir="${build.dir}/RPMS"/>
-		<mkdir dir="${build.dir}/SOURCES"/>
-		<mkdir dir="${build.dir}/SPECS"/>
+	<target name="rpm" depends="tar" description="Make release rpm">
+		<mkdir dir="${build.dir}/BUILD" />
+		<mkdir dir="${build.dir}/RPMS" />
+		<mkdir dir="${build.dir}/SOURCES" />
+		<mkdir dir="${build.dir}/SPECS" />
 		<copy todir="${build.dir}/SOURCES">
 			<fileset dir="${build.dir}">
-			        <include name="${final.name}.tar.gz" />
-                        </fileset>
-                </copy>
-                <copy file="${basedir}/tools/specs/chukwa.spec"
-                            tofile="${build.dir}/SPECS/chukwa.spec" >
-                        <filterchain>
-                                <replacetokens>
-                                        <token key="chukwaVersion" value="${chukwaVersion}"/>
-                                        <token key="chukwaRelease" value="${chukwaRelease}"/>
-                                        <token key="build.dir" value="${build.dir}"/>
-                                        <token key="rpm.prefix" value="${rpm.prefix}"/>
-                                        <token key="rpm.conf.dir" value="${rpm.conf.dir}"/>
-                                        <token key="rpm.uid" value="${rpm.uid}"/>
-                                        <token key="rpm.gid" value="${rpm.gid}"/>
-                                </replacetokens>
-                        </filterchain>
-                </copy>
-		<rpm specFile="chukwa.spec" topDir="${build.dir}" cleanBuildDir="true" failOnError="true"/>
-        </target>
+				<include name="${final.name}.tar.gz" />
+			</fileset>
+		</copy>
+		<copy file="${basedir}/tools/specs/chukwa.spec" tofile="${build.dir}/SPECS/chukwa.spec">
+			<filterchain>
+				<replacetokens>
+					<token key="chukwaVersion" value="${chukwaVersion}" />
+					<token key="chukwaRelease" value="${chukwaRelease}" />
+					<token key="build.dir" value="${build.dir}" />
+					<token key="rpm.prefix" value="${rpm.prefix}" />
+					<token key="rpm.conf.dir" value="${rpm.conf.dir}" />
+					<token key="rpm.uid" value="${rpm.uid}" />
+					<token key="rpm.gid" value="${rpm.gid}" />
+				</replacetokens>
+			</filterchain>
+		</copy>
+		<rpm specFile="chukwa.spec" topDir="${build.dir}" cleanBuildDir="true" failOnError="true" />
+	</target>
 
-        <!-- ================================================================== -->
+	<!-- ================================================================== -->
 	<!-- Perform audit activities for the release                           -->
-  	<!-- ================================================================== -->
-  	<target name="releaseaudit" depends="package,ivy-retrieve-releaseaudit" description="Release Audit activities">
-    		<java classname="${rat.reporting.classname}" fork="true">
-      			<classpath refid="releaseaudit-classpath"/>
-      			<arg value="${build.dir}/${final.name}"/>
-    		</java>
-  	</target>
-
-	<target name="ivy-retrieve-releaseaudit" depends="ivy-resolve-releaseaudit"
-    		description="Retrieve Ivy-managed artifacts for the compile configurations">
-    		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings"
-      			pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
-    		<ivy:cachepath pathid="releaseaudit-classpath" conf="releaseaudit"/>
-  	</target>
+	<!-- ================================================================== -->
+	<target name="releaseaudit" depends="package,ivy-retrieve-releaseaudit" description="Release Audit activities">
+		<java classname="${rat.reporting.classname}" fork="true">
+			<classpath refid="releaseaudit-classpath" />
+			<arg value="${build.dir}/${final.name}" />
+		</java>
+	</target>
+
+	<target name="ivy-retrieve-releaseaudit" depends="ivy-resolve-releaseaudit" description="Retrieve Ivy-managed artifacts for the compile configurations">
+		<ivy:retrieve settingsRef="${ant.project.name}.ivy.settings" pattern="${build.ivy.lib.dir}/${ivy.artifact.retrieve.pattern}" />
+		<ivy:cachepath pathid="releaseaudit-classpath" conf="releaseaudit" />
+	</target>
 
 	<target name="ivy-resolve-releaseaudit" depends="ivy-init-local">
-    		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="releaseaudit"/>
-  	</target>
+		<ivy:resolve settingsRef="${ant.project.name}.ivy.settings" conf="releaseaudit" />
+	</target>
 </project>

Modified: hadoop/chukwa/branches/chukwa-0.1/ivy.xml
URL: http://svn.apache.org/viewvc/hadoop/chukwa/branches/chukwa-0.1/ivy.xml?rev=766749&r1=766748&r2=766749&view=diff
==============================================================================
--- hadoop/chukwa/branches/chukwa-0.1/ivy.xml (original)
+++ hadoop/chukwa/branches/chukwa-0.1/ivy.xml Mon Apr 20 16:49:28 2009
@@ -12,15 +12,23 @@
     <conf name="default" extends="master,runtime"/>
     <conf name="master" description="contains the artifact but no dependencies"/>
     <conf name="runtime" description="runtime but not the artifact" />
-    <!--Private configurations. -->
+    <conf name="mandatory" description="contains the critical  dependencies"
+      extends="commons-logging,log4j"/>
+    <conf name="jetty" description="Jetty provides the in-VM HTTP daemon" extends="commons-logging"/>
 
+    <!--Private configurations. -->
+    <conf name="commons-logging" visibility="private"/>
     <conf name="common" visibility="private" 
       extends="jetty"
       description="artifacts needed to compile/test the application"/>
     <conf name="jetty" visibility="private" />
     <conf name="releaseaudit" visibility="private"
 	description="Artifacts required for releaseaudit target"/>
-    
+    <conf name="log4j" visibility="private"/>
+    <conf name="jdiff" visibility="private" extends="log4j,jetty"/>
+    <conf name="javadoc" visibility="private" description="artiracts required while performing doc generation"
+      extends="common,mandatory,jetty"/>
+ 
   </configurations>
 
   <publications>
@@ -28,6 +36,14 @@
     <artifact conf="master"/>
   </publications>
   <dependencies>
+    <dependency org="jdiff"
+      name="jdiff"
+      rev="${jdiff.version}"
+      conf="jdiff->default"/>
+    <dependency org="xerces"
+      name="xerces"
+      rev="${xerces.version}"
+      conf="jdiff->default"/>
    <dependency org="commons-fileupload"
       name="commons-fileupload"
       rev="${commons-fileupload.version}"

Modified: hadoop/chukwa/branches/chukwa-0.1/ivy/libraries.properties
URL: http://svn.apache.org/viewvc/hadoop/chukwa/branches/chukwa-0.1/ivy/libraries.properties?rev=766749&r1=766748&r2=766749&view=diff
==============================================================================
--- hadoop/chukwa/branches/chukwa-0.1/ivy/libraries.properties (original)
+++ hadoop/chukwa/branches/chukwa-0.1/ivy/libraries.properties Mon Apr 20 16:49:28 2009
@@ -37,4 +37,6 @@
 mysql-connector.version=5.1.6
 
 rats-lib.version=0.5.1
-
+jdiff.version=1.0.9
+xmlenc.version=0.52
+xerces.version=1.4.4

Added: hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesFancyStyle.css
URL: http://svn.apache.org/viewvc/hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesFancyStyle.css?rev=766749&view=auto
==============================================================================
--- hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesFancyStyle.css (added)
+++ hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesFancyStyle.css Mon Apr 20 16:49:28 2009
@@ -0,0 +1,170 @@
+/*
+* 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.
+*/
+/**
+ * General
+ */
+
+img { border: 0; }
+
+#content table {
+  border: 0;
+  width: 100%;
+}
+/*Hack to get IE to render the table at 100%*/
+* html #content table { margin-left: -3px; }
+
+#content th,
+#content td {
+  margin: 0;
+  padding: 0;
+  vertical-align: top;
+}
+
+.clearboth {
+  clear: both;
+}
+
+.note, .warning, .fixme {
+  border: solid black 1px;
+  margin: 1em 3em;
+}
+
+.note .label {
+  background: #369;
+  color: white;
+  font-weight: bold;
+  padding: 5px 10px;
+}
+.note .content {
+  background: #F0F0FF;
+  color: black;
+  line-height: 120%;
+  font-size: 90%;
+  padding: 5px 10px;
+}
+.warning .label {
+  background: #C00;
+  color: white;
+  font-weight: bold;
+  padding: 5px 10px;
+}
+.warning .content {
+  background: #FFF0F0;
+  color: black;
+  line-height: 120%;
+  font-size: 90%;
+  padding: 5px 10px;
+}
+.fixme .label {
+  background: #C6C600;
+  color: black;
+  font-weight: bold;
+  padding: 5px 10px;
+}
+.fixme .content {
+  padding: 5px 10px;
+}
+
+/**
+ * Typography
+ */
+
+body {
+  font-family: verdana, "Trebuchet MS", arial, helvetica, sans-serif;
+  font-size: 100%;
+}
+
+#content {
+  font-family: Georgia, Palatino, Times, serif;
+  font-size: 95%;
+}
+#tabs {
+  font-size: 70%;
+}
+#menu {
+  font-size: 80%;
+}
+#footer {
+  font-size: 70%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+  font-family: "Trebuchet MS", verdana, arial, helvetica, sans-serif;
+  font-weight: bold;
+  margin-top: 1em;
+  margin-bottom: .5em;
+}
+
+h1 {
+    margin-top: 0;
+    margin-bottom: 1em;
+  font-size: 1.4em;
+  background-color: 73CAFF
+}
+#content h1 {
+  font-size: 160%;
+  margin-bottom: .5em;
+}
+#menu h1 {
+  margin: 0;
+  padding: 10px;
+  background: #336699;
+  color: white;
+}
+h2 { 
+  font-size: 120%;
+  background-color: 73CAFF
+}
+h3 { font-size: 100%; }
+h4 { font-size: 90%; }
+h5 { font-size: 80%; }
+h6 { font-size: 75%; }
+
+p {
+  line-height: 120%;
+  text-align: left;
+  margin-top: .5em;
+  margin-bottom: 1em;
+}
+
+#content li,
+#content th,
+#content td,
+#content li ul,
+#content li ol{
+  margin-top: .5em;
+  margin-bottom: .5em;
+}
+
+
+#content li li,
+#minitoc-area li{
+  margin-top: 0em;
+  margin-bottom: 0em;
+}
+
+#content .attribution {
+  text-align: right;
+  font-style: italic;
+  font-size: 85%;
+  margin-top: 1em;
+}
+
+.codefrag {
+  font-family: "Courier New", Courier, monospace;
+  font-size: 110%;
+}

Added: hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesSimpleStyle.css
URL: http://svn.apache.org/viewvc/hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesSimpleStyle.css?rev=766749&view=auto
==============================================================================
--- hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesSimpleStyle.css (added)
+++ hadoop/chukwa/branches/chukwa-0.1/src/docs/changes/ChangesSimpleStyle.css Mon Apr 20 16:49:28 2009
@@ -0,0 +1,49 @@
+/*
+* 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.
+*/
+
+body {
+  font-family: Courier New, monospace;
+  font-size: 10pt;
+}
+
+h1 {
+  font-family: Courier New, monospace;
+  font-size: 10pt;
+}
+
+h2 {
+  font-family: Courier New, monospace;
+  font-size: 10pt; 
+}
+
+h3 {
+  font-family: Courier New, monospace;
+  font-size: 10pt; 
+}
+
+a:link {
+  color: blue;
+}
+
+a:visited {
+  color: purple; 
+}
+
+li {
+  margin-top: 1em;
+  margin-bottom: 1em;
+}



Mime
View raw message