<?xml version="1.0" standalone="no" ?>

<!--  FAI_Ant.xml	Course Outline in XML format
 *
 * Copyright 2009 Affinity IT Training, LLC. All Rights Reserved.
 *
 -->

<!DOCTYPE FAI:CourseOutline SYSTEM "FAI_CourseOutline.dtd">

<?xml-stylesheet type="text/xsl" href="FAI_CourseOutline.xsl" ?>	

<FAI:CourseOutline FAI:link="FAI_Ant.xml"
     xmlns:FAI="http://www.fisher-assoc.com/DTDs/FAI_CourseOutline.dtd" >

  <FAI:CourseTitle FAI:level="Intermediate"  FAI:code="Ant" >
    Building Projects With Ant
  </FAI:CourseTitle>  

  <FAI:CourseCategory>Development</FAI:CourseCategory>
  <FAI:CourseCategory>Tools</FAI:CourseCategory>

  <FAI:SummaryInfo>

    <FAI:CourseDesc FAI:version="1.0" >
      Ant is a popular open-source tool for managing complex software build processes.  
      This course explains the Ant framework and provides 
      the syntax, techniques, and strategies necessary 
      to manage your own build process using Ant.
    </FAI:CourseDesc>

    <FAI:CourseDuration>
      1 day
    </FAI:CourseDuration>

    <FAI:CourseAudience>
      Java Developers seeking to increase their productivity 
      through the utilization of a powerful tool 
      for managing the software build process.
    </FAI:CourseAudience>

    <FAI:CourseObjectives>

      <FAI:Objective FAI:desc="Understand what Ant is and what it can do" />
      <FAI:Objective FAI:desc="Be familiar with the anatomy of a generic &quot;build&quot; file" />
      <FAI:Objective FAI:desc="Understand how to compile, test, document, package and deploy Java based programs" />
      <FAI:Objective FAI:desc="Understand how Ant can be combined with Junit for unit testing and reporting" />
      <FAI:Objective FAI:desc="Be familiar with how sub-projects can be combined into larger builds using Ant" />

    </FAI:CourseObjectives>

    <FAI:CourseSetupList>

      <FAI:Setup FAI:desc="Java 2 Standard Edition (J2SE)" 
      		 FAI:link="http://www.java.sun.com/downloads" />
      <FAI:Setup FAI:desc="Ant Download" 
      		 FAI:link="http://ant.apache.org/bindownload.cgi" />
      <FAI:Setup FAI:desc="JUnit Download (preferred)" 
      		 FAI:link="http://www.junit.org" />
      <FAI:Setup FAI:desc="Xerces XML Parser (or equivalent preferred)" 
      		 FAI:link="http://www.apache.org" />

    </FAI:CourseSetupList>    

    <FAI:CourseTextList>

      <FAI:Text FAI:title="Course Workbook" />

    </FAI:CourseTextList>    

    <FAI:CoursePrerequisiteList>

      <FAI:CoursePrerequisite FAI:title="Java Fundamentals" 
			      FAI:link="FAI_IntroJava.xml" />

      <FAI:CoursePrerequisite FAI:title="JUnit (preferred)" 
			      FAI:link="FAI_JUnit.xml" />

    </FAI:CoursePrerequisiteList>    

  </FAI:SummaryInfo>  

  <FAI:TopicList>

    <FAI:SuperTopic FAI:title="Introduction">
      <FAI:Topic FAI:title="Welcome" />
      <FAI:Topic FAI:title="Prerequisites and Setup" />
      <FAI:Topic FAI:title="Course Objectives" />
      <FAI:Topic FAI:title="What is Ant ?" />
      <FAI:Topic FAI:title="Example: Hello World" />
      <FAI:Topic FAI:title="XML Review" />
      <FAI:Topic FAI:title="The &lt;project&gt; Element" />
      <FAI:Topic FAI:title="The &lt;property&gt; Element" />
      <FAI:Topic FAI:title="The &lt;target&gt; Element" />
      <FAI:Topic FAI:title="Tasks" />
      <FAI:Topic FAI:title="Specifying Files and Directories" />
      <FAI:Topic FAI:title="The &lt;javac&gt; Element" />
      <FAI:Topic FAI:title="The &lt;jar&gt; Element" />
      <FAI:Topic FAI:title="Example: Building Hello World" />
      <FAI:Topic FAI:title="Running Ant" />
      <FAI:Topic FAI:title="Lab Exercise: Using Build Files" />
      <FAI:Topic FAI:title="Quiz" />
    </FAI:SuperTopic>
			
    <FAI:SuperTopic FAI:title="Managing Files" >
      <FAI:Topic FAI:title="The &lt;copy&gt; Element" />
      <FAI:Topic FAI:title="The &lt;fileset&gt; Data Type" />
      <FAI:Topic FAI:title="Includes and Excludes" />
      <FAI:Topic FAI:title="The &lt;patternset&gt; Data Type" />
      <FAI:Topic FAI:title="The &lt;filelist&gt; Data Type" />
      <FAI:Topic FAI:title="Example: DependsetExample" />
      <FAI:Topic FAI:title="The &lt;replace&gt; Element" />
      <FAI:Topic FAI:title="Example: Replacing Text" />
      <FAI:Topic FAI:title="The &lt;filter&gt; Element" />
      <FAI:Topic FAI:title="The &lt;filterset&gt; Data Type" />
      <FAI:Topic FAI:title="The &lt;path&gt; Data Type" />
      <FAI:Topic FAI:title="Mapping Files" />
      <FAI:Topic FAI:title="Moving Files" />
      <FAI:Topic FAI:title="Lab Exercise: Backups and Archives" />
      <FAI:Topic FAI:title="Quiz" />
    </FAI:SuperTopic>
			
    <FAI:SuperTopic FAI:title="Documentation and Testing" >
      <FAI:Topic FAI:title="javadoc Comments" />
      <FAI:Topic FAI:title="Example Program: Javadoc Tags" />
      <FAI:Topic FAI:title="Running javadoc" />
      <FAI:Topic FAI:title="The &lt;javadoc&gt; Element" />
      <FAI:Topic FAI:title="Example: Javadoc Options" />
      <FAI:Topic FAI:title="Unit Testing" />
      <FAI:Topic FAI:title="JUnit Example" />
      <FAI:Topic FAI:title="The &lt;junit&gt; Element" />
      <FAI:Topic FAI:title="Example: Testing With Ant" />
      <FAI:Topic FAI:title="Generating JUnit Test Reports" />
      <FAI:Topic FAI:title="Lab Exercise: Backups and Archives" />
      <FAI:Topic FAI:title="Quiz" />
    </FAI:SuperTopic>

    <FAI:SuperTopic FAI:title="Managing Large Projects	" >
      <FAI:Topic FAI:title="Using Environment Variables" />
      <FAI:Topic FAI:title="Conditional Execution" />
      <FAI:Topic FAI:title="Updating Timestamps" />
      <FAI:Topic FAI:title="Conditional Execution" />
      <FAI:Topic FAI:title="Example: Conditional Execution" />
      <FAI:Topic FAI:title="Parameterized Targets" />
      <FAI:Topic FAI:title="Executing Other Build Files" />
      <FAI:Topic FAI:title="The &lt;ant&gt; Element" />
      <FAI:Topic FAI:title="Using Properties" />
      <FAI:Topic FAI:title="Remote Files" />
      <FAI:Topic FAI:title="Managing Archives" />
      <FAI:Topic FAI:title="Version Control" />
      <FAI:Topic FAI:title="Lab Exercise: Lock Out" />
      <FAI:Topic FAI:title="Quiz" />
    </FAI:SuperTopic>
			
    <FAI:SuperTopic FAI:title="External Program Execution" >
      <FAI:Topic FAI:title="Executing External Programs" />
      <FAI:Topic FAI:title="Pausing and Sending Email" />
      <FAI:Topic FAI:title="Example: ApplyExample.xml" />
      <FAI:Topic FAI:title="Executing Java Classes" />
      <FAI:Topic FAI:title="Example: Executing A Java Class" />
      <FAI:Topic FAI:title="Processing XML Files" />
      <FAI:Topic FAI:title="Example: XML Example" />
      <FAI:Topic FAI:title="Lab Exercise: Time Out" />
      <FAI:Topic FAI:title="Quiz" />
    </FAI:SuperTopic>
	
  </FAI:TopicList>

</FAI:CourseOutline>

