Return-Path: Delivered-To: apmail-maven-continuum-commits-archive@www.apache.org Received: (qmail 2357 invoked from network); 9 Nov 2007 10:26:20 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 9 Nov 2007 10:26:20 -0000 Received: (qmail 68119 invoked by uid 500); 9 Nov 2007 10:26:07 -0000 Delivered-To: apmail-maven-continuum-commits-archive@maven.apache.org Received: (qmail 68096 invoked by uid 500); 9 Nov 2007 10:26:07 -0000 Mailing-List: contact continuum-commits-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: continuum-dev@maven.apache.org Delivered-To: mailing list continuum-commits@maven.apache.org Received: (qmail 68073 invoked by uid 99); 9 Nov 2007 10:26:07 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 09 Nov 2007 02:26:07 -0800 X-ASF-Spam-Status: No, hits=-98.0 required=10.0 tests=ALL_TRUSTED,URIBL_BLACK X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 09 Nov 2007 10:26:43 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 2F6981A9832; Fri, 9 Nov 2007 02:25:43 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r593480 - in /maven/continuum/trunk/continuum-xmlrpc: continuum-xmlrpc-api/src/main/java/org/apache/maven/continuum/xmlrpc/ continuum-xmlrpc-api/src/main/mdo/ continuum-xmlrpc-api/src/main/resources/ continuum-xmlrpc-backup/src/main/java/or... Date: Fri, 09 Nov 2007 10:25:42 -0000 To: continuum-commits@maven.apache.org From: evenisse@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20071109102543.2F6981A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: evenisse Date: Fri Nov 9 02:25:41 2007 New Revision: 593480 URL: http://svn.apache.org/viewvc?rev=593480&view=rev Log: Backup build definitions templates Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/java/org/apache/maven/continuum/xmlrpc/ContinuumService.java maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/mdo/continuum-service.xml maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/resources/dozerBeanMapping.xml maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-backup/src/main/java/org/apache/maven/continuum/xmlrpc/backup/Backup.java maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-client/src/main/java/org/apache/maven/continuum/xmlrpc/client/ContinuumXmlRpcClient.java maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/AbstractContinuumSecureService.java maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/java/org/apache/maven/continuum/xmlrpc/ContinuumService.java URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/java/org/apache/maven/continuum/xmlrpc/ContinuumService.java?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/java/org/apache/maven/continuum/xmlrpc/ContinuumService.java (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/java/org/apache/maven/continuum/xmlrpc/ContinuumService.java Fri Nov 9 02:25:41 2007 @@ -21,6 +21,7 @@ import org.apache.maven.continuum.xmlrpc.project.AddingResult; import org.apache.maven.continuum.xmlrpc.project.BuildDefinition; +import org.apache.maven.continuum.xmlrpc.project.BuildDefinitionTemplate; import org.apache.maven.continuum.xmlrpc.project.BuildResult; import org.apache.maven.continuum.xmlrpc.project.BuildResultSummary; import org.apache.maven.continuum.xmlrpc.project.Project; @@ -242,6 +243,15 @@ * @throws Exception */ BuildDefinition addBuildDefinitionToProjectGroup( int projectGroupId, BuildDefinition buildDef ) + throws Exception; + + /** + * Get the build definition templates list. + * + * @return The build definitions templates list + * @throws Exception + */ + List getBuildDefinitionTemplates() throws Exception; // ---------------------------------------------------------------------- Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/mdo/continuum-service.xml URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/mdo/continuum-service.xml?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/mdo/continuum-service.xml (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/mdo/continuum-service.xml Fri Nov 9 02:25:41 2007 @@ -819,6 +819,48 @@ + + BuildDefinitionTemplate + 1.1.0+ + Template which contains some buildDefinitions + + + id + true + 1.1.0+ + int + + + name + 1.1.0+ + String + true + + + continuumDefault + 1.1.0+ + boolean + false + + true if this definition is a continuum default build def (cannot be removed) + + + + type + 1.1.0+ + String + type of the buid BuildDefinitionTemplate use for default + + + buildDefinitions + 1.1.0+ + + BuildDefinition + * + + + + Schedule Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/resources/dozerBeanMapping.xml URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/resources/dozerBeanMapping.xml?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/resources/dozerBeanMapping.xml (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-api/src/main/resources/dozerBeanMapping.xml Fri Nov 9 02:25:41 2007 @@ -184,4 +184,15 @@ org.apache.maven.continuum.xmlrpc.system.Installation org.apache.maven.continuum.model.system.Installation + + + org.apache.maven.continuum.xmlrpc.project.BuildDefinitionTemplate + org.apache.maven.continuum.model.project.BuildDefinitionTemplate + + buildDefinitions + buildDefinitions + org.apache.maven.continuum.xmlrpc.project.BuildDefinition + org.apache.maven.continuum.model.project.BuildDefinition + + Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-backup/src/main/java/org/apache/maven/continuum/xmlrpc/backup/Backup.java URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-backup/src/main/java/org/apache/maven/continuum/xmlrpc/backup/Backup.java?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-backup/src/main/java/org/apache/maven/continuum/xmlrpc/backup/Backup.java (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-backup/src/main/java/org/apache/maven/continuum/xmlrpc/backup/Backup.java Fri Nov 9 02:25:41 2007 @@ -26,6 +26,7 @@ import org.apache.log4j.Logger; import org.apache.maven.continuum.xmlrpc.client.ContinuumXmlRpcClient; import org.apache.maven.continuum.xmlrpc.project.BuildDefinition; +import org.apache.maven.continuum.xmlrpc.project.BuildDefinitionTemplate; import org.apache.maven.continuum.xmlrpc.project.BuildResult; import org.apache.maven.continuum.xmlrpc.project.BuildResultSummary; import org.apache.maven.continuum.xmlrpc.project.Project; @@ -231,6 +232,34 @@ writeObject( install, "installation", true ); } endTag( "installations", true ); + } + } + + private static void backupAllBuildDefinitionTemplates() + throws Exception + { + LOGGER.info( "Backup Build Definitions Templates" ); + List bdts = client.getBuildDefinitionTemplates(); + if ( bdts != null && !bdts.isEmpty() ) + { + startTag( "buildDefinitionTemplates", true ); + for ( BuildDefinitionTemplate bdt : bdts ) + { + LOGGER.debug( "Backup build definition template " + bdt.getName() ); + startTag( "buildDefinitionTemplate", true ); + writeSimpleFields( bdt ); + + List bds = bdt.getBuildDefinitions(); + if ( bds != null && !bds.isEmpty() ) + { + for ( BuildDefinition bd : bds ) + { + backupBuildDefinition( bd ); + } + } + endTag( "buildDefinitionTemplate", true ); + } + endTag( "buildDefinitionTemplates", true ); } } Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-client/src/main/java/org/apache/maven/continuum/xmlrpc/client/ContinuumXmlRpcClient.java URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-client/src/main/java/org/apache/maven/continuum/xmlrpc/client/ContinuumXmlRpcClient.java?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-client/src/main/java/org/apache/maven/continuum/xmlrpc/client/ContinuumXmlRpcClient.java (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-client/src/main/java/org/apache/maven/continuum/xmlrpc/client/ContinuumXmlRpcClient.java Fri Nov 9 02:25:41 2007 @@ -22,6 +22,7 @@ import org.apache.maven.continuum.xmlrpc.ContinuumService; import org.apache.maven.continuum.xmlrpc.project.AddingResult; import org.apache.maven.continuum.xmlrpc.project.BuildDefinition; +import org.apache.maven.continuum.xmlrpc.project.BuildDefinitionTemplate; import org.apache.maven.continuum.xmlrpc.project.BuildResult; import org.apache.maven.continuum.xmlrpc.project.BuildResultSummary; import org.apache.maven.continuum.xmlrpc.project.ContinuumProjectState; @@ -274,6 +275,12 @@ throws Exception { return continuum.addBuildDefinitionToProjectGroup( projectGroupId, buildDef ); + } + + public List getBuildDefinitionTemplates() + throws Exception + { + return continuum.getBuildDefinitionTemplates(); } // ---------------------------------------------------------------------- Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/AbstractContinuumSecureService.java URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/AbstractContinuumSecureService.java?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/AbstractContinuumSecureService.java (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/AbstractContinuumSecureService.java Fri Nov 9 02:25:41 2007 @@ -485,4 +485,20 @@ checkAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_PROFILES ); } + + /** + * Check if the current user is authorized to manage the build definitions templates + * + * @throws ContinuumException if the user isn't authorized if the user isn't authenticated + */ + protected void checkManageBuildDefinitionTemplatesAuthorization() + throws ContinuumException + { + if ( !isAuthenticated() ) + { + throw new ContinuumException( "Authentication required." ); + } + + checkAuthorization( ContinuumRoleConstants.CONTINUUM_MANAGE_BUILD_TEMPLATES ); + } } Modified: maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java URL: http://svn.apache.org/viewvc/maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java?rev=593480&r1=593479&r2=593480&view=diff ============================================================================== --- maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java (original) +++ maven/continuum/trunk/continuum-xmlrpc/continuum-xmlrpc-server/src/main/java/org/apache/maven/continuum/xmlrpc/server/ContinuumServiceImpl.java Fri Nov 9 02:25:41 2007 @@ -32,6 +32,7 @@ import org.apache.maven.continuum.store.ContinuumStoreException; import org.apache.maven.continuum.xmlrpc.project.AddingResult; import org.apache.maven.continuum.xmlrpc.project.BuildDefinition; +import org.apache.maven.continuum.xmlrpc.project.BuildDefinitionTemplate; import org.apache.maven.continuum.xmlrpc.project.BuildResult; import org.apache.maven.continuum.xmlrpc.project.BuildResultSummary; import org.apache.maven.continuum.xmlrpc.project.Project; @@ -411,6 +412,21 @@ return populateBuildDefinition( bd ); } + public List getBuildDefinitionTemplates() + throws Exception + { + checkManageBuildDefinitionTemplatesAuthorization(); + List bdts = + continuum.getBuildDefinitionService().getAllBuildDefinitionTemplate(); + + List result = new ArrayList(); + for ( org.apache.maven.continuum.model.project.BuildDefinitionTemplate bdt : bdts ) + { + result.add( populateBuildDefinitionTemplate( bdt ) ); + } + return result; + } + // ---------------------------------------------------------------------- // Building // ---------------------------------------------------------------------- @@ -912,6 +928,12 @@ bd.setProfile( populateProfile( buildDef.getProfile() ) ); bd.setSchedule( populateSchedule( buildDef.getSchedule() ) ); return bd; + } + + private BuildDefinitionTemplate populateBuildDefinitionTemplate( + org.apache.maven.continuum.model.project.BuildDefinitionTemplate bdt ) + { + return (BuildDefinitionTemplate) mapper.map( bdt, BuildDefinitionTemplate.class ); } private org.apache.maven.continuum.model.project.Schedule populateSchedule( Schedule schedule )