1 package org.apache.maven.continuum.core.action;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.Map;
23
24 import org.apache.commons.lang.StringUtils;
25 import org.apache.continuum.buildmanager.BuildsManager;
26 import org.apache.continuum.dao.ProjectDao;
27 import org.apache.maven.continuum.model.project.BuildDefinition;
28 import org.apache.maven.continuum.model.project.Project;
29 import org.apache.maven.continuum.utils.WorkingDirectoryService;
30
31
32
33
34
35
36
37 public class AddProjectToCheckOutQueueAction
38 extends AbstractContinuumAction
39 {
40
41
42
43 private WorkingDirectoryService workingDirectoryService;
44
45
46
47
48 private ProjectDao projectDao;
49
50
51
52
53 private BuildsManager parallelBuildsManager;
54
55 @SuppressWarnings("unchecked")
56 public void execute( Map context )
57 throws Exception
58 {
59 Project project = getProject( context, null );
60 if ( project == null )
61 {
62 project = projectDao.getProject( getProjectId( context ) );
63 }
64
65 String scmUsername = project.getScmUsername();
66 String scmPassword = project.getScmPassword();
67
68 if( scmUsername == null || StringUtils.isEmpty( scmUsername ) )
69 {
70 scmUsername = CheckoutProjectContinuumAction.getScmUsername( context, null );
71 }
72
73 if( scmPassword == null || StringUtils.isEmpty( scmPassword ) )
74 {
75 scmPassword = CheckoutProjectContinuumAction.getScmPassword( context, null );
76 }
77
78 BuildDefinition defaultBuildDefinition = getBuildDefinition( context );
79 parallelBuildsManager.checkoutProject( project.getId(), project.getName(),
80 workingDirectoryService.getWorkingDirectory( project ),
81 scmUsername, scmPassword, defaultBuildDefinition );
82 }
83 }