Return-Path: Delivered-To: apmail-continuum-dev-archive@www.apache.org Received: (qmail 51127 invoked from network); 19 Dec 2008 23:49:13 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 19 Dec 2008 23:49:13 -0000 Received: (qmail 62303 invoked by uid 500); 19 Dec 2008 23:49:12 -0000 Delivered-To: apmail-continuum-dev-archive@continuum.apache.org Received: (qmail 62255 invoked by uid 500); 19 Dec 2008 23:49:12 -0000 Mailing-List: contact dev-help@continuum.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@continuum.apache.org Delivered-To: mailing list dev@continuum.apache.org Received: (qmail 62243 invoked by uid 99); 19 Dec 2008 23:49:12 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Dec 2008 15:49:12 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of oliver.lamy@gmail.com designates 209.85.218.20 as permitted sender) Received: from [209.85.218.20] (HELO mail-bw0-f20.google.com) (209.85.218.20) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Dec 2008 23:49:04 +0000 Received: by bwz13 with SMTP id 13so3575673bwz.2 for ; Fri, 19 Dec 2008 15:48:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:sender :to:subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references :x-google-sender-auth; bh=WMmxGlP2QNG8dIGwJDsIpnsM1cLvA5GStOtnN88417k=; b=hsSkQOBazd/pM0mbfg8Vj+EWNIHW4rMExb8oea7QcDvO1ayIO5ca+tlhiVyrAjbGcQ 4xXx35F/B2gMd5sodfXnWqYA724kWKVbPDTtscvGkPPurXOwULnnINrfc4Tb+JObbiNQ 33cR2H1Wf0SmAoC7BwBENl2O/yDjDrUV8AdhA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:sender:to:subject:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references:x-google-sender-auth; b=nxjBd97JGTYxz1mkDpX6PuIb3at3M6f3BfT9UHqsZxoFfSsCWrUI1PXVjcILYG3CHw uiLZgWXEUjRNbs4+R3h4hLzWOiOUligwMdFtgP35uBifBr4EkbJ4cv9qbXfCLLuO6hlL b36lD1vWejxUobrdEWJuOvyVEjU7NtsSzXGQM= Received: by 10.103.192.2 with SMTP id u2mr1435158mup.95.1229730521073; Fri, 19 Dec 2008 15:48:41 -0800 (PST) Received: by 10.103.220.2 with HTTP; Fri, 19 Dec 2008 15:48:40 -0800 (PST) Message-ID: <9948cb690812191548o3a22386j7091882c8564a83c@mail.gmail.com> Date: Sat, 20 Dec 2008 00:48:40 +0100 From: "Olivier Lamy" Sender: oliver.lamy@gmail.com To: dev@continuum.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 In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: X-Google-Sender-Auth: 5aecdc41aaeb1b78 X-Virus-Checked: Checked by ClamAV on apache.org Hi, Sorry for late response (I'm a little busy) It looks fine and "conforme" to the specs :-). As I'm a newbie in osgi, I have some questions Can we use easily spring beans ? It looks with spring dm (I will try to add some tests in the branch). Can we add dynamically plugins in the lifecycle and how ? (I mean plugins coming from a configuration in the buildDefinition). Thanks, -- Olivier 2008/12/11 Emmanuel Venisse : > 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, 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 @@ >> + >> + 4.0.0 >> + >> + org.apache.continuum >> + continuum-plugins >> + 1.4-SNAPSHOT >> + >> + continuum-app >> + pom >> + >> + >> + >> + org.apache.continuum >> + continuum-plugin-manager >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.continuum >> + continuum-builder >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.continuum >> + continuum-build-plugin >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.continuum >> + continuum-commandline-notification-plugin >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.felix >> + org.osgi.compendium >> + 1.2.0 >> + >> + >> + org.slf4j >> + slf4j-api >> + 1.4.3 >> + >> + >> + org.slf4j >> + slf4j-simple >> + 1.4.3 >> + >> + >> + >> + >> + >> + >> + org.apache.maven.plugins >> + maven-assembly-plugin >> + 2.1 >> + >> + >> + package >> + >> + single >> + >> + >> + >> + >> + src/main/assembly/bin.xml >> + >> + >> + >> + >> + >> + >> >> 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 @@ >> + >> + continuum-app >> + >> + tar.gz >> + >> + >> + >> + /lib >> + >> + org.apache.continuum:continuum-plugin-manager >> + org.apache.felix:org.apache.felix.main >> + >> + >> + >> + /system >> + >> + org.apache.continuum:continuum-plugin-api >> + org.apache.continuum:continuum-model >> + org.apache.continuum:continuum-builder >> + org.apache.felix:org.osgi.compendium >> + org.apache.felix:org.apache.felix.shell >> + org.apache.felix:org.apache.felix.shell.tui >> + org.slf4j:slf4j-api >> + org.slf4j:slf4j-simple >> + >> + >> + >> + /plugins >> + >> + org.apache.continuum:continuum-build-plugin >> + >> org.apache.continuum:continuum-commandline-notification-plugin >> + >> + >> + >> + >> + >> + src/main/resources >> + /bin >> + 0755 >> + >> + >> + >> + >> >> 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 @@ >> + >> + 4.0.0 >> + >> + org.apache.continuum >> + continuum-plugins >> + 1.4-SNAPSHOT >> + >> + continuum-build-plugin >> + bundle >> + >> + >> + >> + org.apache.continuum >> + continuum-plugin-api >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.felix >> + org.osgi.core >> + 1.2.0 >> + >> + >> + org.slf4j >> + slf4j-api >> + 1.4.3 >> + >> + >> + >> + >> + >> + >> + org.apache.felix >> + maven-bundle-plugin >> + 1.4.0 >> + true >> + >> + >> + org.apache.continuum.plugin.api*, >> org.apache.continuum.model*, org.osgi.framework*, >> org.slf4j* >> + >> org.apache.continuum.plugin.build* >> + >> org.apache.continuum.plugin.build.Activator >> + The Apache Software Foundation >> + >> + >> + >> + >> + >> + >> + >> >> 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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 @@ >> + >> + 4.0.0 >> + >> + org.apache.continuum >> + continuum-plugins >> + 1.4-SNAPSHOT >> + >> + continuum-builder >> + bundle >> + >> + >> + >> + org.apache.continuum >> + continuum-plugin-api >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.felix >> + org.osgi.core >> + 1.2.0 >> + >> + >> + org.apache.felix >> + org.osgi.compendium >> + 1.2.0 >> + >> + >> + org.slf4j >> + slf4j-api >> + 1.4.3 >> + >> + >> + >> + >> + >> + >> + org.apache.felix >> + maven-bundle-plugin >> + 1.4.0 >> + true >> + >> + >> + org.apache.continuum.plugin.api*, >> org.apache.continuum.model*, org.osgi.framework*, org.osgi.util.tracker*, >> org.slf4j* >> + >> org.apache.continuum.builder.impl* >> + >> org.apache.continuum.builder.impl.BuilderActivator >> + The Apache Software Foundation >> + >> + >> + >> + >> + org.apache.maven.plugins >> + maven-compiler-plugin >> + 2.0.2 >> + >> + 1.5 >> + 1.5 >> + >> + >> + >> + >> + >> + >> >> 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 Emmanuel Venisse >> + * @version $Id$ >> + */ >> +public class BuildPluginTracker >> + extends ServiceTracker >> +{ >> + private static final Logger log = LoggerFactory.getLogger( >> BuildPluginTracker.class ); >> + >> + public BuildPluginTracker( BundleContext context, Class> 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 Emmanuel Venisse >> + * @version $Id$ >> + */ >> +public class BuilderActivator >> + implements BundleActivator >> +{ >> + private BundleContext context; >> + >> + //private BuildPluginTracker tracker; >> + >> + private Map trackers = new HashMap> 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 Emmanuel Venisse >> + * @version $Id$ >> + */ >> +public class BuilderImpl >> + implements Builder >> +{ >> + private static final Logger log = LoggerFactory.getLogger( >> BuilderImpl.class ); >> + >> + private Map trackers; >> + >> + public BuilderImpl( Map 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 @@ >> + >> + 4.0.0 >> + >> + org.apache.continuum >> + continuum-plugins >> + 1.4-SNAPSHOT >> + >> + continuum-commandline-notification-plugin >> + bundle >> + >> + >> + >> + org.apache.continuum >> + continuum-plugin-api >> + 1.4-SNAPSHOT >> + >> + >> + org.apache.felix >> + org.osgi.core >> + 1.2.0 >> + >> + >> + org.slf4j >> + slf4j-api >> + 1.4.3 >> + >> + >> + >> + >> + >> + >> + org.apache.felix >> + maven-bundle-plugin >> + 1.4.0 >> + true >> + >> + >> + org.apache.continuum.plugin.api*, >> org.apache.continuum.model*, org.osgi.framework*, >> org.slf4j* >> + >> org.apache.continuum.plugin.notification* >> + >> org.apache.continuum.plugin.notification.Activator >> + The Apache Software Foundation >> + >> + >> + >> + >> + >> + >> + >> >> 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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 @@ >> + >> + 4.0.0 >> + >> + org.apache.continuum >> + continuum-plugins >> + 1.4-SNAPSHOT >> + >> + continuum-model >> + bundle >> + >> + >> + >> + >> + org.apache.felix >> + maven-bundle-plugin >> + 1.4.0 >> + true >> + >> + >> + org.apache.continuum.model* >> + The Apache Software Foundation >> + >> + >> + >> + >> + >> + >> + >> >> 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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 @@ >> + >> + 4.0.0 >> + >> + org.apache.continuum >> + continuum-plugins >> + 1.4-SNAPSHOT >> + >> + continuum-plugin-api >> + bundle >> + >> + >> + >> + org.apache.continuum >> + continuum-model >> + 1.4-SNAPSHOT >> + >> + >> + >> + >> + >> + >> + org.apache.felix >> + maven-bundle-plugin >> + 1.4.0 >> + true >> + >> + >> + >> org.apache.continuum.plugin.api* >> + The Apache Software Foundation >> + >> + >> + >> + >> + org.apache.maven.plugins >> + maven-compiler-plugin >> + 2.0.2 >> + >> + 1.5 >> + 1.5 >> + >> + >> + >> + >> + >> + >> >> 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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @version $Id$ >> + */ >> +public interface EndBuildPlugin >> + extends Plugin >> +{ >> + //with a new parameter List 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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @version $Id$ >> + */ >> +public interface PostSendNotificationPlugin >> + extends Plugin >> +{ >> + // (with a new parameter List 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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @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 Emmanuel Venisse >> + * @version $Id$ >> + */ >> +public interface PreSendNotificationPlugin >> + extends Plugin >> +{ >> + // (with a new parameter List 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" >> >> >> >