continuum-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Venisse" <eveni...@apache.org>
Subject Re: svn commit: r725818 [1/2] - in /continuum/branches/continuum-osgi-prototype: ./ continuum-app/ continuum-app/src/ continuum-app/src/main/ continuum-app/src/main/assembly/ continuum-app/src/main/resources/ continuum-build-plugin/ continuum-build-p
Date Thu, 11 Dec 2008 21:38:35 GMT
Hi,

I added this prototype, based on OSGI/Felix. It implement the specifications
written by Olivier [1] for a plugins system in Continuum.

This code isn't based on the Continuum code because it is only a prototype
to show how it is easy to implement it. With this code, you can see it will
be easy to add it in Continuum, except the difficulty of the refactoring of
Continuum core to some plugins.

How to look at it:
- checkout it and run 'mvn clean install
- go to continuum-app/target and unarchive continuum-app tar.gz file
- go to continuum-app/target/continuum-app/bin and launch run.sh

With this command the prototype will start and run all phases defined in the
plugin manager and plugins attached to specific phases.
For the sample, I implemented two very basic plugins (BuildPlugin and
MyNotificationPlugin)

Plugins must be installed under the plugins directory in the app.

You can look at continuum-build-plugin and
continuum-commandline-notification-plugin modules to see how to create a new
plugin. Important things to look at are the pom, the Activator class (I'll
probably find something later to remove it) and the plugin implementation
that must implements a specific interface for a specific phase.

I hope you'll can look at it and reply with comments.

In future, I want to extend this mechanism to the UI so users will can
implements new pages like reports with plugins.

[1] http://cwiki.apache.org/confluence/display/CONTINUUM/Continuum+Lifecycle

Emmanuel


On Thu, Dec 11, 2008 at 10:21 PM, <evenisse@apache.org> wrote:

> Author: evenisse
> Date: Thu Dec 11 13:21:06 2008
> New Revision: 725818
>
> URL: http://svn.apache.org/viewvc?rev=725818&view=rev
> Log:
> Add OSGI plugins system prototype
>
> Added:
>    continuum/branches/continuum-osgi-prototype/continuum-app/
>    continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml
> (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-app/src/
>    continuum/branches/continuum-osgi-prototype/continuum-app/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/
>
>  continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/
>
>  continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-build-plugin/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-builder/
>    continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml
> (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-builder/src/
>    continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-model/
>    continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml
> (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-model/src/
>    continuum/branches/continuum-osgi-prototype/continuum-model/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-plugin-api/
>    continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreUpdateSourcesPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/SendNotificationPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/UpdateSourcesPlugin.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/builder/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/builder/Builder.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/builder/Phase.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/context/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/context/ProjectInformation.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/context/ProjectType.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/context/ScmInformation.java
>   (with props)
>    continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/pom.xml
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/continuum/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/continuum/plugin/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/continuum/plugin/manager/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/continuum/plugin/manager/BuilderTracker.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/continuum/plugin/manager/HostActivator.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/java/org/apache/continuum/plugin/manager/PluginManager.java
>   (with props)
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/resources/
>
>  continuum/branches/continuum-osgi-prototype/continuum-plugin-manager/src/main/resources/osgi-manager.properties
>   (with props)
>    continuum/branches/continuum-osgi-prototype/pom.xml   (with props)
>
> Added: continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml?rev=725818&view=auto
>
> ==============================================================================
> --- continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml
> (added)
> +++ continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml Thu
> Dec 11 13:21:06 2008
> @@ -0,0 +1,70 @@
> +<project>
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-plugins</artifactId>
> +    <version>1.4-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-app</artifactId>
> +  <packaging>pom</packaging>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-plugin-manager</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-builder</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-build-plugin</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-commandline-notification-plugin</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.felix</groupId>
> +      <artifactId>org.osgi.compendium</artifactId>
> +      <version>1.2.0</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.slf4j</groupId>
> +      <artifactId>slf4j-api</artifactId>
> +      <version>1.4.3</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.slf4j</groupId>
> +      <artifactId>slf4j-simple</artifactId>
> +      <version>1.4.3</version>
> +    </dependency>
> +  </dependencies>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-assembly-plugin</artifactId>
> +        <version>2.1</version>
> +        <executions>
> +          <execution>
> +            <phase>package</phase>
> +            <goals>
> +              <goal>single</goal>
> +            </goals>
> +          </execution>
> +        </executions>
> +        <configuration>
> +          <descriptor>src/main/assembly/bin.xml</descriptor>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-app/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,43 @@
> +<assembly>
> +  <id>continuum-app</id>
> +  <formats>
> +    <format>tar.gz</format>
> +  </formats>
> +  <dependencySets>
> +    <dependencySet>
> +      <outputDirectory>/lib</outputDirectory>
> +      <includes>
> +        <include>org.apache.continuum:continuum-plugin-manager</include>
> +        <include>org.apache.felix:org.apache.felix.main</include>
> +      </includes>
> +    </dependencySet>
> +    <dependencySet>
> +      <outputDirectory>/system</outputDirectory>
> +      <includes>
> +        <include>org.apache.continuum:continuum-plugin-api</include>
> +        <include>org.apache.continuum:continuum-model</include>
> +        <include>org.apache.continuum:continuum-builder</include>
> +        <include>org.apache.felix:org.osgi.compendium</include>
> +        <include>org.apache.felix:org.apache.felix.shell</include>
> +        <include>org.apache.felix:org.apache.felix.shell.tui</include>
> +        <include>org.slf4j:slf4j-api</include>
> +        <include>org.slf4j:slf4j-simple</include>
> +      </includes>
> +    </dependencySet>
> +    <dependencySet>
> +      <outputDirectory>/plugins</outputDirectory>
> +      <includes>
> +        <include>org.apache.continuum:continuum-build-plugin</include>
> +
>  <include>org.apache.continuum:continuum-commandline-notification-plugin</include>
> +      </includes>
> +    </dependencySet>
> +  </dependencySets>
> +  <fileSets>
> +    <fileSet>
> +      <directory>src/main/resources</directory>
> +      <outputDirectory>/bin</outputDirectory>
> +      <fileMode>0755</fileMode>
> +    </fileSet>
> +  </fileSets>
> +</assembly>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/assembly/bin.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,7 @@
> +#!/bin/sh
> +
> +cd ..
> +
> +rm -rf cache
> +
> +java -classpath
> lib/continuum-plugin-manager-1.4-SNAPSHOT.jar:system/continuum-plugin-api-1.4-SNAPSHOT.jar:lib/org.apache.felix.main-1.2.2.jar
> org.apache.continuum.plugin.manager.PluginManager
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-app/src/main/resources/run.sh
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,48 @@
> +<project>
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-plugins</artifactId>
> +    <version>1.4-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-build-plugin</artifactId>
> +  <packaging>bundle</packaging>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-plugin-api</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.felix</groupId>
> +      <artifactId>org.osgi.core</artifactId>
> +      <version>1.2.0</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.slf4j</groupId>
> +      <artifactId>slf4j-api</artifactId>
> +      <version>1.4.3</version>
> +    </dependency>
> +  </dependencies>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.felix</groupId>
> +        <artifactId>maven-bundle-plugin</artifactId>
> +        <version>1.4.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +          <instructions>
> +            <Import-Package>org.apache.continuum.plugin.api*,
> org.apache.continuum.model*, org.osgi.framework*,
> org.slf4j*</Import-Package>
> +
>  <Private-Package>org.apache.continuum.plugin.build*</Private-Package>
> +
>  <Bundle-Activator>org.apache.continuum.plugin.build.Activator</Bundle-Activator>
> +            <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
> +          </instructions>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,26 @@
> +package org.apache.continuum.plugin.build;
> +
> +import org.apache.continuum.plugin.api.BuildProjectPlugin;
> +import org.osgi.framework.BundleActivator;
> +import org.osgi.framework.BundleContext;
> +
> +import java.util.Hashtable;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class Activator
> +    implements BundleActivator
> +{
> +    public void start( BundleContext bundleContext )
> +        throws Exception
> +    {
> +        bundleContext.registerService( BuildProjectPlugin.class.getName(),
> new BuildPlugin(), new Hashtable() );
> +    }
> +
> +    public void stop( BundleContext bundleContext )
> +        throws Exception
> +    {
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/Activator.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,34 @@
> +package org.apache.continuum.plugin.build;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.BuildProjectPlugin;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +import org.slf4j.Logger;
> +import org.slf4j.LoggerFactory;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class BuildPlugin
> +    implements BuildProjectPlugin
> +{
> +    Logger log = LoggerFactory.getLogger( BuildPlugin.class );
> +
> +    public BuildPlugin()
> +    {
> +        log.info( "Starting " + getName() );
> +    }
> +
> +    public String getName()
> +    {
> +        return getClass().getName();
> +    }
> +
> +    public void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult )
> +    {
> +        log.info( "Executing " + getName() );
> +        buildResult.setResult( "OK" );
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-build-plugin/src/main/java/org/apache/continuum/plugin/build/BuildPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml?rev=725818&view=auto
>
> ==============================================================================
> --- continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml
> (added)
> +++ continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,62 @@
> +<project>
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-plugins</artifactId>
> +    <version>1.4-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-builder</artifactId>
> +  <packaging>bundle</packaging>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-plugin-api</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.felix</groupId>
> +      <artifactId>org.osgi.core</artifactId>
> +      <version>1.2.0</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.felix</groupId>
> +      <artifactId>org.osgi.compendium</artifactId>
> +      <version>1.2.0</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.slf4j</groupId>
> +      <artifactId>slf4j-api</artifactId>
> +      <version>1.4.3</version>
> +    </dependency>
> +  </dependencies>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.felix</groupId>
> +        <artifactId>maven-bundle-plugin</artifactId>
> +        <version>1.4.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +          <instructions>
> +            <Import-Package>org.apache.continuum.plugin.api*,
> org.apache.continuum.model*, org.osgi.framework*, org.osgi.util.tracker*,
> org.slf4j*</Import-Package>
> +
>  <Private-Package>org.apache.continuum.builder.impl*</Private-Package>
> +
>  <Bundle-Activator>org.apache.continuum.builder.impl.BuilderActivator</Bundle-Activator>
> +            <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
> +          </instructions>
> +        </configuration>
> +      </plugin>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-compiler-plugin</artifactId>
> +        <version>2.0.2</version>
> +        <configuration>
> +          <source>1.5</source>
> +          <target>1.5</target>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,44 @@
> +package org.apache.continuum.builder.impl;
> +
> +import org.apache.continuum.plugin.api.Plugin;
> +import org.osgi.framework.BundleContext;
> +import org.osgi.framework.ServiceReference;
> +import org.osgi.util.tracker.ServiceTracker;
> +import org.slf4j.Logger;
> +import org.slf4j.LoggerFactory;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class BuildPluginTracker
> +    extends ServiceTracker
> +{
> +    private static final Logger log = LoggerFactory.getLogger(
> BuildPluginTracker.class );
> +
> +    public BuildPluginTracker( BundleContext context, Class<? extends
> Plugin> pluginClass )
> +    {
> +        super( context, pluginClass.getName(), null );
> +    }
> +
> +    @Override
> +    public Object addingService( ServiceReference serviceReference )
> +    {
> +        log.info( "adding " + serviceReference );
> +        return super.addingService( serviceReference );
> +    }
> +
> +    @Override
> +    public void modifiedService( ServiceReference serviceReference, Object
> o )
> +    {
> +        log.info( "modified " + serviceReference );
> +        super.modifiedService( serviceReference, o );
> +    }
> +
> +    @Override
> +    public void removedService( ServiceReference serviceReference, Object
> o )
> +    {
> +        log.info( "removing " + serviceReference );
> +        super.removedService( serviceReference, o );
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuildPluginTracker.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,172 @@
> +package org.apache.continuum.builder.impl;
> +
> +import org.apache.continuum.plugin.api.BuildProjectPlugin;
> +import org.apache.continuum.plugin.api.BuildReportsPlugin;
> +import org.apache.continuum.plugin.api.DeployArtifactsPlugin;
> +import org.apache.continuum.plugin.api.EndBuildPlugin;
> +import org.apache.continuum.plugin.api.PostBuildProjectPlugin;
> +import org.apache.continuum.plugin.api.PostBuildReportsPlugin;
> +import org.apache.continuum.plugin.api.PostDeployArtifactsPlugin;
> +import org.apache.continuum.plugin.api.PostSendNotificationPlugin;
> +import org.apache.continuum.plugin.api.PostUpdateSourcesPlugin;
> +import org.apache.continuum.plugin.api.PreBuildProjectPlugin;
> +import org.apache.continuum.plugin.api.PreBuildReportsPlugin;
> +import org.apache.continuum.plugin.api.PreDeployArtifactsPlugin;
> +import org.apache.continuum.plugin.api.PreSendNotificationPlugin;
> +import org.apache.continuum.plugin.api.PreUpdateSourcesPlugin;
> +import org.apache.continuum.plugin.api.SendNotificationPlugin;
> +import org.apache.continuum.plugin.api.UpdateSourcesPlugin;
> +import org.apache.continuum.plugin.api.builder.Builder;
> +import org.apache.continuum.plugin.api.builder.Phase;
> +import org.osgi.framework.Bundle;
> +import org.osgi.framework.BundleActivator;
> +import org.osgi.framework.BundleContext;
> +
> +import java.util.HashMap;
> +import java.util.Map;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class BuilderActivator
> +    implements BundleActivator
> +{
> +    private BundleContext context;
> +
> +    //private BuildPluginTracker tracker;
> +
> +    private Map<String, BuildPluginTracker> trackers = new HashMap<String,
> BuildPluginTracker>();
> +
> +    public void start( BundleContext bundleContext )
> +        throws Exception
> +    {
> +        context = bundleContext;
> +
> +        //tracker = new BuildPluginTracker( context );
> +        //tracker.open();
> +
> +        trackers.put( Phase.PRE_UPDATE_SOURCES.getName(), createTracker(
> context, Phase.PRE_UPDATE_SOURCES ) );
> +        trackers.put( Phase.UPDATE_SOURCES.getName(), createTracker(
> context, Phase.UPDATE_SOURCES ) );
> +        trackers.put( Phase.POST_UPDATE_SOURCES.getName(), createTracker(
> context, Phase.POST_UPDATE_SOURCES ) );
> +
> +        trackers.put( Phase.PRE_BUILD_PROJECT.getName(), createTracker(
> context, Phase.PRE_BUILD_PROJECT ) );
> +        trackers.put( Phase.BUILD_PROJECT.getName(), createTracker(
> context, Phase.BUILD_PROJECT ) );
> +        trackers.put( Phase.POST_BUILD_PROJECT.getName(), createTracker(
> context, Phase.POST_BUILD_PROJECT ) );
> +
> +        trackers.put( Phase.PRE_DEPLOY_ARTIFACTS.getName(), createTracker(
> context, Phase.PRE_DEPLOY_ARTIFACTS ) );
> +        trackers.put( Phase.DEPLOY_ARTIFACTS.getName(), createTracker(
> context, Phase.DEPLOY_ARTIFACTS ) );
> +        trackers.put( Phase.POST_DEPLOY_ARTIFACTS.getName(),
> createTracker( context, Phase.POST_DEPLOY_ARTIFACTS ) );
> +
> +        trackers.put( Phase.PRE_BUILD_REPORTS.getName(), createTracker(
> context, Phase.PRE_BUILD_REPORTS ) );
> +        trackers.put( Phase.BUILD_REPORTS.getName(), createTracker(
> context, Phase.BUILD_REPORTS ) );
> +        trackers.put( Phase.POST_BUILD_REPORTS.getName(), createTracker(
> context, Phase.POST_BUILD_REPORTS ) );
> +
> +        trackers.put( Phase.PRE_SEND_NOTIFICATIONS.getName(),
> createTracker( context, Phase.PRE_SEND_NOTIFICATIONS ) );
> +        trackers.put( Phase.SEND_NOTIFICATIONS.getName(), createTracker(
> context, Phase.SEND_NOTIFICATIONS ) );
> +        trackers.put( Phase.POST_SEND_NOTIFICATIONS.getName(),
> +                      createTracker( context,
> Phase.POST_SEND_NOTIFICATIONS ) );
> +
> +        trackers.put( Phase.END_BUILD.getName(), createTracker( context,
> Phase.END_BUILD ) );
> +
> +        Builder builder = new BuilderImpl( trackers );
> +        context.registerService( Builder.class.getName(), builder, null );
> +    }
> +
> +    public void stop( BundleContext bundleContext )
> +        throws Exception
> +    {
> +        //tracker.close();
> +
> +        for ( String key : trackers.keySet() )
> +        {
> +            BuildPluginTracker tracker = trackers.get( key );
> +            tracker.close();
> +            trackers.put( key, null );
> +        }
> +        context = null;
> +    }
> +
> +    private BuildPluginTracker createTracker( BundleContext context, Phase
> phase )
> +    {
> +        BuildPluginTracker tracker = null;
> +
> +        if ( Phase.PRE_UPDATE_SOURCES.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PreUpdateSourcesPlugin.class );
> +        }
> +        else if ( Phase.UPDATE_SOURCES.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> UpdateSourcesPlugin.class );
> +        }
> +        else if ( Phase.POST_UPDATE_SOURCES.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PostUpdateSourcesPlugin.class );
> +        }
> +        else if ( Phase.PRE_BUILD_PROJECT.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PreBuildProjectPlugin.class );
> +        }
> +        else if ( Phase.BUILD_PROJECT.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> BuildProjectPlugin.class );
> +        }
> +        else if ( Phase.POST_BUILD_PROJECT.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PostBuildProjectPlugin.class );
> +        }
> +        else if ( Phase.PRE_DEPLOY_ARTIFACTS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PreDeployArtifactsPlugin.class );
> +        }
> +        else if ( Phase.DEPLOY_ARTIFACTS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> DeployArtifactsPlugin.class );
> +        }
> +        else if ( Phase.POST_DEPLOY_ARTIFACTS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PostDeployArtifactsPlugin.class );
> +        }
> +        else if ( Phase.PRE_BUILD_REPORTS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PreBuildReportsPlugin.class );
> +        }
> +        else if ( Phase.BUILD_REPORTS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> BuildReportsPlugin.class );
> +        }
> +        else if ( Phase.POST_BUILD_REPORTS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PostBuildReportsPlugin.class );
> +        }
> +        else if ( Phase.PRE_SEND_NOTIFICATIONS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PreSendNotificationPlugin.class );
> +        }
> +        else if ( Phase.SEND_NOTIFICATIONS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> SendNotificationPlugin.class );
> +        }
> +        else if ( Phase.POST_SEND_NOTIFICATIONS.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> PostSendNotificationPlugin.class );
> +        }
> +        else if ( Phase.END_BUILD.equals( phase ) )
> +        {
> +            tracker = new BuildPluginTracker( context,
> EndBuildPlugin.class );
> +        }
> +
> +        tracker.open();
> +        return tracker;
> +    }
> +
> +    public Bundle[] getBundles()
> +    {
> +        Bundle[] bundles = null;
> +        if ( context != null )
> +        {
> +            bundles = context.getBundles();
> +        }
> +        return bundles;
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderActivator.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,185 @@
> +package org.apache.continuum.builder.impl;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.BuildProjectPlugin;
> +import org.apache.continuum.plugin.api.BuildReportsPlugin;
> +import org.apache.continuum.plugin.api.EndBuildPlugin;
> +import org.apache.continuum.plugin.api.Plugin;
> +import org.apache.continuum.plugin.api.PostBuildProjectPlugin;
> +import org.apache.continuum.plugin.api.PostBuildReportsPlugin;
> +import org.apache.continuum.plugin.api.PostSendNotificationPlugin;
> +import org.apache.continuum.plugin.api.PostUpdateSourcesPlugin;
> +import org.apache.continuum.plugin.api.PreBuildProjectPlugin;
> +import org.apache.continuum.plugin.api.PreBuildReportsPlugin;
> +import org.apache.continuum.plugin.api.PreSendNotificationPlugin;
> +import org.apache.continuum.plugin.api.PreUpdateSourcesPlugin;
> +import org.apache.continuum.plugin.api.SendNotificationPlugin;
> +import org.apache.continuum.plugin.api.UpdateSourcesPlugin;
> +import org.apache.continuum.plugin.api.builder.Builder;
> +import org.apache.continuum.plugin.api.builder.Phase;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +import org.slf4j.Logger;
> +import org.slf4j.LoggerFactory;
> +
> +import java.util.Map;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class BuilderImpl
> +    implements Builder
> +{
> +    private static final Logger log = LoggerFactory.getLogger(
> BuilderImpl.class );
> +
> +    private Map<String, BuildPluginTracker> trackers;
> +
> +    public BuilderImpl( Map<String, BuildPluginTracker> trackers )
> +    {
> +        this.trackers = trackers;
> +    }
> +
> +    public void execute( int projectId, int buildDef )
> +    {
> +        log.info( "Executing build for project '" + projectId + "' with
> build def '" + buildDef + "'" );
> +
> +        BuildContext context = new BuildContext();
> +
> +        execute( Phase.PRE_UPDATE_SOURCES, context );
> +        execute( Phase.UPDATE_SOURCES, context );
> +        execute( Phase.POST_UPDATE_SOURCES, context );
> +
> +        execute( Phase.PRE_BUILD_PROJECT, context );
> +        execute( Phase.BUILD_PROJECT, context );
> +        execute( Phase.POST_BUILD_PROJECT, context );
> +
> +        execute( Phase.PRE_DEPLOY_ARTIFACTS, context );
> +        execute( Phase.DEPLOY_ARTIFACTS, context );
> +        execute( Phase.POST_DEPLOY_ARTIFACTS, context );
> +
> +        execute( Phase.PRE_BUILD_REPORTS, context );
> +        execute( Phase.BUILD_REPORTS, context );
> +        execute( Phase.POST_BUILD_REPORTS, context );
> +
> +        execute( Phase.PRE_SEND_NOTIFICATIONS, context );
> +        execute( Phase.SEND_NOTIFICATIONS, context );
> +        execute( Phase.POST_SEND_NOTIFICATIONS, context );
> +
> +        execute( Phase.END_BUILD, context );
> +    }
> +
> +    private void execute( Phase phase, BuildContext context )
> +    {
> +        log.info( "Running " + phase.getName() + " phase" );
> +        Object[] plugins = trackers.get( phase.getName() ).getServices();
> +        if ( plugins != null && plugins.length > 0 )
> +        {
> +            for ( Object obj : plugins )
> +            {
> +                Plugin p = (Plugin) obj;
> +
> +                if ( p instanceof PreUpdateSourcesPlugin )
> +                {
> +                    ( (PreUpdateSourcesPlugin) p ).execute(
> context.getProjectInformation() );
> +                }
> +                else if ( p instanceof UpdateSourcesPlugin )
> +                {
> +                    ( (UpdateSourcesPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult() );
> +                }
> +                else if ( p instanceof PostUpdateSourcesPlugin )
> +                {
> +                    ( (PostUpdateSourcesPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult() );
> +                }
> +                else if ( p instanceof PreBuildProjectPlugin )
> +                {
> +                    ( (PreBuildProjectPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult() );
> +                }
> +                else if ( p instanceof BuildProjectPlugin )
> +                {
> +                    ( (BuildProjectPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +                else if ( p instanceof PostBuildProjectPlugin )
> +                {
> +                    ( (PostBuildProjectPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +                else if ( p instanceof PreBuildReportsPlugin )
> +                {
> +                    ( (PreBuildReportsPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
> context.getBuildResult() );
> +                }
> +                else if ( p instanceof BuildReportsPlugin )
> +                {
> +                    ( (BuildReportsPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +                else if ( p instanceof PostBuildReportsPlugin )
> +                {
> +                    ( (PostBuildReportsPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +                else if ( p instanceof PreSendNotificationPlugin )
> +                {
> +                    ( (PreSendNotificationPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
> context.getBuildResult() );
> +                }
> +                else if ( p instanceof SendNotificationPlugin )
> +                {
> +                    ( (SendNotificationPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +                else if ( p instanceof PostSendNotificationPlugin )
> +                {
> +                    ( (PostSendNotificationPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +                else if ( p instanceof EndBuildPlugin )
> +                {
> +                    ( (EndBuildPlugin) p ).execute(
> context.getProjectInformation(), context.getScmResult(),
> +
>  context.getBuildResult() );
> +                }
> +            }
> +        }
> +    }
> +
> +    private class BuildContext
> +    {
> +        private ProjectInformation projectInfo = new ProjectInformation();
> +
> +        private ScmResult scmResult = new ScmResult();
> +
> +        private BuildResult buildResult = new BuildResult();
> +
> +        public ProjectInformation getProjectInformation()
> +        {
> +            return projectInfo;
> +        }
> +
> +        public void setProjectInformation( ProjectInformation projectInfo
> )
> +        {
> +            this.projectInfo = projectInfo;
> +        }
> +
> +        public ScmResult getScmResult()
> +        {
> +            return scmResult;
> +        }
> +
> +        public void setScmResult( ScmResult scmResult )
> +        {
> +            this.scmResult = scmResult;
> +        }
> +
> +        public BuildResult getBuildResult()
> +        {
> +            return buildResult;
> +        }
> +
> +        public void setBuildResult( BuildResult buildResult )
> +        {
> +            this.buildResult = buildResult;
> +        }
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-builder/src/main/java/org/apache/continuum/builder/impl/BuilderImpl.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,48 @@
> +<project>
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-plugins</artifactId>
> +    <version>1.4-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-commandline-notification-plugin</artifactId>
> +  <packaging>bundle</packaging>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-plugin-api</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.felix</groupId>
> +      <artifactId>org.osgi.core</artifactId>
> +      <version>1.2.0</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.slf4j</groupId>
> +      <artifactId>slf4j-api</artifactId>
> +      <version>1.4.3</version>
> +    </dependency>
> +  </dependencies>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.felix</groupId>
> +        <artifactId>maven-bundle-plugin</artifactId>
> +        <version>1.4.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +          <instructions>
> +            <Import-Package>org.apache.continuum.plugin.api*,
> org.apache.continuum.model*, org.osgi.framework*,
> org.slf4j*</Import-Package>
> +
>  <Private-Package>org.apache.continuum.plugin.notification*</Private-Package>
> +
>  <Bundle-Activator>org.apache.continuum.plugin.notification.Activator</Bundle-Activator>
> +            <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
> +          </instructions>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,27 @@
> +package org.apache.continuum.plugin.notification;
> +
> +import org.apache.continuum.plugin.api.SendNotificationPlugin;
> +import org.osgi.framework.BundleActivator;
> +import org.osgi.framework.BundleContext;
> +
> +import java.util.Hashtable;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class Activator
> +    implements BundleActivator
> +{
> +    public void start( BundleContext bundleContext )
> +        throws Exception
> +    {
> +        bundleContext.registerService(
> SendNotificationPlugin.class.getName(), new MyNotificationPlugin(),
> +                                       new Hashtable() );
> +    }
> +
> +    public void stop( BundleContext bundleContext )
> +        throws Exception
> +    {
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/Activator.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,28 @@
> +package org.apache.continuum.plugin.notification;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.SendNotificationPlugin;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +import org.slf4j.Logger;
> +import org.slf4j.LoggerFactory;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class MyNotificationPlugin
> +    implements SendNotificationPlugin
> +{
> +    private Logger log = LoggerFactory.getLogger(
> MyNotificationPlugin.class );
> +
> +    public String getName()
> +    {
> +        return this.getClass().getName();
> +    }
> +
> +    public void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult )
> +    {
> +        log.info( "BuildResut = " + buildResult.getResult() );
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-commandline-notification-plugin/src/main/java/org/apache/continuum/plugin/notification/MyNotificationPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added: continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml?rev=725818&view=auto
>
> ==============================================================================
> --- continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml
> (added)
> +++ continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml Thu
> Dec 11 13:21:06 2008
> @@ -0,0 +1,28 @@
> +<project>
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-plugins</artifactId>
> +    <version>1.4-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-model</artifactId>
> +  <packaging>bundle</packaging>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.felix</groupId>
> +        <artifactId>maven-bundle-plugin</artifactId>
> +        <version>1.4.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +          <instructions>
> +            <Export-Package>org.apache.continuum.model*</Export-Package>
> +            <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
> +          </instructions>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,9 @@
> +package org.apache.continuum.model;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class BuildDefinitionTemplate
> +{
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildDefinitionTemplate.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,20 @@
> +package org.apache.continuum.model;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class BuildResult
> +{
> +    private String result;
> +
> +    public String getResult()
> +    {
> +        return result;
> +    }
> +
> +    public void setResult( String result )
> +    {
> +        this.result = result;
> +    }
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/BuildResult.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,10 @@
> +package org.apache.continuum.model;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class ProjectGroup
> +{
> +}
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ProjectGroup.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,9 @@
> +package org.apache.continuum.model;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public class ScmResult
> +{
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-model/src/main/java/org/apache/continuum/model/ScmResult.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml Thu
> Dec 11 13:21:06 2008
> @@ -0,0 +1,45 @@
> +<project>
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-plugins</artifactId>
> +    <version>1.4-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-plugin-api</artifactId>
> +  <packaging>bundle</packaging>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-model</artifactId>
> +      <version>1.4-SNAPSHOT</version>
> +    </dependency>
> +  </dependencies>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.felix</groupId>
> +        <artifactId>maven-bundle-plugin</artifactId>
> +        <version>1.4.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +          <instructions>
> +
>  <Export-Package>org.apache.continuum.plugin.api*</Export-Package>
> +            <Bundle-Vendor>The Apache Software Foundation</Bundle-Vendor>
> +          </instructions>
> +        </configuration>
> +      </plugin>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-compiler-plugin</artifactId>
> +        <version>2.0.2</version>
> +        <configuration>
> +          <source>1.5</source>
> +          <target>1.5</target>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
> +
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface BuildProjectPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildProjectPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface BuildReportsPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/BuildReportsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,13 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface DeployArtifactsPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/DeployArtifactsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,16 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface EndBuildPlugin
> +    extends Plugin
> +{
> +    //with a new parameter List<BuildReport> buildReports ?
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/EndBuildPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,10 @@
> +package org.apache.continuum.plugin.api;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface Plugin
> +{
> +    String getName();
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/Plugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PostBuildProjectPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildProjectPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PostBuildReportsPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostBuildReportsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,13 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PostDeployArtifactsPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostDeployArtifactsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,16 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PostSendNotificationPlugin
> +    extends Plugin
> +{
> +    // (with a new parameter List<BuildReport> buildReports ?)
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostSendNotificationPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,14 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PostUpdateSourcesPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PostUpdateSourcesPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PreBuildProjectPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildProjectPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PreBuildReportsPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreBuildReportsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,13 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PreDeployArtifactsPlugin
> +    extends Plugin
> +{
> +    void execute( ProjectInformation projectInformation );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreDeployArtifactsPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
> Added:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java
> URL:
> http://svn.apache.org/viewvc/continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java?rev=725818&view=auto
>
> ==============================================================================
> ---
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java
> (added)
> +++
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java
> Thu Dec 11 13:21:06 2008
> @@ -0,0 +1,16 @@
> +package org.apache.continuum.plugin.api;
> +
> +import org.apache.continuum.model.BuildResult;
> +import org.apache.continuum.model.ScmResult;
> +import org.apache.continuum.plugin.api.context.ProjectInformation;
> +
> +/**
> + * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
> + * @version $Id$
> + */
> +public interface PreSendNotificationPlugin
> +    extends Plugin
> +{
> +    // (with a new parameter List<BuildReport> buildReports ?)
> +    void execute( ProjectInformation projectInformation, ScmResult
> scmResult, BuildResult buildResult );
> +}
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Propchange:
> continuum/branches/continuum-osgi-prototype/continuum-plugin-api/src/main/java/org/apache/continuum/plugin/api/PreSendNotificationPlugin.java
>
> ------------------------------------------------------------------------------
>    svn:keywords = "Author Date Id Revision"
>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message