You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ct...@apache.org on 2008/12/11 11:40:25 UTC
svn commit: r725646 - in
/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport:
./ continuum-distributed-build-transport-common/
continuum-distributed-build-transport-common/src/main/java/org...
Author: ctan
Date: Thu Dec 11 02:40:23 2008
New Revision: 725646
URL: http://svn.apache.org/viewvc?rev=725646&view=rev
Log:
- refactored service methods to use xmlrpc spec return types.
- added test modules
- used atlassian's xmlrpc
Submitted By: Napoleon Esmundo C. Ramirez
Added:
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java (with props)
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java (with props)
Modified:
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/pom.xml
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/MasterBuildAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/SlaveBuildAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/pom.xml
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/DefaultMasterBuildAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/ProxySlaveAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/DefaultSlaveBuildAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/ProxyMasterAgentTransportService.java
continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/pom.xml
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/pom.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/pom.xml?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/pom.xml (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/pom.xml Thu Dec 11 02:40:23 2008
@@ -29,24 +29,19 @@
<dependencies>
<dependency>
- <groupId>org.apache.xmlrpc</groupId>
- <artifactId>xmlrpc-common</artifactId>
- <version>3.0</version>
+ <groupId>com.atlassian.xmlrpc</groupId>
+ <artifactId>atlassian-xmlrpc-binder</artifactId>
+ <version>0.8.2</version>
</dependency>
<dependency>
- <groupId>org.apache.xmlrpc</groupId>
- <artifactId>xmlrpc-server</artifactId>
- <version>3.0</version>
- </dependency>
- <dependency>
- <groupId>org.apache.xmlrpc</groupId>
- <artifactId>xmlrpc-client</artifactId>
- <version>3.0</version>
+ <groupId>com.atlassian.xmlrpc</groupId>
+ <artifactId>atlassian-xmlrpc-binder-server-spring</artifactId>
+ <version>0.8.2</version>
</dependency>
<dependency>
<groupId>org.apache.continuum</groupId>
<artifactId>continuum-buildagent</artifactId>
- <version>1.3-SNAPSHOT</version>
+ <version>1.3.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/MasterBuildAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/MasterBuildAgentTransportService.java?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/MasterBuildAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/MasterBuildAgentTransportService.java Thu Dec 11 02:40:23 2008
@@ -2,6 +2,8 @@
import java.util.Map;
+import com.atlassian.xmlrpc.ServiceObject;
+
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -24,11 +26,12 @@
/**
* MasterBuildAgentTransportService
*/
+@ServiceObject( "MasterBuildAgentTransportService" )
public interface MasterBuildAgentTransportService
{
- void returnBuildResult( Map buildResult ) throws Exception;
+ public Boolean returnBuildResult( Map buildResult ) throws Exception;
- void returnScmResult( Map scmResult ) throws Exception;
+ public Boolean returnScmResult( Map scmResult ) throws Exception;
- boolean ping() throws Exception;
+ public Boolean ping() throws Exception;
}
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/SlaveBuildAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/SlaveBuildAgentTransportService.java?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/SlaveBuildAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-common/src/main/java/org/apache/continuum/distributed/transport/SlaveBuildAgentTransportService.java Thu Dec 11 02:40:23 2008
@@ -5,6 +5,8 @@
import org.apache.continuum.buildagent.model.Installation;
+import com.atlassian.xmlrpc.ServiceObject;
+
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
@@ -27,17 +29,18 @@
/**
* SlaveBuildAgentTransportService
*/
+@ServiceObject( "SlaveBuildAgentTransportService" )
public interface SlaveBuildAgentTransportService
{
- void buildProjects( List<Map> projectsBuildContext ) throws Exception;
+ public Boolean buildProjects( List<Map> projectsBuildContext ) throws Exception;
- Map getBuildResult( int projectId ) throws Exception;
+ public Map getBuildResult( int projectId ) throws Exception;
- int getProjectCurrentlyBuilding() throws Exception;
+ public Integer getProjectCurrentlyBuilding() throws Exception;
- List<Installation> getAvailableInstallations() throws Exception;
+ public List<Installation> getAvailableInstallations() throws Exception;
- boolean isBusy() throws Exception;
+ public Boolean isBusy() throws Exception;
- boolean ping() throws Exception;
+ public Boolean ping() throws Exception;
}
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/pom.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/pom.xml?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/pom.xml (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/pom.xml Thu Dec 11 02:40:23 2008
@@ -33,29 +33,4 @@
<artifactId>continuum-distributed-build-transport-common</artifactId>
</dependency>
</dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>exec-maven-plugin</artifactId>
- <version>1.1</version>
- <executions>
- <execution>
- <goals>
- <goal>exec</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <executable>java</executable>
- <mainClass>org.apache.continuum.distributed.transport.master.SampleClient</mainClass>
- <arguments>
- <argument>http://localhost:9191/xmlrpc</argument>
- <argument>login</argument>
- <argument>password</argument>
- </arguments>
- </configuration>
- </plugin>
- </plugins>
- </build>
</project>
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/DefaultMasterBuildAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/DefaultMasterBuildAgentTransportService.java?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/DefaultMasterBuildAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/DefaultMasterBuildAgentTransportService.java Thu Dec 11 02:40:23 2008
@@ -33,23 +33,27 @@
{
private Logger log = LoggerFactory.getLogger( this.getClass() );
- public void returnBuildResult( Map buildResult )
+ public Boolean returnBuildResult( Map buildResult )
throws Exception
{
log.info( "Build result returned." );
+
+ return Boolean.TRUE;
}
- public void returnScmResult( Map scmResult )
+ public Boolean returnScmResult( Map scmResult )
throws Exception
{
log.info( "SCM result returned." );
+
+ return Boolean.TRUE;
}
- public boolean ping()
+ public Boolean ping()
throws Exception
{
- log.info( "Ping" );
+ log.info( "Ping ok" );
- return true;
+ return Boolean.TRUE;
}
}
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/ProxySlaveAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/ProxySlaveAgentTransportService.java?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/ProxySlaveAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-master/src/main/java/org/apache/continuum/distributed/transport/master/ProxySlaveAgentTransportService.java Thu Dec 11 02:40:23 2008
@@ -25,12 +25,14 @@
import org.apache.continuum.buildagent.model.Installation;
import org.apache.continuum.distributed.transport.SlaveBuildAgentTransportService;
-import org.apache.xmlrpc.client.XmlRpcClient;
-import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
-import org.apache.xmlrpc.client.util.ClientFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.atlassian.xmlrpc.AuthenticationInfo;
+import com.atlassian.xmlrpc.Binder;
+import com.atlassian.xmlrpc.BindingException;
+import com.atlassian.xmlrpc.DefaultBinder;
+
/**
* ProxySlaveAgentTransportService
*/
@@ -41,51 +43,46 @@
private SlaveBuildAgentTransportService slave;
- private XmlRpcClient client;
-
public ProxySlaveAgentTransportService( URL serviceUrl )
+ throws Exception
{
this( serviceUrl, null, null );
}
public ProxySlaveAgentTransportService( URL serviceUrl, String login, String password )
+ throws Exception
{
- XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl()
+ Binder binder = new DefaultBinder();
+ AuthenticationInfo authnInfo = new AuthenticationInfo( login, password );
+
+ try
{
- public boolean isEnabledForExtensions()
- {
- return true;
- }
- };
-
- if ( login != null && !"".equals( login ) )
+ slave = binder.bind( SlaveBuildAgentTransportService.class, serviceUrl, authnInfo );
+ }
+ catch ( BindingException e )
{
- config.setBasicUserName( login );
- config.setBasicPassword( password );
+ log.error( "Can't bind service interface " + SlaveBuildAgentTransportService.class.getName() + " to " + serviceUrl.toExternalForm() + " using " + authnInfo.getUsername() + ", " + authnInfo.getPassword(), e );
+ throw new Exception( "Can't bind service interface " + SlaveBuildAgentTransportService.class.getName() + " to " + serviceUrl.toExternalForm() + " using " + authnInfo.getUsername() + ", " + authnInfo.getPassword(), e);
}
- config.setServerURL( serviceUrl );
-
- client = new XmlRpcClient();
- client.setConfig( config );
- ClientFactory factory = new ClientFactory( client );
- slave = (SlaveBuildAgentTransportService) factory.newInstance( SlaveBuildAgentTransportService.class );
}
- public void buildProjects( List<Map> projectsBuildContext )
+ public Boolean buildProjects( List<Map> projectsBuildContext )
throws Exception
{
+ Boolean result = null;
+
try
{
- //slave.buildProjects( projectsBuildContext );
+ result = slave.buildProjects( projectsBuildContext );
log.info( "Building projects." );
- Thread.sleep( 2000000 );
- log.info( "Build finished" );
}
catch ( Exception e )
{
log.error( "Failed to build projects.", e );
throw new Exception( "Failed to build projects.", e );
}
+
+ return result;
}
public List<Installation> getAvailableInstallations()
@@ -114,7 +111,7 @@
try
{
- slave.getBuildResult( projectId );
+ buildResult = slave.getBuildResult( projectId );
log.info( "Build result for project " + projectId + " acquired." );
}
catch ( Exception e )
@@ -126,33 +123,59 @@
return buildResult;
}
- public int getProjectCurrentlyBuilding()
+ public Integer getProjectCurrentlyBuilding()
throws Exception
{
- int projectId = slave.getProjectCurrentlyBuilding();
+ Integer projectId = null;
- log.info( "Currently building project " + projectId );
+ try
+ {
+ projectId = slave.getProjectCurrentlyBuilding();
+ log.info( "Currently building project " + projectId );
+ }
+ catch ( Exception e )
+ {
+ log.error( "Failed to get the currently building project", e );
+ throw new Exception( "Failed to get the currently building project", e );
+ }
return projectId;
}
- public boolean isBusy()
+ public Boolean isBusy()
throws Exception
{
- boolean busy = slave.isBusy();
+ Boolean busy = null;
- log.info( "Build agent is " + ( busy ? "" : "not" ) + " busy." );
+ try
+ {
+ busy = slave.isBusy();
+ log.info( "Build agent is " + ( busy.booleanValue() ? "" : "not" ) + " busy." );
+ }
+ catch ( Exception e )
+ {
+ log.error( "Failed to determine if the build agent is busy.", e );
+ throw new Exception( "Failed to determine if the build agent is busy.", e );
+ }
return busy;
}
- public boolean ping()
+ public Boolean ping()
throws Exception
{
- //boolean result = slave.ping();
- boolean result = true;
-
- log.info( "Ping " + (result ? "ok" : "failed") );
+ Boolean result = null;
+
+ try
+ {
+ result = slave.ping();
+ log.info( "Ping " + ( result.booleanValue() ? "ok" : "failed" ) );
+ }
+ catch ( Exception e )
+ {
+ log.info( "Ping error" );
+ throw new Exception( "Ping error", e );
+ }
return result;
}
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/DefaultSlaveBuildAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/DefaultSlaveBuildAgentTransportService.java?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/DefaultSlaveBuildAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/DefaultSlaveBuildAgentTransportService.java Thu Dec 11 02:40:23 2008
@@ -37,25 +37,31 @@
{
private Logger log = LoggerFactory.getLogger( this.getClass() );
- private ContinuumBuildAgentService buildAgentService;
+ private ContinuumBuildAgentService continuumBuildAgentService;
- public DefaultSlaveBuildAgentTransportService()
+ public DefaultSlaveBuildAgentTransportService( ContinuumBuildAgentService continuumBuildAgentService )
{
- log.info( "asdfasdfasdfasdf" );
+ this.continuumBuildAgentService = continuumBuildAgentService;
}
- public void buildProjects( List<Map> projectsBuildContext )
+ public Boolean buildProjects( List<Map> projectsBuildContext )
throws Exception
{
+ Boolean result = Boolean.FALSE;
+
try
{
- buildAgentService.buildProjects( projectsBuildContext );
+ continuumBuildAgentService.buildProjects( projectsBuildContext );
+ result = Boolean.TRUE;
+
log.info( "Building projects." );
}
catch ( ContinuumBuildAgentException e )
{
log.error( "Failed to build projects.", e );
}
+
+ return result;
}
public List<Installation> getAvailableInstallations()
@@ -65,7 +71,7 @@
try
{
- installations = buildAgentService.getAvailableInstallations();
+ installations = continuumBuildAgentService.getAvailableInstallations();
log.info( "Available installations: " + installations.size() );
}
catch ( ContinuumBuildAgentException e )
@@ -83,7 +89,7 @@
try
{
- buildAgentService.getBuildResult( projectId );
+ continuumBuildAgentService.getBuildResult( projectId );
log.info( "Build result for project " + projectId + " acquired." );
}
catch ( ContinuumBuildAgentException e )
@@ -94,41 +100,38 @@
return buildResult;
}
- public int getProjectCurrentlyBuilding()
+ public Integer getProjectCurrentlyBuilding()
throws Exception
{
- int projectId = buildAgentService.getProjectCurrentlyBuilding();
+ Integer projectId = new Integer( continuumBuildAgentService.getProjectCurrentlyBuilding() );
- log.info( "Currently building project " + projectId );
+ log.info( "Currently building project " + projectId.intValue() );
return projectId;
}
- public boolean isBusy()
+ public Boolean isBusy()
throws Exception
{
- boolean busy = buildAgentService.isBusy();
-
- log.info( "Build agent is " + ( busy ? "" : "not" ) + " busy." );
+ Boolean busy = null;
+ try
+ {
+ busy = new Boolean( continuumBuildAgentService.isBusy() );
+ log.info( "Build agent is " + ( busy ? "" : "not" ) + " busy." );
+ }
+ catch ( ContinuumBuildAgentException e )
+ {
+ log.error( "Failed to determine if master is busy.", e );
+ }
return busy;
}
- public boolean ping()
+ public Boolean ping()
throws Exception
{
log.info( "Ping ok" );
- return true;
- }
-
- public ContinuumBuildAgentService getBuildAgentService()
- {
- return buildAgentService;
- }
-
- public void setBuildAgentService( ContinuumBuildAgentService buildAgentService )
- {
- this.buildAgentService = buildAgentService;
+ return Boolean.TRUE;
}
}
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/ProxyMasterAgentTransportService.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/ProxyMasterAgentTransportService.java?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/ProxyMasterAgentTransportService.java (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-slave/src/main/java/org/apache/continuum/distributed/transport/slave/ProxyMasterAgentTransportService.java Thu Dec 11 02:40:23 2008
@@ -23,12 +23,14 @@
import java.util.Map;
import org.apache.continuum.distributed.transport.MasterBuildAgentTransportService;
-import org.apache.xmlrpc.client.XmlRpcClient;
-import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
-import org.apache.xmlrpc.client.util.ClientFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.atlassian.xmlrpc.AuthenticationInfo;
+import com.atlassian.xmlrpc.Binder;
+import com.atlassian.xmlrpc.BindingException;
+import com.atlassian.xmlrpc.DefaultBinder;
+
/**
* ProxyMasterAgentTransportService
*/
@@ -40,53 +42,81 @@
MasterBuildAgentTransportService master;
public ProxyMasterAgentTransportService( URL serviceUrl )
+ throws Exception
{
this( serviceUrl, null, null );
}
public ProxyMasterAgentTransportService( URL serviceUrl, String login, String password )
+ throws Exception
{
- XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl()
+ Binder binder = new DefaultBinder();
+ AuthenticationInfo authnInfo = new AuthenticationInfo( login, password );
+
+ try
{
- public boolean isEnabledForExtensions()
- {
- return true;
- }
- };
-
- if ( login != null && !"".equals( login ) )
+ master = binder.bind( MasterBuildAgentTransportService.class, serviceUrl, authnInfo );
+ }
+ catch ( BindingException e )
{
- config.setBasicUserName( login );
- config.setBasicPassword( password );
+ log.error( "Can't bind service interface " + MasterBuildAgentTransportService.class.getName() + " to " + serviceUrl.toExternalForm() + " using " + authnInfo.getUsername() + ", " + authnInfo.getPassword(), e );
+ throw new Exception( "Can't bind service interface " + MasterBuildAgentTransportService.class.getName() + " to " + serviceUrl.toExternalForm() + " using " + authnInfo.getUsername() + ", " + authnInfo.getPassword(), e);
}
- config.setServerURL( serviceUrl );
-
- XmlRpcClient client = new XmlRpcClient();
- client.setConfig( config );
- ClientFactory factory = new ClientFactory( client );
- master = (MasterBuildAgentTransportService) factory.newInstance( MasterBuildAgentTransportService.class );
}
- public void returnBuildResult( Map buildResult )
+ public Boolean returnBuildResult( Map buildResult )
throws Exception
{
- master.returnBuildResult( buildResult );
- log.info( "Returning the build result." );
+ Boolean result = null;
+
+ try
+ {
+ result = master.returnBuildResult( buildResult );
+ log.info( "Returning the build result." );
+ }
+ catch ( Exception e )
+ {
+ log.error( "Failed to return the build result.", e );
+ throw new Exception( "Failed to return the build result", e);
+ }
+
+ return result;
}
- public void returnScmResult( Map scmResult )
+ public Boolean returnScmResult( Map scmResult )
throws Exception
{
- master.returnScmResult( scmResult );
- log.info( "Returning the scm result." );
+ Boolean result = null;
+
+ try
+ {
+ result = master.returnScmResult( scmResult );
+ log.info( "Returning the scm result." );
+ }
+ catch ( Exception e )
+ {
+ log.error( "Failed to return the SCM result.", e );
+ throw new Exception( "Failed to return the SCM result", e);
+ }
+
+ return result;
}
- public boolean ping()
+ public Boolean ping()
throws Exception
{
- boolean result = master.ping();
+ Boolean result = null;
- log.info( "Ping " + (result ? "ok" : "failed") );
+ try
+ {
+ result = master.ping();
+ log.info( "Ping " + ( result.booleanValue() ? "ok" : "failed" ) );
+ }
+ catch ( Exception e )
+ {
+ log.info( "Ping error" );
+ throw new Exception( "Ping error", e );
+ }
return result;
}
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml Thu Dec 11 02:40:23 2008
@@ -0,0 +1,113 @@
+<?xml version="1.0"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ -->
+<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">
+ <parent>
+ <artifactId>continuum-distributed-build-transport</artifactId>
+ <groupId>org.apache.continuum</groupId>
+ <version>1.3.1-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.apache.continuum</groupId>
+ <artifactId>continuum-distributed-build-transport-tests</artifactId>
+ <packaging>war</packaging>
+ <name>Continuum :: Distributed Build :: Transport :: Tests</name>
+ <url>http://continuum.apache.org</url>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.continuum</groupId>
+ <artifactId>continuum-distributed-build-transport-slave</artifactId>
+ <version>1.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.continuum</groupId>
+ <artifactId>continuum-distributed-build-transport-master</artifactId>
+ <version>1.3.1-SNAPSHOT</version>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-web</artifactId>
+ <version>2.5.4</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <testSourceDirectory>src/test/it</testSourceDirectory>
+ <plugins>
+ <plugin>
+ <groupId>org.mortbay.jetty</groupId>
+ <artifactId>maven-jetty-plugin</artifactId>
+ <version>6.1.11</version>
+ <configuration>
+ <scanIntervalSeconds>10</scanIntervalSeconds>
+ <contextPath>/</contextPath>
+ <stopKey>stopkey</stopKey>
+ <stopPort>9192</stopPort>
+ <jettyEnvXml>${basedir}/src/jetty-env.xml</jettyEnvXml>
+ <connectors>
+ <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
+ <port>9191</port>
+ <maxIdleTime>60000</maxIdleTime>
+ </connector>
+ </connectors>
+ </configuration>
+ <executions>
+ <execution>
+ <id>start-jetty</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <scanIntervalSeconds>0</scanIntervalSeconds>
+ <daemon>true</daemon>
+ </configuration>
+ </execution>
+ <execution>
+ <id>stop-jetty</id>
+ <phase>post-integration-test</phase>
+ <goals>
+ <goal>stop</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4.3</version>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ <executions>
+ <execution>
+ <id>integration-tests</id>
+ <phase>integration-test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <configuration>
+ <skip>false</skip>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml Thu Dec 11 02:40:23 2008
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one
+ ~ or more contributor license agreements. See the NOTICE file
+ ~ distributed with this work for additional information
+ ~ regarding copyright ownership. The ASF licenses this file
+ ~ to you under the Apache License, Version 2.0 (the
+ ~ "License"); you may not use this file except in compliance
+ ~ with the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing,
+ ~ software distributed under the License is distributed on an
+ ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ~ KIND, either express or implied. See the License for the
+ ~ specific language governing permissions and limitations
+ ~ under the License.
+ -->
+
+<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
+
+<Configure class="org.mortbay.jetty.webapp.WebAppContext" />
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/jetty-env.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml Thu Dec 11 02:40:23 2008
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
+
+ <bean id="masterBuildAgentTransportService" class="org.apache.continuum.distributed.transport.master.DefaultMasterBuildAgentTransportService"/>
+
+ <bean id="slaveBuildAgentTransportService" class="org.apache.continuum.distributed.transport.slave.DefaultSlaveBuildAgentTransportService">
+ <constructor-arg ref="continuumBuildAgentService"/>
+ </bean>
+
+ <bean id="continuumBuildAgentService" class="org.apache.continuum.buildagent.ContinuumBuildAgentServiceImpl">
+ <property name="configurationService" ref="configurationService"/>
+ </bean>
+
+ <bean id="configurationService" class="org.apache.continuum.buildagent.configuration.DefaultConfigurationService">
+ <property name="configuration" ref="continuumConfiguration" />
+ </bean>
+
+ <bean id="continuumConfiguration" class="org.apache.continuum.buildagent.configuration.DefaultContinuumConfiguration">
+ <property name="configurationFile" value="file:${appserver.base}/conf/continuum.xml" />
+ </bean>
+
+ <bean name="xmlrpcServicesList" class="java.util.ArrayList">
+ <constructor-arg>
+ <list>
+ <ref bean="slaveBuildAgentTransportService"/>
+ <ref bean="masterBuildAgentTransportService"/>
+ </list>
+ </constructor-arg>
+ </bean>
+
+</beans>
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/applicationContext.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml Thu Dec 11 02:40:23 2008
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
+ <appender name="console" class="org.apache.log4j.ConsoleAppender">
+ <param name="Target" value="System.out"/>
+ <layout class="org.apache.log4j.PatternLayout">
+ <param name="ConversionPattern" value="[%p] %-30c{1} - %m%n"/>
+ </layout>
+ </appender>
+ <logger name="org.apache.continuum.distributed">
+ <level value="info"/>
+ </logger>
+ <logger name="org.springframework">
+ <level value="error"/>
+ </logger>
+ <root>
+ <priority value ="info" />
+ <appender-ref ref="console" />
+ </root>
+</log4j:configuration>
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/resources/log4j.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml Thu Dec 11 02:40:23 2008
@@ -0,0 +1,61 @@
+<!DOCTYPE web-app PUBLIC
+ "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+ "http://java.sun.com/dtd/web-app_2_3.dtd" >
+
+<web-app>
+ <display-name>Continuum Distributed Build Transport Tests</display-name>
+
+ <listener>
+ <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
+ </listener>
+
+ <context-param>
+ <param-name>contextConfigLocation</param-name>
+ <param-value>
+ classpath*:/META-INF/spring-context.xml
+ classpath*:/applicationContext.xml
+ </param-value>
+ </context-param>
+
+ <servlet>
+ <servlet-name>MasterXmlRpcServlet</servlet-name>
+ <servlet-class>
+ com.atlassian.xmlrpc.spring.BinderSpringXmlRpcServlet
+ </servlet-class>
+ <init-param>
+ <param-name>serviceListBeanName</param-name>
+ <param-value>xmlrpcServicesList</param-value>
+ </init-param>
+ <init-param>
+ <param-name>enabledForExtensions</param-name>
+ <param-value>true</param-value>
+ </init-param>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+
+ <servlet>
+ <servlet-name>SlaveXmlRpcServlet</servlet-name>
+ <servlet-class>
+ com.atlassian.xmlrpc.spring.BinderSpringXmlRpcServlet
+ </servlet-class>
+ <init-param>
+ <param-name>serviceListBeanName</param-name>
+ <param-value>xmlrpcServicesList</param-value>
+ </init-param>
+ <init-param>
+ <param-name>enabledForExtensions</param-name>
+ <param-value>true</param-value>
+ </init-param>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>MasterXmlRpcServlet</servlet-name>
+ <url-pattern>/master-xmlrpc</url-pattern>
+ </servlet-mapping>
+
+ <servlet-mapping>
+ <servlet-name>SlaveXmlRpcServlet</servlet-name>
+ <url-pattern>/slave-xmlrpc</url-pattern>
+ </servlet-mapping>
+</web-app>
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/WEB-INF/web.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp Thu Dec 11 02:40:23 2008
@@ -0,0 +1,5 @@
+<html>
+<body>
+<h2>Hello World!</h2>
+</body>
+</html>
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/main/webapp/index.jsp
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java Thu Dec 11 02:40:23 2008
@@ -0,0 +1,86 @@
+package org.apache.continuum.distributed.transport.tests;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.net.URL;
+import java.util.HashMap;
+
+import junit.framework.TestCase;
+
+import org.apache.continuum.distributed.transport.MasterBuildAgentTransportService;
+import org.apache.continuum.distributed.transport.slave.ProxyMasterAgentTransportService;
+import org.springframework.beans.factory.BeanFactory;
+import org.springframework.beans.factory.xml.XmlBeanFactory;
+import org.springframework.core.io.ClassPathResource;
+
+/**
+ * MasterBuildAgentTransportServiceTest
+ */
+public class MasterBuildAgentTransportServiceTest
+ extends TestCase
+{
+ private MasterBuildAgentTransportService masterProxy;
+
+ private BeanFactory beanFactory = new XmlBeanFactory( new ClassPathResource( "applicationContext.xml" ) );
+
+ protected void setUp()
+ throws Exception
+ {
+ super.setUp();
+
+ masterProxy = new ProxyMasterAgentTransportService( new URL( "http://localhost:9191/master-xmlrpc"), null , null );
+ }
+
+ public void testReturnBuildResult()
+ {
+ try
+ {
+ masterProxy.returnBuildResult( new HashMap() );
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testReturnScmResult()
+ {
+ try
+ {
+ masterProxy.returnScmResult( new HashMap() );
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testPing()
+ {
+ try
+ {
+ masterProxy.ping();
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+}
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/MasterBuildAgentTransportServiceTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java?rev=725646&view=auto
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java (added)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java Thu Dec 11 02:40:23 2008
@@ -0,0 +1,122 @@
+package org.apache.continuum.distributed.transport.tests;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import java.net.URL;
+import java.util.Collections;
+
+import junit.framework.TestCase;
+
+import org.apache.continuum.distributed.transport.SlaveBuildAgentTransportService;
+import org.apache.continuum.distributed.transport.master.ProxySlaveAgentTransportService;
+import org.springframework.beans.factory.BeanFactory;
+import org.springframework.beans.factory.xml.XmlBeanFactory;
+import org.springframework.core.io.ClassPathResource;
+
+/**
+ * SlaveBuildAgentTransportServiceTest
+ */
+public class SlaveBuildAgentTransportServiceTest
+ extends TestCase
+{
+ private SlaveBuildAgentTransportService slaveProxy;
+
+ private BeanFactory beanFactory = new XmlBeanFactory( new ClassPathResource( "applicationContext.xml" ) );
+
+ protected void setUp()
+ throws Exception
+ {
+ super.setUp();
+
+ slaveProxy = new ProxySlaveAgentTransportService( new URL( "http://localhost:9191/slave-xmlrpc"), null , null );
+ }
+
+ public void testBuildProjects()
+ {
+ try
+ {
+ slaveProxy.buildProjects( Collections.EMPTY_LIST );
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testGetAvailableInstallations()
+ {
+ try
+ {
+ slaveProxy.getAvailableInstallations();
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testGetBuildResult()
+ {
+ try
+ {
+ slaveProxy.getBuildResult( 0 );
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testGetProjectCurrentlyBuilding()
+ {
+ try
+ {
+ slaveProxy.getProjectCurrentlyBuilding();
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testIsBusy()
+ {
+ try
+ {
+ slaveProxy.isBusy().booleanValue();
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+
+ public void testPing()
+ {
+ try
+ {
+ slaveProxy.ping();
+ }
+ catch ( Exception e )
+ {
+ fail( e.getMessage() );
+ }
+ }
+}
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/continuum-distributed-build-transport-tests/src/test/it/org/apache/continuum/distributed/transport/tests/SlaveBuildAgentTransportServiceTest.java
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Modified: continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/pom.xml
URL: http://svn.apache.org/viewvc/continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/pom.xml?rev=725646&r1=725645&r2=725646&view=diff
==============================================================================
--- continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/pom.xml (original)
+++ continuum/branches/continuum-distributed-builds/continuum-distributed-build/continuum-distributed-build-transport/pom.xml Thu Dec 11 02:40:23 2008
@@ -30,6 +30,7 @@
<module>continuum-distributed-build-transport-common</module>
<module>continuum-distributed-build-transport-master</module>
<module>continuum-distributed-build-transport-slave</module>
+ <module>continuum-distributed-build-transport-tests</module>
</modules>
<dependencies>
<dependency>