farra       2004/03/08 08:00:23

  Modified:    fortress/examples maven.xml project.xml
               fortress/examples/src/java/org/apache/avalon/fortress/examples/swing
                        Main.java
               fortress/examples/src/java/org/apache/avalon/fortress/examples/viewer
                        Main.java
  Added:       fortress/examples README.txt
               fortress/examples/src/test test.txt
  Log:
  Fixed the examples.  They should now build _AND_run.
  Project.xml and maven.xml are now independent of the avalon buildsystem.
  Disabled instrumentation since we need altrmi binaries
  
  Revision  Changes    Path
  1.4       +68 -50    avalon/fortress/examples/maven.xml
  
  Index: maven.xml
  ===================================================================
  RCS file: /home/cvs/avalon/fortress/examples/maven.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- maven.xml 17 Jun 2003 17:28:38 -0000      1.3
  +++ maven.xml 8 Mar 2004 16:00:22 -0000       1.4
  @@ -7,42 +7,19 @@
   
       <!-- include the avalon-wide custom project properties -->
       <property file="${basedir}/project.properties"/>
  -    <property file="${basedir}/../project.properties"/>
  -    <property file="${basedir}/../../project.properties"/>
  -    <property file="${basedir}/../../../project.properties"/>
  -    <property file="${basedir}/../../../../project.properties"/>
  -
  -    <goal name="check">
  -        <!-- friendly error in case file is not available -->
  -        <ant:available file="${avalon.buildsystem}/maven-common.xml"
  -                property="buildsystem.available"/>
  -            <ant:fail unless="buildsystem.available">
  -            ===================================================================
  -            BUILD SYSTEM FAILURE!
  -            ===================================================================
  -
  -            a required file, ${avalon.buildsystem}/maven-common.xml, cannot be
  -            found. Try setting the avalon.buildsystem property in
  -            project.properties to the correct location.
  -            </ant:fail>
  -    </goal>
  -
  -    <!-- include the avalon-wide custom goal decorators from maven-common.xml -->
  -    <j:import file="${avalon.buildsystem}/maven-common.xml" inherit="true"/>
   
  -    <goal name="fortress:generate-meta"
  -            prereqs="avalon:init">
  +    
  +    <preGoal name="jar:jar">
           <ant:taskdef name="collect-meta"
               classname="org.apache.avalon.fortress.tools.ComponentMetaInfoCollector">
  -
               <ant:classpath>
                   <ant:path refid="maven.dependency.classpath"/>
  -                <ant:pathelement path="${java.build.dir}"/>
  +                <ant:pathelement path="${maven.build.dir}/classes"/>
               </ant:classpath>
           </ant:taskdef>
   
  -        <collect-meta destdir="${java.build.dir}">
  -            <fileset dir="${java.src.dir}"/>
  +        <collect-meta destdir="${maven.build.dir}/classes">
  +            <fileset dir="src/java"/>
           </collect-meta>
   
           <ant:copy todir="${java.build.dir}">
  @@ -51,35 +28,21 @@
                   <ant:exclude name="**/package.html"/>
               </ant:fileset>
           </ant:copy>
  -    </goal>
  -
  -    <goal name="webapp"
  -            prereqs="java:jar">
  -
  -        <mkdir dir="${maven.build.dir}/servlet"/>
  -        <mkdir dir="${maven.build.dir}/servlet/WEB-INF"/>
  -        <mkdir dir="${maven.build.dir}/servlet/WEB-INF/lib"/>
  -
  -        <deploy:copy-deps
  -                todir="${maven.build.dir}/servlet/WEB-INF/lib"
  -                excludes="servletapi,junit,avalon-fortress-tools"/>
  +    </preGoal>
   
  -        <copy todir="${build.dir}/servlet/WEB-INF"
  -              file="${maven.src.dir}/conf/web.xml"/>
  -    </goal>
   
  -    <postGoal name="java:jar">
  +    <postGoal name="jar:jar">
           <jar jarfile="${maven.build.dir}/${maven.final.name}-viewer.jar"
                basedir="${maven.build.dir}/classes"
  -             includes="**">
  +             includes="**/*.*">
             <manifest>
               <attribute name="Main-Class" 
value="org.apache.avalon.fortress.examples.viewer.Main"/>
               <attribute name="Class-Path" value="logkit-1.2.jar 
avalon-framework-4.1.4.jar avalon-fortress-complete-1.1-dev.jar concurrent-1.3.1.jar 
commons-collections-2.1.jar"/>
             </manifest>
           </jar>
   
  -        <jar jarfile="${lib.dir}/${name}-swing.jar"
  -             basedir="${build.classes.dir}"
  +        <jar jarfile="${maven.build.dir}/${maven.final.name}-swing.jar"
  +             basedir="${maven.build.dir}/classes"
                includes="**/*.*">
             <manifest>
               <attribute name="Main-Class" 
value="org.apache.avalon.fortress.examples.swing.Main"/>
  @@ -87,14 +50,69 @@
             </manifest>
           </jar>
   
  -        <jar jarfile="${lib.dir}/${name}-extended.jar"
  -             basedir="${build.classes.dir}"
  +        <jar jarfile="${maven.build.dir}/${maven.final.name}-extended.jar"
  +             basedir="${maven.build.dir}/classes"
                includes="**/*.*">
             <manifest>
               <attribute name="Main-Class" 
value="org.apache.avalon.fortress.examples.extended.Main"/>
               <attribute name="Class-Path" value="logkit-1.2.jar 
avalon-framework-4.1.4.jar avalon-fortress-complete-1.1-dev.jar concurrent-1.3.1.jar 
commons-collections-2.1.jar"/>
             </manifest>
           </jar>
  -    </postGoal>
  +
  +
  +     <!-- build webapp -->
  +
  +        <mkdir dir="${maven.build.dir}/servlet"/>
  +        <mkdir dir="${maven.build.dir}/servlet/WEB-INF"/>
  +        <mkdir dir="${maven.build.dir}/servlet/WEB-INF/lib"/>
  +
  +        <deploy:copy-deps
  +                todir="${maven.build.dir}/servlet/WEB-INF/lib"
  +                excludes="servletapi,junit,avalon-fortress-tools"/>
  +
  +        <copy todir="${build.dir}/servlet/WEB-INF"
  +              file="${maven.src.dir}/conf/web.xml"/>
  +
  +        <jar jarfile="${maven.build.dir}/${maven.final.name}-servlet.war"
  +          basedir="${maven.build.dir}/servlet"
  +          includes="**/*.*" />
  +     </postGoal>
  +
  +   <goal name="run:swing">
  +    <attainGoal name="jar:jar"/>
  +       <java classname="org.apache.avalon.fortress.examples.swing.Main" fork="true" 
failonerror="true">
  +         <classpath>
  +           <pathelement path="${maven.build.dir}/${maven.final.name}.jar"/>
  +          <j:forEach var="dep" items="${pom.dependencies}">
  +           <pathelement 
path="${maven.repo.local}/${dep.artifactDirectory}/jars/${dep.artifact}"/>
  +          </j:forEach>
  +         </classpath>
  +       </java>
  +    </goal>
  +
  +   <goal name="run:viewer">
  +    <attainGoal name="jar:jar"/>
  +       <java classname="org.apache.avalon.fortress.examples.viewer.Main" 
fork="true" failonerror="true">
  +         <classpath>
  +           <pathelement path="${maven.build.dir}/${maven.final.name}.jar"/>
  +          <j:forEach var="dep" items="${pom.dependencies}">
  +           <pathelement 
path="${maven.repo.local}/${dep.artifactDirectory}/jars/${dep.artifact}"/>
  +          </j:forEach>
  +         </classpath>
  +       </java>
  +    </goal>
  +
  +   <goal name="run:extended">
  +    <attainGoal name="jar:jar"/>
  +       <java classname="org.apache.avalon.fortress.examples.extended.Main" 
fork="true" failonerror="true">
  +         <classpath>
  +           <pathelement path="${maven.build.dir}/${maven.final.name}.jar"/>
  +          <j:forEach var="dep" items="${pom.dependencies}">
  +           <pathelement 
path="${maven.repo.local}/${dep.artifactDirectory}/jars/${dep.artifact}"/>
  +          </j:forEach>
  +         </classpath>
  +       </java>
  +    </goal>
  +
   
   </project>
  
  
  
  1.4       +96 -55    avalon/fortress/examples/project.xml
  
  Index: project.xml
  ===================================================================
  RCS file: /home/cvs/avalon/fortress/examples/project.xml,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- project.xml       8 Mar 2004 14:47:11 -0000       1.3
  +++ project.xml       8 Mar 2004 16:00:22 -0000       1.4
  @@ -2,12 +2,12 @@
   
   <project>
   
  -    <extend>${avalon.buildsystem}/project-common.xml</extend>
  +    <pomVersion>3</pomVersion>
   
       <name>Avalon-Fortress-Examples</name>
       <id>avalon-fortress-examples</id>
       <groupId>avalon-fortress</groupId>
  -    <currentVersion>1.0-dev</currentVersion>
  +    <currentVersion>1.1</currentVersion>
       <inceptionYear>2003</inceptionYear>
       <shortDescription>Avalon-Fortress-Examples component</shortDescription>
       <description>
  @@ -15,6 +15,68 @@
        usage.
       </description>
   
  +    <organization>
  +        <name>The Apache Software Foundation</name>
  +        <url>http://www.apache.org/</url>
  +    </organization>
  +    <inceptionYear>1997</inceptionYear>
  +    <shortDescription>Apache Server Framework</shortDescription>
  +    <description>
  +        The Avalon project is an effort to create, design, develop and
  +        maintain a common framework and set of components for
  +        applications written using the Java language.
  +    </description>
  +
  +    <package>org.apache.avalon</package>
  +    <gumpRepositoryId>avalon</gumpRepositoryId>
  +
  +    <url>http://avalon.apache.org/</url>
  +    <issueTrackingUrl>http://issues.apache.org/jira</issueTrackingUrl>
  +
  +    <repository>
  +        <connection>scm:cvs:pserver:[EMAIL 
PROTECTED]:/home/cvspublic:avalon</connection>
  +        <url>http://cvs.apache.org/viewcvs/avalon/</url>
  +    </repository>
  +
  +    <mailingLists>
  +        <mailingList>
  +            <name>Avalon User List</name>
  +            <subscribe>
  +                [EMAIL PROTECTED]
  +            </subscribe>
  +            <unsubscribe>
  +                [EMAIL PROTECTED]
  +            </unsubscribe>
  +            <archive>
  +                http://marc.theaimsgroup.com/?l=avalon-users
  +            </archive>
  +        </mailingList>
  +        <mailingList>
  +            <name>Avalon Development List</name>
  +            <subscribe>
  +                [EMAIL PROTECTED]
  +            </subscribe>
  +            <unsubscribe>
  +                [EMAIL PROTECTED]
  +            </unsubscribe>
  +            <archive>
  +                http://marc.theaimsgroup.com/?l=avalon-dev
  +            </archive>
  +        </mailingList>
  +        <mailingList>
  +            <name>Avalon CVS List</name>
  +            <subscribe>
  +                [EMAIL PROTECTED]
  +            </subscribe>
  +            <unsubscribe>
  +                [EMAIL PROTECTED]
  +            </unsubscribe>
  +            <archive>
  +                http://nagoya.apache.org/eyebrowse/SummarizeList?listId=8
  +            </archive>
  +        </mailingList>
  +    </mailingLists>
  +
       <dependencies>
           <dependency>
               <id>servletapi</id>
  @@ -24,8 +86,7 @@
           <!-- dependencies for container -->
           <dependency>
               <id>avalon-framework</id>
  -            <version>4.1.4</version>
  -            <groupId>framework</groupId>
  +            <version>4.1.5</version>
           </dependency>
           <dependency>
               <id>logkit</id>
  @@ -39,60 +100,16 @@
               <id>concurrent</id>
               <version>1.3.1</version>
           </dependency>
  -        <dependency>
  -            <id>excalibur-instrument</id>
  -            <version>1.0</version>
  -        </dependency>
  -        <dependency>
  -            <id>excalibur-instrument-manager</id>
  -            <version>1.0</version>
  -            <groupId>excalibur-instrument</groupId>
  -        </dependency>
  -        <dependency>
  -            <id>excalibur-instrument-manager-interfaces</id>
  -            <version>1.0</version>
  -            <groupId>excalibur-instrument</groupId>
  -        </dependency>
  -        <dependency>
  -            <id>excalibur-event</id>
  -            <version>1.0.3</version>
  -        </dependency>
  -        <dependency>
  -            <id>bcel</id>
  -            <version>5.1</version>
  -        </dependency>
  -        <dependency>
  -            <id>excalibur-logger</id>
  -            <version>1.0.1</version>
  -        </dependency>
  -        <dependency>
  -            <id>excalibur-sourceresolve</id>
  -            <version>1.0.1</version>
  -        </dependency>
  -        <dependency>
  -            <id>excalibur-lifecycle</id>
  -            <version>1.0</version>
  -        </dependency>
  -
  -        <!-- test -->
  -        <dependency>
  -            <id>excalibur-i18n</id>
  -            <version>1.0</version>
  -        </dependency>
  -        <dependency>
  -            <id>xalan</id>
  -            <version>2.5.1</version>
  -        </dependency>
   
  -        <!-- circular! -->
  +     <!-- fortress dependencies -->
           <dependency>
               <id>avalon-fortress-tools</id>
  -            <version>1.1</version>
  +         <version>1.1</version>
               <groupId>avalon-fortress</groupId>
           </dependency>
           <dependency>
               <id>avalon-fortress-container</id>
  -            <version>1.1</version>
  +         <version>complete-1.1</version>
               <groupId>avalon-fortress</groupId>
           </dependency>
   
  @@ -105,11 +122,35 @@
               <id>ant</id>
               <version>1.5.1</version>
           </dependency>
  -        <dependency>
  -            <id>qdox</id>
  -            <version>1.2</version>
  -        </dependency>
       </dependencies>
   
  +    <build>
  +        <nagEmailAddress>[EMAIL PROTECTED]</nagEmailAddress>
  +        <sourceDirectory>src/java</sourceDirectory>
  +        <unitTestSourceDirectory>src/test</unitTestSourceDirectory>
  +
  +        <!-- Unit test cases -->
  +        <unitTest>
  +            <includes>
  +                <include>**/*TestCase.java</include>
  +            </includes>
  +            <excludes>
  +                <exclude>**/Abstract*</exclude>
  +            </excludes>
  +        </unitTest>
  +
  +        <!-- Resources that are packaged up inside the JAR file -->
  +        <resources>
  +          <resource>
  +          <directory>${basedir}/src/java</directory>
  +            <includes>
  +              <include>**/*.xconf</include>
  +              <include>**/*.xlog</include>
  +           <include>**/*.instruments</include>
  +            </includes>
  +          </resource>
  +        </resources>
  +
  +    </build>
   
   </project>
  
  
  
  1.1                  avalon/fortress/examples/README.txt
  
  Index: README.txt
  ===================================================================
  
  
  
                            APACHE AVALON FORTRESS EXAMPLES
  
  To Build:
     
     You will need Apache Maven to run these examples
     [http://maven.apache.org]
  
     1. Move to the root directory (fortress/examples)
     2. Run "maven jar:jar" to build
     3. This will build the following
  
  target/avalon-fortress-examples-1.1-extended.jar  
  target/avalon-fortress-examples-1.1-swing.jar
  target/avalon-fortress-examples-1.1-viewer.jar
  target/avalon-fortress-examples-1.1.jar
  target/avalon-fortress-examples-1.1-servlet.war
  
  
  The Examples:
  
     1. Extended Container 
        Main Class:  org.apache.avalon.fortress.examples.extended.Main
        Shows an extended container and excalibur lifecycle extensions
        Example results are recorded in a log file
        To Run:  maven run:extended
  
     2. Swing Container
        Main Class: org.apache.avalon.fortress.examples.swing.Main
        Shows a swing-based container.  Uses the translator component
        To Run:  maven run:swing
  
     3. Viewer Container
        Main Class:  org.apache.avalon.fortress.examples.viewer.Main
        Another swing example that does component lookups
        To Run:  maven run:viewer
  
     4. Fortress Servlet
        Shows an fortress container embedded in a servlet
        To Run:  launch the 'war' file in your favorite servlet
        container (ie- tomcat)
  
  Notes:
  
     * For your own Fortress examples, please look at the project.xml
       and maven.xml.  This will show you what dependencies you need and
       how to generate the Fortress meta-data via maven.
  
     * For other examples see avalon-sandbox/examples
        
  
  
  1.10      +5 -2      
avalon/fortress/examples/src/java/org/apache/avalon/fortress/examples/swing/Main.java
  
  Index: Main.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/fortress/examples/src/java/org/apache/avalon/fortress/examples/swing/Main.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- Main.java 24 Feb 2004 22:31:22 -0000      1.9
  +++ Main.java 8 Mar 2004 16:00:22 -0000       1.10
  @@ -44,7 +44,10 @@
           config.setContainerClass( SwingContainer.class );
           config.setContainerConfiguration( 
"resource://org/apache/avalon/fortress/examples/swing/SwingContainer.xconf" );
           config.setLoggerManagerConfiguration( 
"resource://org/apache/avalon/fortress/examples/swing/SwingContainer.xlog" );
  -        config.setInstrumentManagerConfiguration( 
"resource://org/apache/avalon/fortress/examples/swing/SwingContainer.instruments" );
  +
  +        // need the altrmi binaries
  +
  +     //   config.setInstrumentManagerConfiguration( 
"resource://org/apache/avalon/fortress/examples/swing/SwingContainer.instruments" );
   
           // Get the root container initialized
           ContainerManager cm = new DefaultContainerManager( config.getContext() );
  
  
  
  1.11      +4 -2      
avalon/fortress/examples/src/java/org/apache/avalon/fortress/examples/viewer/Main.java
  
  Index: Main.java
  ===================================================================
  RCS file: 
/home/cvs/avalon/fortress/examples/src/java/org/apache/avalon/fortress/examples/viewer/Main.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- Main.java 24 Feb 2004 22:31:22 -0000      1.10
  +++ Main.java 8 Mar 2004 16:00:23 -0000       1.11
  @@ -47,7 +47,9 @@
               config.setContainerClass( ComponentViewer.class );
               config.setContainerConfiguration( 
"resource://org/apache/avalon/fortress/examples/viewer/ComponentViewer.xconf" );
               config.setLoggerManagerConfiguration( 
"resource://org/apache/avalon/fortress/examples/viewer/ComponentViewer.xlog" );
  -            config.setInstrumentManagerConfiguration( 
"resource://org/apache/avalon/fortress/examples/viewer/ComponentViewer.instruments" );
  +
  +            // needs the altrmi binaries
  +         //   config.setInstrumentManagerConfiguration( 
"resource://org/apache/avalon/fortress/examples/viewer/ComponentViewer.instruments" );
   
               cm = new DefaultContainerManager( config.getContext() );
               org.apache.avalon.framework.container.ContainerUtil.initialize( cm );
  
  
  
  1.1                  avalon/fortress/examples/src/test/test.txt
  
  Index: test.txt
  ===================================================================
  # placeholder
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to