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: r687338 [1/4] - in /continuum/sandbox/continuum-flex: ./ continuum-flex-common/ continuum-flex-common/src/ continuum-flex-common/src/main/ continuum-flex-common/src/main/flex-manifest/ continuum-flex-common/src/main/flex/ continuum-fl
Date Wed, 20 Aug 2008 14:41:16 GMT
Hi,

If you have few minutes, can you look at this POC?

If you don't want to install the Flex SDK but want to see the full webapp,
I'll can share the war.

In this POC, it is possible to add/remove some screens by plugins without to
rebuild the webapp.

Thanks
Emmanuel


On Wed, Aug 20, 2008 at 4:12 PM, <evenisse@apache.org> wrote:

> Author: evenisse
> Date: Wed Aug 20 07:12:09 2008
> New Revision: 687338
>
> URL: http://svn.apache.org/viewvc?rev=687338&view=rev
> Log:
> Add Flex poc
>
> Added:
>    continuum/sandbox/continuum-flex/
>    continuum/sandbox/continuum-flex/continuum-flex-common/
>    continuum/sandbox/continuum-flex/continuum-flex-common/pom.xml   (with
> props)
>    continuum/sandbox/continuum-flex/continuum-flex-common/src/
>    continuum/sandbox/continuum-flex/continuum-flex-common/src/main/
>    continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/SimpleManifest.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/BuildPerDay.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/ProjectDetailPlugin.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/ContinuumClient.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/RemoteObjectContinuumClient.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildDefinition.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildResultSummary.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/Project.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectGroupSummary.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectSummary.as
>   (with props)
>    continuum/sandbox/continuum-flex/continuum-flex-common/src/main/locales/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/locales/en_US/
>
>  continuum/sandbox/continuum-flex/continuum-flex-common/src/main/locales/fr_FR/
>    continuum/sandbox/continuum-flex/continuum-flex-config/
>    continuum/sandbox/continuum-flex/continuum-flex-config/pom.xml   (with
> props)
>    continuum/sandbox/continuum-flex/continuum-flex-config/src/
>    continuum/sandbox/continuum-flex/continuum-flex-config/src/main/
>
>  continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/
>
>  continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/resources.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/
>
>  continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/remoting-config.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/services-config.xml
>   (with props)
>    continuum/sandbox/continuum-flex/continuum-flex-plugin/
>    continuum/sandbox/continuum-flex/continuum-flex-plugin/pom.xml   (with
> props)
>    continuum/sandbox/continuum-flex/continuum-flex-plugin/src/
>    continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/
>
>  continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/external-resources/
>    continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/
>
>  continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/plugin1.mxml
>   (with props)
>    continuum/sandbox/continuum-flex/continuum-flex-ui/
>    continuum/sandbox/continuum-flex/continuum-flex-ui/pom.xml   (with
> props)
>    continuum/sandbox/continuum-flex/continuum-flex-ui/src/
>    continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/external-resources/
>    continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/CompilUtil.as
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectDetailPanel.mxml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectGroupsPanel.mxml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectsList.mxml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/StatPlugin.mxml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/index.mxml
>   (with props)
>    continuum/sandbox/continuum-flex/continuum-flex-webapp/
>    continuum/sandbox/continuum-flex/continuum-flex-webapp/pom.xml   (with
> props)
>    continuum/sandbox/continuum-flex/continuum-flex-webapp/src/
>    continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/
>    continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/org/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/org/apache/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/org/apache/continuum/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/org/apache/continuum/ui/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/org/apache/continuum/ui/flex/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/java/org/apache/continuum/ui/flex/ContinuumXmlRpcClientAdapter.java
>   (with props)
>    continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/AC_OETags.js
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/cache.dep
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/flash-unicode-table.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/flex-config.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/flex-webtier-config.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/global.css
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/hotfixes/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/hotfixes/empty.txt
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/license.properties
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/localFonts.ser
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/macFonts.ser
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/messaging-config.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/mxml-manifest.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/proxy-config.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/user_classes/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/user_classes/add_your_as_and_swc_files_here
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/flex/winFonts.ser
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/WEB-INF/web.xml
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/history/
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/history/history.css
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/history/history.js
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/history/historyFrame.html
>   (with props)
>
>  continuum/sandbox/continuum-flex/continuum-flex-webapp/src/main/webapp/index.html
>   (with props)
>    continuum/sandbox/continuum-flex/pom.xml   (with props)
>
> Added: continuum/sandbox/continuum-flex/continuum-flex-common/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/pom.xml?rev=687338&view=auto
>
> ==============================================================================
> --- continuum/sandbox/continuum-flex/continuum-flex-common/pom.xml (added)
> +++ continuum/sandbox/continuum-flex/continuum-flex-common/pom.xml Wed Aug
> 20 07:12:09 2008
> @@ -0,0 +1,134 @@
> +<?xml version='1.0' encoding='UTF-8'?>
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
> http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
> ">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-flex</artifactId>
> +    <version>1.2-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-flex-common</artifactId>
> +  <packaging>swc</packaging>
> +  <name>Continuum Flex Common</name>
> +
> +  <build>
> +    <sourceDirectory>src/main/flex</sourceDirectory>
> +    <plugins>
> +      <plugin>
> +        <groupId>info.rvin.mojo</groupId>
> +        <artifactId>flex-compiler-mojo</artifactId>
> +        <version>1.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +                 <debug>true</debug>
> +          <locales>
> +            <param>en_US</param>
> +            <param>fr_FR</param>
> +          </locales>
> +          <!-- defines>
> +
>  <CONTINUUM::ContinuumBuildNumber>${buildNumber}</CONTINUUM::ContinuumBuildNumber>
> +            <CONTINUUM::Version>${project.version}</CONTINUUM::Version>
> +          </defines -->
> +          <headlessServer>true</headlessServer>
> +          <mergeResourceBundle>true</mergeResourceBundle>
> +
>  <resourceBundlePath>${basedir}/src/main/locales/{locale}</resourceBundlePath>
> +          <namespaces>
> +            <namespace>
> +              <uri>http://continuum.apache.org/flex</uri>
> +
>  <manifest>src/main/flex-manifest/SimpleManifest.xml</manifest>
> +            </namespace>
> +          </namespaces>
> +          <includeNamespaces>
> +            <param>http://continuum.apache.org/flex</param>
> +          </includeNamespaces>
> +          <keepAs3Metadatas>
> +            <param>Bindable</param>
> +            <param>Managed</param>
> +            <param>NotNull</param>
> +            <param>Case</param>
> +            <param>MaxChars</param>
> +            <param>Restrict</param>
> +          </keepAs3Metadatas>
> +          <targetPlayer>9.0.28</targetPlayer>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +
> +  <properties>
> +    <flex.version>3.0.0.477</flex.version>
> +  </properties>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>playerglobal</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +      <scope>external</scope>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>flex</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>framework</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>framework</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>rpc</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>rpc</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>utilities</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +  </dependencies>
> +
> +  <repositories>
> +    <repository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </repository>
> +  </repositories>
> +
> +  <pluginRepositories>
> +    <pluginRepository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </pluginRepository>
> +  </pluginRepositories>
> +</project>
> \ No newline at end of file
>
> Propchange: continuum/sandbox/continuum-flex/continuum-flex-common/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/SimpleManifest.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/SimpleManifest.xml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/SimpleManifest.xml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/SimpleManifest.xml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,11 @@
> +<?xml version="1.0"?>
> +<componentPackage>
> +  <component id="BuildPerDay"
> class="org.apache.continuum.flex.BuildPerDay"/>
> +  <component id="ProjectDetailPlugin"
> class="org.apache.continuum.flex.ProjectDetailPlugin"/>
> +  <component id="ContinuumRemoteObject"
> class="org.apache.continuum.xmlrpc.client.RemoteObjectContinuumClient"/>
> +  <component id="BuildDefinition"
> class="org.apache.continuum.xmlrpc.project.BuildDefinition"/>
> +  <component id="BuildResultSummary"
> class="org.apache.continuum.xmlrpc.project.BuildResultSummary"/>
> +  <component id="Project"
> class="org.apache.continuum.xmlrpc.project.Project"/>
> +  <component id="ProjectGroupSummary"
> class="org.apache.continuum.xmlrpc.project.ProjectGroupSummary"/>
> +  <component id="ProjectSummary"
> class="org.apache.continuum.xmlrpc.project.ProjectSummary"/>
> +</componentPackage>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex-manifest/SimpleManifest.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/BuildPerDay.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/BuildPerDay.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/BuildPerDay.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/BuildPerDay.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,14 @@
> +package org.apache.continuum.flex
> +{
> +    public class BuildPerDay
> +    {
> +        public var count:int = 0;
> +
> +        public var successCount:int = 0;
> +        public var failureCount:int = 0;
> +
> +        public var day:String = '';
> +
> +        public var displayDay:String = '';
> +    }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/BuildPerDay.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/ProjectDetailPlugin.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/ProjectDetailPlugin.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/ProjectDetailPlugin.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/ProjectDetailPlugin.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,11 @@
> +package org.apache.continuum.flex
> +{
> +    import mx.collections.ArrayCollection;
> +    import org.apache.continuum.xmlrpc.project.Project;
> +
> +    public interface ProjectDetailPlugin
> +    {
> +        function set project(p:Project):void;
> +        function set builds(b:ArrayCollection):void;
> +    }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/flex/ProjectDetailPlugin.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/ContinuumClient.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/ContinuumClient.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/ContinuumClient.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/ContinuumClient.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,11 @@
> +package org.apache.continuum.xmlrpc.client
> +{
> +    public interface ContinuumClient
> +    {
> +        function getBuildOutput(projectId:int, buildResultSummaryId:int
> ,cb:Function = null):void;
> +        function getBuildResultsForProject(projectId:int, cb:Function =
> null):void;
> +        function getAllProjectGroups(cb:Function = null):void;
> +        function getProjectWithAllDetails(projectId:int, cb:Function =
> null):void;
> +        function getProjects(groupId:int, cb:Function = null):void;
> +    }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/ContinuumClient.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/RemoteObjectContinuumClient.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/RemoteObjectContinuumClient.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/RemoteObjectContinuumClient.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/RemoteObjectContinuumClient.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,84 @@
> +package org.apache.continuum.xmlrpc.client
> +{
> +    import mx.controls.Alert;
> +    import mx.rpc.AsyncToken;
> +    import mx.rpc.events.ResultEvent;
> +    import mx.rpc.remoting.RemoteObject;
> +
> +    [Bindable]
> +    public class RemoteObjectContinuumClient implements ContinuumClient
> +    {
> +
> +        public var continuumURL:String;
> +        public var login:String;
> +        public var password:String;
> +
> +        public var connected:Boolean = false;
> +
> +        private var service:RemoteObject;
> +
> +        public function RemoteObjectContinuumClient():void
> +        {
> +            service = new RemoteObject();
> +            service.destination = 'continuumService';
> +
> +            service.connect.addEventListener(ResultEvent.RESULT,
> function(e:ResultEvent):void { connectionResult(e);});
> +
>  service.getAllProjectGroups.addEventListener(ResultEvent.RESULT,
> function(e:ResultEvent):void { callback(e, 'getAllProjectGroups');});
> +            service.getProjects.addEventListener(ResultEvent.RESULT,
> function(e:ResultEvent):void { callback(e, 'getProjects');});
> +
>  service.getProjectWithAllDetails.addEventListener(ResultEvent.RESULT,
> function(e:ResultEvent):void { callback(e, 'getProjectWithAllDetails');});
> +
>  service.getBuildResultsForProject.addEventListener(ResultEvent.RESULT,
> function(e:ResultEvent):void { callback(e, 'getBuildResultsForProject');});
> +            service.getBuildOutput.addEventListener(ResultEvent.RESULT,
> function(e:ResultEvent):void { callback(e, 'getBuildOutput');});
> +        }
> +
> +        private function connectionResult(event:ResultEvent):void
> +        {
> +            // handle ping failure
> +            connected = true;
> +        }
> +
> +        private function callback(event:ResultEvent, method:String):void
> +        {
> +            if (event.token.data != null)
> +            {
> +                var cb:Function = event.token.data;
> +                cb.apply(this, [event]);
> +            }
> +        }
> +
> +        public function connect():void
> +        {
> +            //Alert.show('connect');
> +            service.connect(login, password, continuumURL);
> +        }
> +
> +        public function getProjects(groupId:int, cb:Function = null):void
> +        {
> +            var token:AsyncToken = service.getProjects(groupId);
> +            token.data =  cb;
> +        }
> +
> +        public function getProjectWithAllDetails(projectId:int,
> cb:Function = null):void
> +        {
> +            var token:AsyncToken =
> service.getProjectWithAllDetails(projectId);
> +            token.data =  cb;
> +        }
> +
> +        public function getAllProjectGroups(cb:Function = null):void
> +        {
> +            var token:AsyncToken = service.getAllProjectGroups();
> +            token.data =  cb;
> +        }
> +
> +        public function getBuildResultsForProject(projectId:int,
> cb:Function = null):void
> +        {
> +            var token:AsyncToken =
> service.getBuildResultsForProject(projectId);
> +            token.data =  cb;
> +        }
> +
> +        public function getBuildOutput(projectId:int,
> buildResultSummaryId:int ,cb:Function = null):void
> +        {
> +            var token:AsyncToken = service.getBuildOutput(projectId,
> buildResultSummaryId);
> +            token.data =  cb;
> +        }
> +    }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/client/RemoteObjectContinuumClient.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildDefinition.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildDefinition.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildDefinition.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildDefinition.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,9 @@
> +package org.apache.continuum.xmlrpc.project
> +{
> +       [Bindable]
> +
> [RemoteClass(alias="org.apache.maven.continuum.xmlrpc.project.BuildDefinition")]
> +       public class BuildDefinition
> +       {
> +               public var description:String;
> +       }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildDefinition.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildResultSummary.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildResultSummary.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildResultSummary.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildResultSummary.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,16 @@
> +package org.apache.continuum.xmlrpc.project
> +{
> +       [Bindable]
> +
> [RemoteClass(alias="org.apache.maven.continuum.xmlrpc.project.BuildResultSummary")]
> +       public class BuildResultSummary
> +       {
> +               public var buildNumber:int;
> +               public var startTime:Number;
> +               public var endTime:Number;
> +               public var exitCode:int;
> +               public var id:int;
> +
> +
> +               public var buildDefinition:BuildDefinition;
> +       }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/BuildResultSummary.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/Project.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/Project.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/Project.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/Project.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,12 @@
> +package org.apache.continuum.xmlrpc.project
> +{
> +       import mx.collections.ArrayCollection;
> +
> +       [Bindable]
> +
> [RemoteClass(alias="org.apache.maven.continuum.xmlrpc.project.Project")]
> +       public class Project extends ProjectSummary
> +       {
> +               public var dependencies:ArrayCollection;
> +               public var developers:ArrayCollection;
> +       }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/Project.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectGroupSummary.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectGroupSummary.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectGroupSummary.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectGroupSummary.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,12 @@
> +package org.apache.continuum.xmlrpc.project
> +{
> +       [Bindable]
> +
> [RemoteClass(alias="org.apache.maven.continuum.xmlrpc.project.ProjectGroupSummary")]
> +       public class ProjectGroupSummary
> +       {
> +               public var id:int;
> +               public var name:String;
> +               public var groupId:String;
> +               public var description:String;
> +       }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectGroupSummary.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectSummary.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectSummary.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectSummary.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectSummary.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,15 @@
> +package org.apache.continuum.xmlrpc.project
> +{
> +       [Bindable]
> +
> [RemoteClass(alias="org.apache.maven.continuum.xmlrpc.project.ProjectSummary")]
> +       public class ProjectSummary
> +       {
> +               public var id:int;
> +               public var name:String;
> +               public var artifactId:String;
> +               public var description:String;
> +               public var groupId:String;
> +               public var version:String;
> +               public var scmUrl:String;
> +       }
> +}
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-common/src/main/flex/org/apache/continuum/xmlrpc/project/ProjectSummary.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added: continuum/sandbox/continuum-flex/continuum-flex-config/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-config/pom.xml?rev=687338&view=auto
>
> ==============================================================================
> --- continuum/sandbox/continuum-flex/continuum-flex-config/pom.xml (added)
> +++ continuum/sandbox/continuum-flex/continuum-flex-config/pom.xml Wed Aug
> 20 07:12:09 2008
> @@ -0,0 +1,36 @@
> +<?xml version='1.0' encoding='UTF-8'?>
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
> http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
> ">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-flex</artifactId>
> +    <version>1.2-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-flex-config</artifactId>
> +  <name>Continuum Flex UI Config</name>
> +  <packaging>pom</packaging>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-assembly-plugin</artifactId>
> +        <version>2.2-beta-2</version>
> +        <executions>
> +          <execution>
> +            <id>make_shared_resources</id>
> +            <goals>
> +              <goal>single</goal>
> +            </goals>
> +            <phase>package</phase>
> +            <configuration>
> +              <descriptors>
> +                <descriptor>src/main/assembly/resources.xml</descriptor>
> +              </descriptors>
> +            </configuration>
> +          </execution>
> +        </executions>
> +      </plugin>
> +    </plugins>
> +  </build>
> +</project>
>
> Propchange: continuum/sandbox/continuum-flex/continuum-flex-config/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/resources.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/resources.xml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/resources.xml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/resources.xml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,13 @@
> +<assembly>
> +  <id>resources</id>
> +  <formats>
> +    <format>zip</format>
> +  </formats>
> +  <includeBaseDirectory>false</includeBaseDirectory>
> +  <fileSets>
> +    <fileSet>
> +      <directory>src/main/resources</directory>
> +      <outputDirectory></outputDirectory>
> +    </fileSet>
> +  </fileSets>
> +</assembly>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/assembly/resources.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/remoting-config.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/remoting-config.xml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/remoting-config.xml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/remoting-config.xml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,22 @@
> +<?xml version="1.0" encoding="UTF-8"?>
> +<service id="remoting-service"
> +    class="flex.messaging.services.RemotingService"
> +    messageTypes="flex.messaging.messages.RemotingMessage">
> +
> +    <adapters>
> +        <adapter-definition id="java-object"
> +            class="flex.messaging.services.remoting.adapters.JavaAdapter"
> +            default="true" />
> +    </adapters>
> +
> +    <default-channels>
> +        <channel ref="my-amf" />
> +    </default-channels>
> +
> +    <destination id="continuumService">
> +        <properties>
> +
>  <source>org.apache.continuum.ui.flex.ContinuumXmlRpcClientAdapter</source>
> +            <scope>session</scope>
> +        </properties>
> +    </destination>
> +</service>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/remoting-config.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/services-config.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/services-config.xml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/services-config.xml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/services-config.xml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,64 @@
> +<?xml version="1.0" encoding="UTF-8"?>
> +<services-config>
> +
> +    <services>
> +        <service-include file-path="remoting-config.xml" />
> +<!--
> +        <service-include file-path="proxy-config.xml" />
> +        <service-include file-path="messaging-config.xml" />
> + -->
> +    </services>
> +
> +
> +
> +
> +    <channels>
> +        <channel-definition id="my-amf"
> class="mx.messaging.channels.AMFChannel">
> +            <endpoint uri="http://{server.name}:{server.port}/{context.root}/messagebroker/amf"
> class="flex.messaging.endpoints.AMFEndpoint"/>
> +            <properties>
> +                <polling-enabled>false</polling-enabled>
> +            </properties>
> +        </channel-definition>
> +
> +        <channel-definition id="my-http"
> class="mx.messaging.channels.HTTPChannel">
> +            <endpoint uri="http://{server.name}:{server.port}/{context.root}/messagebroker/http"
> class="flex.messaging.endpoints.HTTPEndpoint"/>
> +        </channel-definition>
> +
> +        <channel-definition id="my-secure-http"
> class="mx.messaging.channels.SecureHTTPChannel">
> +            <endpoint uri="https://{server.name}:{server.port}/{context.root}/messagebroker/httpsecure"
> class="flex.messaging.endpoints.SecureHTTPEndpoint"/>
> +        </channel-definition>
> +    </channels>
> +
> +    <logging>
> +        <target class="flex.messaging.log.ConsoleTarget" level="Error">
> +            <properties>
> +                <prefix>[Flex] </prefix>
> +                <includeDate>false</includeDate>
> +                <includeTime>false</includeTime>
> +                <includeLevel>false</includeLevel>
> +                <includeCategory>false</includeCategory>
> +            </properties>
> +            <filters>
> +                <pattern>Endpoint.*</pattern>
> +                <pattern>Service.*</pattern>
> +                <pattern>Configuration</pattern>
> +            </filters>
> +        </target>
> +    </logging>
> +
> +    <system>
> +        <redeploy>
> +            <enabled>true</enabled>
> +            <watch-interval>20</watch-interval>
> +
>  <watch-file>{context.root}/WEB-INF/flex/services-config.xml</watch-file>
> +
>  <watch-file>{context.root}/WEB-INF/flex/remoting-config.xml</watch-file>
> +
>  <watch-file>{context.root}/WEB-INF/flex/messaging-config.xml</watch-file>
> +            <touch-file>{context.root}/WEB-INF/web.xml</touch-file>
> +        </redeploy>
> +    </system>
> +
> +    <!-- factories>
> +               <factory id="spring"
> class="org.apache.continuum.flex.spring.SpringFactory"/>
> +       </factories-->
> +
> +</services-config>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-config/src/main/resources/services-config.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added: continuum/sandbox/continuum-flex/continuum-flex-plugin/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-plugin/pom.xml?rev=687338&view=auto
>
> ==============================================================================
> --- continuum/sandbox/continuum-flex/continuum-flex-plugin/pom.xml (added)
> +++ continuum/sandbox/continuum-flex/continuum-flex-plugin/pom.xml Wed Aug
> 20 07:12:09 2008
> @@ -0,0 +1,179 @@
> +<?xml version='1.0' encoding='UTF-8'?>
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
> http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
> ">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-flex</artifactId>
> +    <version>1.2-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-flex-plugin</artifactId>
> +  <packaging>swf</packaging>
> +  <name>Continuum Flex Plugin</name>
> +
> +  <build>
> +    <sourceDirectory>src/main/flex</sourceDirectory>
> +    <plugins>
> +      <plugin>
> +        <groupId>info.rvin.mojo</groupId>
> +        <artifactId>flex-compiler-mojo</artifactId>
> +        <version>1.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +                 <debug>true</debug>
> +          <contextRoot>/continuum-flex-webapp</contextRoot>
> +          <sourceFile>plugin1.mxml</sourceFile>
> +
>  <resourceBundlePath>${basedir}/src/main/locales/{locale}</resourceBundlePath>
> +
>  <services>src/main/external-resources/services-config.xml</services>
> +          <includeNamespaces>
> +            <param>http://continuum.apache.org/flex</param>
> +          </includeNamespaces>
> +          <keepAs3Metadatas>
> +            <param>Bindable</param>
> +            <param>Managed</param>
> +          </keepAs3Metadatas>
> +          <targetPlayer>9.0.28</targetPlayer>
> +        </configuration>
> +      </plugin>
> +        <plugin>
> +          <artifactId>maven-dependency-plugin</artifactId>
> +          <executions>
> +            <execution>
> +            <id>unpack-config</id>
> +            <goals>
> +              <goal>unpack-dependencies</goal>
> +            </goals>
> +            <phase>generate-resources</phase>
> +            <configuration>
> +
>  <outputDirectory>src/main/external-resources</outputDirectory>
> +              <includeArtifacIds>continuum-flex-config</includeArtifacIds>
> +              <includeGroupIds>${project.groupId}</includeGroupIds>
> +              <includeClassifiers>resources</includeClassifiers>
> +              <excludeTransitive>true</excludeTransitive>
> +              <excludeTypes>jar,swf,swc</excludeTypes>
> +            </configuration>
> +          </execution>
> +        </executions>
> +      </plugin>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-clean-plugin</artifactId>
> +        <version>2.1.1</version>
> +        <configuration>
> +          <filesets>
> +            <fileset>
> +              <directory>src/main/external-resources</directory>
> +              <includes>
> +                <include>**/*</include>
> +              </includes>
> +            </fileset>
> +          </filesets>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-config</artifactId>
> +      <version>${project.version}</version>
> +      <classifier>resources</classifier>
> +      <type>zip</type>
> +      <scope>provided</scope>
> +    </dependency>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-common</artifactId>
> +      <version>${project.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>playerglobal</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +      <scope>external</scope>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>flex</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>framework</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>framework</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>rpc</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>rpc</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>datavisualization</artifactId>
> +      <type>swc</type>
> +      <version>${flex.version}</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>datavisualization</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>utilities</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +  </dependencies>
> +
> +  <properties>
> +    <flex.version>3.0.0.477</flex.version>
> +  </properties>
> +
> +  <repositories>
> +    <repository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </repository>
> +  </repositories>
> +
> +  <pluginRepositories>
> +    <pluginRepository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </pluginRepository>
> +  </pluginRepositories>
> +</project>
>
> Propchange: continuum/sandbox/continuum-flex/continuum-flex-plugin/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/plugin1.mxml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/plugin1.mxml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/plugin1.mxml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/plugin1.mxml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,85 @@
> +<?xml version="1.0" encoding="utf-8"?>
> +<mx:Module xmlns:mx="http://www.adobe.com/2006/mxml"
> +           layout="absolute" width="400" height="300"
> +           implements="org.apache.continuum.flex.ProjectDetailPlugin">
> +
> +       <mx:Script>
> +               <![CDATA[
> +                       import mx.collections.SortField;
> +                       import mx.collections.Sort;
> +                       import mx.collections.ArrayCollection;
> +                       import org.apache.continuum.flex.BuildPerDay;
> +                       import
> org.apache.continuum.xmlrpc.project.BuildResultSummary;
> +                       import org.apache.continuum.xmlrpc.project.Project;
> +
> +                       [Bindable]
> +                       private var _project:Project;
> +
> +                       [Bindable]
> +                       private var _builds:ArrayCollection;
> +
> +                       [Bindable]
> +                       private var dataSet:ArrayCollection;
> +
> +                       public var title:String = 'Builds per day - Flex
> Chart';
> +
> +                       public function set project(p:Project):void {
> +                               _project = p;
> +                       }
> +
> +                       private function makeSort():Sort {
> +                           var mySort:Sort = new Sort();
> +                           mySort.fields = [new SortField("day")];
> +                           return mySort;
> +                       }
> +
> +                       public function set builds(b:ArrayCollection):void
> {
> +
> +                               _builds = b;
> +                               var dictionary:Dictionary = new Dictionary;
> +
> +                               var l:ArrayCollection = new
> ArrayCollection;
> +
> +                               for each (var brs:BuildResultSummary in b)
> {
> +                                       var d:Date = new
> Date(brs.startTime);
> +                                       var ds:String =
> formatter.format(d);
> +
> +                                       var bpd:BuildPerDay =
> dictionary[ds];
> +
> +                                       if (bpd == null)
> +                                       {
> +                                               bpd = new BuildPerDay;
> +                                               bpd.day = ds;
> +                                               bpd.displayDay =
> displayFormatter.format(d);
> +                                               l.addItem(bpd);
> +                                       }
> +                                       bpd.count++;
> +                                       dictionary[ds] = bpd;
> +
> +                               }
> +
> +                               //TODO: fill with zero for missing days ?
> +
> +                               l.sort = makeSort();
> +                               l.refresh();
> +                               dataSet = l;
> +                               //buildUrl(l);
> +                       }
> +
> +               ]]>
> +       </mx:Script>
> +
> +       <mx:Text text="{_project!= null ? 'Name : '+_project.name:'project
> not loaded'}"/>
> +       <mx:DateFormatter id="formatter" formatString="YYYYMMDD" />
> +       <mx:DateFormatter id="displayFormatter" formatString="DD/MM/YYYY"
> />
> +       <mx:LineChart id="chart" width="100%" height="100%"
> dataProvider="{dataSet}" >
> +        <mx:series>
> +            <mx:LineSeries yField="count"  />
> +        </mx:series>
> +        <mx:horizontalAxis>
> +            <mx:CategoryAxis categoryField="displayDay" />
> +        </mx:horizontalAxis>
> +    </mx:LineChart>
> +
> +
> +</mx:Module>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-plugin/src/main/flex/plugin1.mxml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added: continuum/sandbox/continuum-flex/continuum-flex-ui/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/pom.xml?rev=687338&view=auto
>
> ==============================================================================
> --- continuum/sandbox/continuum-flex/continuum-flex-ui/pom.xml (added)
> +++ continuum/sandbox/continuum-flex/continuum-flex-ui/pom.xml Wed Aug 20
> 07:12:09 2008
> @@ -0,0 +1,166 @@
> +<?xml version='1.0' encoding='UTF-8'?>
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
> http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
> ">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-flex</artifactId>
> +    <version>1.2-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-flex-ui</artifactId>
> +  <packaging>swf</packaging>
> +  <name>Continuum Flex UI</name>
> +
> +  <build>
> +    <sourceDirectory>src/main/flex</sourceDirectory>
> +    <plugins>
> +      <plugin>
> +        <groupId>info.rvin.mojo</groupId>
> +        <artifactId>flex-compiler-mojo</artifactId>
> +        <version>1.0</version>
> +        <extensions>true</extensions>
> +        <configuration>
> +                 <debug>true</debug>
> +          <contextRoot>/continuum-flex-webapp</contextRoot>
> +          <sourceFile>index.mxml</sourceFile>
> +
>  <resourceBundlePath>${basedir}/src/main/locales/{locale}</resourceBundlePath>
> +
>  <services>src/main/external-resources/services-config.xml</services>
> +          <includeNamespaces>
> +            <param>http://continuum.apache.org/flex</param>
> +          </includeNamespaces>
> +          <keepAs3Metadatas>
> +            <param>Bindable</param>
> +            <param>Managed</param>
> +          </keepAs3Metadatas>
> +          <targetPlayer>9.0.28</targetPlayer>
> +        </configuration>
> +      </plugin>
> +        <plugin>
> +          <artifactId>maven-dependency-plugin</artifactId>
> +          <executions>
> +            <execution>
> +            <id>unpack-config</id>
> +            <goals>
> +              <goal>unpack-dependencies</goal>
> +            </goals>
> +            <phase>generate-resources</phase>
> +            <configuration>
> +
>  <outputDirectory>src/main/external-resources</outputDirectory>
> +              <includeArtifacIds>continuum-flex-config</includeArtifacIds>
> +              <includeGroupIds>${project.groupId}</includeGroupIds>
> +              <includeClassifiers>resources</includeClassifiers>
> +              <excludeTransitive>true</excludeTransitive>
> +              <excludeTypes>jar,swf,swc</excludeTypes>
> +            </configuration>
> +          </execution>
> +        </executions>
> +      </plugin>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-clean-plugin</artifactId>
> +        <version>2.1.1</version>
> +        <configuration>
> +          <filesets>
> +            <fileset>
> +              <directory>src/main/external-resources</directory>
> +              <includes>
> +                <include>**/*</include>
> +              </includes>
> +            </fileset>
> +          </filesets>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-config</artifactId>
> +      <version>${project.version}</version>
> +      <classifier>resources</classifier>
> +      <type>zip</type>
> +      <scope>provided</scope>
> +    </dependency>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-common</artifactId>
> +      <version>${project.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>playerglobal</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +      <scope>external</scope>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>flex</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>framework</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>framework</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>rpc</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>rpc</artifactId>
> +      <version>${flex.version}</version>
> +      <type>resource-bundle</type>
> +      <classifier>en_US</classifier>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.flex.sdk</groupId>
> +      <artifactId>utilities</artifactId>
> +      <version>${flex.version}</version>
> +      <type>swc</type>
> +    </dependency>
> +  </dependencies>
> +
> +  <properties>
> +    <flex.version>3.0.0.477</flex.version>
> +  </properties>
> +
> +  <repositories>
> +    <repository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </repository>
> +  </repositories>
> +
> +  <pluginRepositories>
> +    <pluginRepository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </pluginRepository>
> +  </pluginRepositories>
> +</project>
>
> Propchange: continuum/sandbox/continuum-flex/continuum-flex-ui/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/CompilUtil.as
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/CompilUtil.as?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/CompilUtil.as
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/CompilUtil.as
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,7 @@
> +package
> +{
> +    public class CompilUtil
> +    {
> +        private var a:StatPlugin;
> +    }
> +}
> \ No newline at end of file
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/CompilUtil.as
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectDetailPanel.mxml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectDetailPanel.mxml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectDetailPanel.mxml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectDetailPanel.mxml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,219 @@
> +<?xml version="1.0" encoding="utf-8"?>
> +<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"
> +         paddingTop="0" paddingLeft="0" paddingRight="0"
> +         creationComplete="doComplete(event)"
> +         width="100%" height="100%" xmlns:local="*">
> +
> +    <mx:Script>
> +        <![CDATA[
> +            import mx.events.ModuleEvent;
> +            import mx.modules.ModuleManager;
> +            import mx.modules.IModuleInfo;
> +            import mx.controls.Alert;
> +            import mx.binding.utils.BindingUtils;
> +            import mx.core.Container;
> +            import mx.collections.ArrayCollection;
> +            import org.apache.continuum.flex.ProjectDetailPlugin;
> +            import org.apache.continuum.xmlrpc.client.ContinuumClient;
> +            import org.apache.continuum.xmlrpc.project.Project;
> +            import org.apache.continuum.xmlrpc.project.BuildResultSummary;
> +            import org.apache.continuum.xmlrpc.project.ProjectSummary;
> +
> +            [Event(name="ready", type="mx.events.ModuleEvent")]
> +
> +            [Bindable]
> +            public var project:Project;
> +
> +            [Bindable]
> +            public var client:ContinuumClient;
> +
> +            [Bindable]
> +            private var projects:ArrayCollection;
> +
> +            [Bindable]
> +            public var builds:ArrayCollection;
> +
> +            [Bindable]
> +            private var output:String;
> +
> +            [Bindable]
> +            private var successRate:int = 0;
> +
> +            private var loadedPlugins:ArrayCollection = new
> ArrayCollection;
> +
> +            /**
> +             * we need to keep references because otherwise flex garbage
> collector is too quick
> +             **/
> +            private var loadedModules:ArrayCollection = new
> ArrayCollection;
> +
> +            public function set projectId(id:int):void
> +            {
> +                client.getProjectWithAllDetails(id, projectFound);
> +            }
> +
> +            public function projectFound(event:Event):void
> +            {
> +                project = event.target.lastResult as Project;
> +                client.getBuildResultsForProject(project.id,
> buildResultsFound);
> +            }
> +
> +            private function buildResultsFound(event:Event):void
> +            {
> +                builds = event.target.lastResult as ArrayCollection;
> +
> +                var buildCount:int = builds.length;
> +                var successCount:int = 0;
> +
> +                for each (var br:BuildResultSummary in builds)
> +                {
> +                    //FIXME : a l'arrache
> +                    if (br.exitCode == 0)
> +                    {
> +                        successCount++;
> +                    }
> +                }
> +
> +                successRate = (successCount * 100) / buildCount;
> +            }
> +
> +            private function getDate(item:*, a:DataGridColumn):String
> +            {
> +                return formatter.format(new Date(item[a.dataField]) );
> +            }
> +
> +            private function getBuildDefinition(item:*,
> a:DataGridColumn):String
> +            {
> +                return (item as
> BuildResultSummary).buildDefinition.description;
> +            }
> +
> +            private function outputFound(event:Event):void
> +            {
> +                output = event.target.lastResult as String;
> +            }
> +
> +            private function doComplete(event:Event):void
> +            {
> +                // get plugin name and type (module / component) from a
> list of plugins
> +                loadFlexModulePlugin('plugin1.swf');
> +                loadComponentPlugin('StatPlugin');
> +            }
> +
> +            private function loadComponentPlugin(pluginName:String):void
> +            {
> +                var cls:Class = getDefinitionByName(pluginName) as Class;
> +
> +                var p:ProjectDetailPlugin = new cls();
> +                addPluginToNavigator(p);
> +
> +            }
> +
> +            private function
> addPluginToNavigator(p:ProjectDetailPlugin):void
> +            {
> +                if (p == null) return;
> +                if (p is Container)
> +                {
> +                    if ((p as Object).hasOwnProperty('label'))
> +                    {
> +                        if ((p as Object).hasOwnProperty('title'))
> +                        {
> +                            p['label'] = '[Plugin] '+p['title'];
> +                        }
> +                        else
> +                        {
> +                            p['label'] = '[Plugin]';
> +                        }
> +                    }
> +
> +                    BindingUtils.bindProperty(p, 'builds', this,
> 'builds');
> +                    BindingUtils.bindProperty(p, 'project', this,
> 'project');
> +
> +                    navigator.addChild(p as Container);
> +                    loadedPlugins.addItem(p);
> +                }
> +                else
> +                {
> +                    Alert.show(p+' does not extend mx.core.Container !')
> +                };
> +            }
> +
> +            private function loadFlexModulePlugin(pluginName:String):void
> +            {
> +                var module:IModuleInfo =
> ModuleManager.getModule(pluginName);
> +
> +                module.addEventListener(ModuleEvent.READY, moduleLoaded);
> +                loadedModules.addItem(module);
> +                trace('loading '+module.url);
> +                module.load();
> +            }
> +
> +            private function moduleLoaded(e:ModuleEvent):void
> +            {
> +                trace('module ' +e.module.url+' loaded !');
> +
> +                var p:ProjectDetailPlugin = e.module.factory.create() as
> ProjectDetailPlugin;
> +                addPluginToNavigator(p);
> +
>  loadedModules.removeItemAt(loadedModules.getItemIndex(e.module));
> +            }
> +        ]]>
> +    </mx:Script>
> +
> +    <mx:DateFormatter id="formatter" formatString="DD/MM/YYYY JJ:NN:SS" />
> +
> +    <mx:TabNavigator width="100%" height="100%" creationPolicy="all"
> id="navigator">
> +
> +        <mx:Panel label="Informations" height="100%">
> +            <mx:FormHeading label="Project Name" />
> +            <mx:Text text="{project.name}" />
> +
> +            <mx:FormHeading label="Source repository" />
> +            <mx:Text text="{project.scmUrl}" />
> +
> +            <mx:FormHeading label="Dependencies" />
> +
> +            <mx:DataGrid width="100%"
> dataProvider="{project.dependencies}" height="100%">
> +                <mx:columns>
> +                    <mx:DataGridColumn headerText="Group Id"
> dataField="groupId" />
> +                    <mx:DataGridColumn headerText="Artifact Id"
> dataField="artifactId" />
> +                    <mx:DataGridColumn headerText="Version"
> dataField="version" />
> +                </mx:columns>
> +            </mx:DataGrid>
> +        </mx:Panel>
> +
> +        <mx:Panel label="Developers" height="100%">
> +
> +            <mx:FormHeading label="Developers list" />
> +            <mx:DataGrid width="100%" dataProvider="{project.developers}"
> height="100%">
> +                <mx:columns>
> +                    <mx:DataGridColumn headerText="Name" dataField="name"
> />
> +                    <mx:DataGridColumn headerText="Email"
> dataField="email" />
> +                </mx:columns>
> +            </mx:DataGrid>
> +
> +        </mx:Panel>
> +
> +        <mx:Panel label="Builds" height="100%">
> +            <mx:FormHeading label="Build Results" />
> +
> +            <mx:HBox width="100%">
> +                <mx:DataGrid width="75%" dataProvider="{builds}"
>  id="buildsDG" change="output= null;client.getBuildOutput(project.id,
> (buildsDG.selectedItem as BuildResultSummary).id, outputFound)" >
> +                    <mx:columns>
> +                        <mx:DataGridColumn headerText="Build Number"
> dataField="buildNumber" />
> +                        <mx:DataGridColumn headerText="Start time"
> dataField="startTime" labelFunction="getDate" />
> +                        <mx:DataGridColumn headerText="End time"
> dataField="endTime" labelFunction="getDate"/>
> +                        <mx:DataGridColumn headerText="Description de la
> definition de construction" labelFunction="getBuildDefinition" />
> +                        <mx:DataGridColumn headerText="Status"
> dataField="exitCode" />
> +                    </mx:columns>
> +                </mx:DataGrid>
> +
> +                <mx:Image width="25%" visible="{project != null}">
> +                    <mx:source>
> http://chart.apis.google.com/chart?cht=p3&amp;chd=t:{successRate},{100-successRate}&amp;chs=250x100&amp;chdl=SUCCESS|FAILURE&amp;chl=SUCCESS|FAILURE&amp;chtt=Build+Results<http://chart.apis.google.com/chart?cht=p3&amp;chd=t:%7BsuccessRate%7D,%7B100-successRate%7D&amp;chs=250x100&amp;chdl=SUCCESS%7CFAILURE&amp;chl=SUCCESS%7CFAILURE&amp;chtt=Build+Results>
> </mx:source>
> +                </mx:Image>
> +            </mx:HBox>
> +
> +            <mx:FormHeading label="Output" />
> +            <mx:TextArea width="100%" text="{output}" editable="false"
> height="100%"/>
> +        </mx:Panel>
> +
> +    </mx:TabNavigator>
> +
> +</mx:VBox>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectDetailPanel.mxml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectGroupsPanel.mxml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectGroupsPanel.mxml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectGroupsPanel.mxml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectGroupsPanel.mxml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,39 @@
> +<?xml version="1.0" encoding="utf-8"?>
> +<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"
> +    paddingTop="0" paddingLeft="0" paddingRight="0"
> +    width="100%" height="100%">
> +
> +    <mx:Script>
> +        <![CDATA[
> +            import org.apache.continuum.xmlrpc.client.ContinuumClient;
> +            import org.apache.continuum.xmlrpc.project.Project;
> +            import org.apache.continuum.xmlrpc.project.BuildResultSummary;
> +            import mx.collections.ArrayCollection;
> +            import org.apache.continuum.xmlrpc.project.ProjectSummary;
> +            import
> org.apache.continuum.xmlrpc.project.ProjectGroupSummary;
> +
> +            [Bindable]
> +            public var groups:ArrayCollection;
> +
> +            [Bindable]
> +            public var projects:ArrayCollection;
> +
> +            [Bindable]
> +            public var client:ContinuumClient;
> +
> +            private function projectsFound(event:Event):void
> +            {
> +                projects = event.target.lastResult as ArrayCollection;
> +            }
> +        ]]>
> +    </mx:Script>
> +
> +    <mx:FormHeading label="Project groups" />
> +    <mx:DataGrid width="100%" dataProvider="{groups}" id="groupsDG"
> change="projects = null;client.getProjects((groupsDG.selectedItem as
> ProjectGroupSummary).id, projectsFound)" >
> +        <mx:columns>
> +            <mx:DataGridColumn headerText="Name" dataField="name" />
> +            <mx:DataGridColumn headerText="Id" dataField="groupId" />
> +            <mx:DataGridColumn headerText="Description"
> dataField="description" />
> +        </mx:columns>
> +    </mx:DataGrid>
> +</mx:VBox>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectGroupsPanel.mxml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectsList.mxml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectsList.mxml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectsList.mxml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectsList.mxml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,36 @@
> +<?xml version="1.0" encoding="utf-8"?>
> +<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"
> +    paddingTop="0" paddingLeft="0" paddingRight="0"
> +    width="100%" height="100%">
> +
> +    <mx:Script>
> +        <![CDATA[
> +            import org.apache.continuum.xmlrpc.client.ContinuumClient;
> +            import org.apache.continuum.xmlrpc.project.Project;
> +            import org.apache.continuum.xmlrpc.project.BuildResultSummary;
> +            import mx.collections.ArrayCollection;
> +            import org.apache.continuum.xmlrpc.project.ProjectSummary;
> +            import
> org.apache.continuum.xmlrpc.project.ProjectGroupSummary;
> +
> +            [Bindable]
> +            public var projects:ArrayCollection;
> +
> +            public var doubleClickFunction:Function;
> +
> +        ]]>
> +    </mx:Script>
> +
> +    <mx:FormHeading label="Projects (double-click on project to see
> details)" />
> +
> +    <mx:DataGrid width="100%" doubleClick="if (doubleClickFunction !=
> null) doubleClickFunction.apply(this, [event]);" doubleClickEnabled="true"
> +                            dataProvider="{projects}"
> +                            rowCount="{projects!=null? projects.length:3}"
> id="projectsDG" >
> +        <mx:columns>
> +            <mx:DataGridColumn headerText="Name" dataField="name" />
> +            <mx:DataGridColumn headerText="Artifact Id"
> dataField="artifactId" />
> +            <mx:DataGridColumn headerText="Version" dataField="version" />
> +            <mx:DataGridColumn headerText="Description"
> dataField="description" />
> +        </mx:columns>
> +    </mx:DataGrid>
> +
> +</mx:VBox>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/ProjectsList.mxml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/StatPlugin.mxml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/StatPlugin.mxml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/StatPlugin.mxml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/StatPlugin.mxml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,126 @@
> +<?xml version="1.0" encoding="utf-8"?>
> +<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"
> +        paddingTop="0" paddingLeft="0" paddingRight="0"
> +        width="100%" height="100%" textAlign="center"
> +        implements="org.apache.continuum.flex.ProjectDetailPlugin">
> +
> +    <mx:Script>
> +        <![CDATA[
> +            import mx.collections.SortField;
> +            import mx.collections.Sort;
> +            import org.apache.continuum.xmlrpc.project.BuildResultSummary;
> +            import mx.collections.ArrayCollection;
> +            import org.apache.continuum.flex.BuildPerDay;
> +            import org.apache.continuum.xmlrpc.project.Project;
> +
> +            // For tests : show a graph of nb de builds per day (use
> startTime)
> +
> +            [Bindable]
> +            public var title:String = 'Builds per day';
> +
> +            [Bindable]
> +            private var _project:Project;
> +
> +            [Bindable]
> +            private var _builds:ArrayCollection;
> +
> +            [Bindable]
> +            private var chartData:String = '';
> +
> +            [Bindable]
> +            private var dates:String = '';
> +
> +            [Bindable]
> +            private var nbBuilds:String = '0';
> +
> +            [Bindable]
> +            private var maxBuildPerDay:int = 0;
> +
> +            public function set project(p:Project):void
> +            {
> +                _project = p;
> +            }
> +
> +            private function buildUrl(d:ArrayCollection):void
> +            {
> +                nbBuilds = '0';
> +                dates = '';
> +                maxBuildPerDay = 0;
> +
> +                var first:Boolean = true;
> +                for each (var a:BuildPerDay in d)
> +                {
> +                    if (!first)
> +                    {
> +                        chartData = chartData + ',';
> +                        dates = dates + '|';
> +                    }
> +
> +                    chartData = chartData + (a as BuildPerDay).count;
> +                    dates = dates + (a as BuildPerDay).displayDay;
> +
> +                    first = false;
> +                    if ((a as BuildPerDay).count > maxBuildPerDay)
> +                    {
> +                        maxBuildPerDay = (a as BuildPerDay).count;
> +                    }
> +                }
> +
> +                nbBuilds = nbBuilds + '|' + roundToTen(maxBuildPerDay) ;
> +            }
> +
> +            private function roundToTen(a:int):int
> +            {
> +                 a = ((a + 10) / 10);
> +                 a = a * 10;
> +                 return a;
> +            }
> +
> +            private function makeSort():Sort
> +            {
> +                var mySort:Sort = new Sort();
> +                mySort.fields = [new SortField("day")];
> +                return mySort;
> +            }
> +
> +            public function set builds(b:ArrayCollection):void
> +            {
> +                var dictionary:Dictionary = new Dictionary;
> +
> +                var l:ArrayCollection = new ArrayCollection;
> +
> +                for each (var brs:BuildResultSummary in b)
> +                {
> +                    var d:Date = new Date(brs.startTime);
> +                    var ds:String = formatter.format(d);
> +
> +                    var bpd:BuildPerDay = dictionary[ds];
> +
> +                    if (bpd == null)
> +                    {
> +                        bpd = new BuildPerDay;
> +                        bpd.day = ds;
> +                        bpd.displayDay = displayFormatter.format(d);
> +                        l.addItem(bpd);
> +                    }
> +                    bpd.count++;
> +                    dictionary[ds] = bpd;
> +
> +                }
> +
> +                //TODO: fill with zero for missing days ?
> +
> +                l.sort = makeSort();
> +                l.refresh();
> +                buildUrl(l);
> +            }
> +        ]]>
> +    </mx:Script>
> +
> +    <mx:DateFormatter id="formatter" formatString="YYYYMMDD" />
> +    <mx:DateFormatter id="displayFormatter" formatString="DD/MM/YYYY" />
> +    <mx:Image id="chart">
> +        <mx:source>
> http://chart.apis.google.com/chart?chs=700x400&amp;&amp;chxl=0:|{dates}|1:|{nbBuilds}&amp;chg=0,10&amp;chds=0,{roundToTen(maxBuildPerDay)}&amp;chxt=x,y&amp;chtt=Builds+Per+Day&amp;cht=lc&amp;chd=t:{chartData}<http://chart.apis.google.com/chart?chs=700x400&amp;&amp;chxl=0:%7C%7Bdates%7D%7C1:%7C%7BnbBuilds%7D&amp;chg=0,10&amp;chds=0,%7BroundToTen%28maxBuildPerDay%29%7D&amp;chxt=x,y&amp;chtt=Builds+Per+Day&amp;cht=lc&amp;chd=t:%7BchartData%7D>
> </mx:source>
> +    </mx:Image>
> +
> +</mx:VBox>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/StatPlugin.mxml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/index.mxml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/index.mxml?rev=687338&view=auto
>
> ==============================================================================
> ---
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/index.mxml
> (added)
> +++
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/index.mxml
> Wed Aug 20 07:12:09 2008
> @@ -0,0 +1,95 @@
> +<?xml version="1.0" encoding="utf-8"?>
> +<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
> +    paddingTop="0" paddingLeft="0" paddingRight="0"
> +    xmlns:local="*"
> +    width="100%" height="100%">
> +
> +    <mx:Script>
> +        <![CDATA[
> +            import
> org.apache.continuum.xmlrpc.client.RemoteObjectContinuumClient;
> +            import org.apache.continuum.xmlrpc.client.ContinuumClient;
> +            import mx.controls.Alert;
> +            import org.apache.continuum.xmlrpc.project.Project;
> +            import org.apache.continuum.xmlrpc.project.BuildResultSummary;
> +            import mx.formatters.DateFormatter;
> +            import mx.formatters.Formatter;
> +            import mx.controls.dataGridClasses.DataGridColumn;
> +            import org.apache.continuum.xmlrpc.project.ProjectSummary;
> +            import mx.collections.ArrayCollection;
> +            import
> org.apache.continuum.xmlrpc.project.ProjectGroupSummary;
> +
> +            private var compilUtil:CompilUtil;
> +
> +            [Bindable]
> +            private var project:Project;
> +
> +            [Bindable]
> +            private var groups:ArrayCollection;
> +
> +            [Bindable]
> +            private var projects:ArrayCollection;
> +
> +            [Bindable]
> +            private var client:RemoteObjectContinuumClient = new
> RemoteObjectContinuumClient;
> +
> +            private function groupsFound(event:Event):void
> +            {
> +                groups = event.target.lastResult as ArrayCollection;
> +            }
> +
> +            private function connection():void
> +            {
> +                client.continuumURL = continuumUrl.text;
> +                client.login = continuumLogin.text;
> +                client.password = continuumPassword.text;
> +                client.connect();
> +                client.getAllProjectGroups(groupsFound);
> +            }
> +
> +            private function showProjectDetail(event:Event):void
> +            {
> +                var p:ProjectSummary =
> ProjectSummary(event.currentTarget.selectedItem);
> +                var pro:Project = new Project;
> +                pro.id = p.id;
> +                project = pro;
> +            }
> +        ]]>
> +    </mx:Script>
> +
> +    <mx:VBox width="100%" height="100%">
> +
> +        <mx:FormHeading label="Connection" visible="{!client.connected}"
> includeInLayout="{!client.connected}"/>
> +
> +        <mx:Form width="100%" visible="{!client.connected}"
> includeInLayout="{!client.connected}">
> +
> +            <mx:FormItem label="Continuum xmlrpc URL :">
> +                <mx:TextInput id="continuumUrl" text="
> http://localhost:8080/continuum/xmlrpc"/>
> +            </mx:FormItem>
> +
> +            <mx:FormItem label="Login :">
> +                <mx:TextInput id="continuumLogin" />
> +            </mx:FormItem>
> +
> +            <mx:FormItem label="Password :">
> +                <mx:TextInput id="continuumPassword"
> displayAsPassword="true"/>
> +            </mx:FormItem>
> +
> +            <mx:Button label="OK" click="connection()"/>
> +
> +
> +        </mx:Form>
> +
> +        <mx:VBox width="100%" height="100%" visible="{client.connected}"
> includeInLayout="{client.connected}" id="mainPanel">
> +
> +            <local:ProjectGroupsPanel height="30%" id="groupPanel"
> groups="{groups}" client="{client}" visible="{project == null}"
> includeInLayout="{project == null}"/>
> +
> +            <local:ProjectsList height="70%" id="projectListPanel"
> projects="{groupPanel.projects}" doubleClickFunction="{showProjectDetail}"
> +                visible="{project == null}" includeInLayout="{project ==
> null}"/>
> +
> +            <local:ProjectDetailPanel client="{client}" projectId="{
> project.id}" visible="{project != null}" includeInLayout="{project !=
> null}"/>
> +
> +        </mx:VBox>
> +
> +    </mx:VBox>
> +
> +</mx:Application>
>
> Propchange:
> continuum/sandbox/continuum-flex/continuum-flex-ui/src/main/flex/index.mxml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
> Added: continuum/sandbox/continuum-flex/continuum-flex-webapp/pom.xml
> URL:
> http://svn.apache.org/viewvc/continuum/sandbox/continuum-flex/continuum-flex-webapp/pom.xml?rev=687338&view=auto
>
> ==============================================================================
> --- continuum/sandbox/continuum-flex/continuum-flex-webapp/pom.xml (added)
> +++ continuum/sandbox/continuum-flex/continuum-flex-webapp/pom.xml Wed Aug
> 20 07:12:09 2008
> @@ -0,0 +1,232 @@
> +<?xml version='1.0' encoding='UTF-8'?>
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="
> http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd
> ">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.continuum</groupId>
> +    <artifactId>continuum-flex</artifactId>
> +    <version>1.2-SNAPSHOT</version>
> +  </parent>
> +  <artifactId>continuum-flex-webapp</artifactId>
> +  <packaging>war</packaging>
> +  <name>Continuum Flex Webapp</name>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-config</artifactId>
> +      <version>${project.version}</version>
> +      <classifier>resources</classifier>
> +      <type>zip</type>
> +      <scope>provided</scope>
> +    </dependency>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-ui</artifactId>
> +      <version>${project.version}</version>
> +      <type>swf</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>${project.groupId}</groupId>
> +      <artifactId>continuum-flex-plugin</artifactId>
> +      <version>${project.version}</version>
> +      <type>swf</type>
> +    </dependency>
> +    <dependency>
> +      <groupId>backport-util-concurrent</groupId>
> +      <artifactId>backport-util-concurrent</artifactId>
> +      <version>3.1</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>commons-codec</groupId>
> +      <artifactId>commons-codec</artifactId>
> +      <version>1.3</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>commons-httpclient</groupId>
> +      <artifactId>commons-httpclient</artifactId>
> +      <version>3.0.1</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>concurrent</groupId>
> +      <artifactId>concurrent</artifactId>
> +      <version>1.3.3</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>org.apache.continuum</groupId>
> +      <artifactId>continuum-xmlrpc-client</artifactId>
> +      <version>1.2-SNAPSHOT</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.blazeds</groupId>
> +      <artifactId>flex-messaging-common</artifactId>
> +      <version>${blazeds.version}</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.blazeds</groupId>
> +      <artifactId>flex-messaging-core</artifactId>
> +      <version>${blazeds.version}</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.blazeds</groupId>
> +      <artifactId>flex-messaging-remoting</artifactId>
> +      <version>${blazeds.version}</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.blazeds</groupId>
> +      <artifactId>flex-messaging-opt</artifactId>
> +      <version>${blazeds.version}</version>
> +    </dependency>
> +    <dependency>
> +      <groupId>com.adobe.blazeds</groupId>
> +      <artifactId>flex-messaging-proxy</artifactId>
> +      <version>${blazeds.version}</version>
> +    </dependency>
> +  </dependencies>
> +
> +  <properties>
> +    <blazeds.version>3.0.0.544</blazeds.version>
> +  </properties>
> +
> +  <build>
> +    <plugins>
> +      <plugin>
> +        <groupId>info.rvin.mojo</groupId>
> +        <artifactId>flex-compiler-mojo</artifactId>
> +        <version>1.0</version>
> +        <extensions>true</extensions>
> +      </plugin>
> +      <plugin>
> +        <artifactId>maven-dependency-plugin</artifactId>
> +        <executions>
> +          <execution>
> +            <id>copy-swf</id>
> +            <phase>process-resources</phase>
> +            <goals>
> +              <goal>copy-dependencies</goal>
> +            </goals>
> +            <configuration>
> +
>  <outputDirectory>${project.build.directory}/${project.build.finalName}</outputDirectory>
> +              <includeTypes>swf</includeTypes>
> +            </configuration>
> +          </execution>
> +          <execution>
> +            <id>unpack-config</id>
> +            <goals>
> +              <goal>unpack-dependencies</goal>
> +            </goals>
> +            <phase>generate-resources</phase>
> +            <configuration>
> +
>  <outputDirectory>src/main/webapp/WEB-INF/flex</outputDirectory>
> +              <includeArtifacIds>continuum-flex-config</includeArtifacIds>
> +              <includeGroupIds>${project.groupId}</includeGroupIds>
> +              <includeClassifiers>resources</includeClassifiers>
> +              <excludeTransitive>true</excludeTransitive>
> +              <excludeTypes>jar,swf,swc</excludeTypes>
> +            </configuration>
> +          </execution>
> +        </executions>
> +      </plugin>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-antrun-plugin</artifactId>
> +        <version>1.1</version>
> +        <executions>
> +          <execution>
> +            <id>rename-swf</id>
> +            <phase>process-classes</phase>
> +            <configuration>
> +              <tasks>
> +                <move
> file="${project.build.directory}/${project.build.finalName}/continuum-flex-ui-${project.version}.swf"
> +                      tofile="src/main/webapp/index.swf"/>
> +                <move
> file="${project.build.directory}/${project.build.finalName}/continuum-flex-plugin-${project.version}.swf"
> +                      tofile="src/main/webapp/plugin1.swf"/>
> +                </tasks>
> +            </configuration>
> +            <goals>
> +              <goal>run</goal>
> +            </goals>
> +          </execution>
> +        </executions>
> +      </plugin>
> +      <plugin>
> +        <groupId>org.apache.maven.plugins</groupId>
> +        <artifactId>maven-clean-plugin</artifactId>
> +        <version>2.1.1</version>
> +        <configuration>
> +          <filesets>
> +            <fileset>
> +              <directory>${basedir}/src/main/webapp</directory>
> +              <includes>
> +                <include>index.swf</include>
> +                <include>plugin1.swf</include>
> +                <include>WEB-INF/flex/remoting-config.xml</include>
> +                <include>WEB-INF/flex/services-config.xml</include>
> +              </includes>
> +            </fileset>
> +          </filesets>
> +        </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>
> +      <plugin>
> +        <groupId>org.mortbay.jetty</groupId>
> +        <artifactId>maven-jetty-plugin</artifactId>
> +        <version>6.1.11</version>
> +        <configuration>
> +          <scanIntervalSeconds>10</scanIntervalSeconds>
> +          <contextPath>/continuum-flex-webapp</contextPath>
> +          <connectors>
> +            <connector
> implementation="org.mortbay.jetty.nio.SelectChannelConnector">
> +              <port>9090</port>
> +              <maxIdleTime>60000</maxIdleTime>
> +            </connector>
> +          </connectors>
> +        </configuration>
> +      </plugin>
> +    </plugins>
> +  </build>
> +
> +  <repositories>
> +    <repository>
> +      <!-- This repository contains blazeds artifacts -->
> +      <id>fna-repository</id>
> +      <name>fna-repository</name>
> +      <url>http://fna.googlecode.com/svn/trunk/fna/fna_m2_repository/
> </url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </repository>
> +    <repository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </repository>
> +  </repositories>
> +  <pluginRepositories>
> +    <pluginRepository>
> +      <id>flex-mojos-repository</id>
> +      <url>http://svn.sonatype.org/flexmojos/repository/</url>
> +      <releases>
> +        <enabled>true</enabled>
> +      </releases>
> +      <snapshots>
> +        <enabled>false</enabled>
> +      </snapshots>
> +    </pluginRepository>
> +  </pluginRepositories>
> +</project>
>
> Propchange: continuum/sandbox/continuum-flex/continuum-flex-webapp/pom.xml
>
> ------------------------------------------------------------------------------
>    svn:eol-style = native
>
>
>

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