continuum-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From eveni...@apache.org
Subject 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-flex-com...
Date Wed, 20 Aug 2008 14:12:11 GMT
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</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}</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
View raw message