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.continuum.dao.BuildDefinitionDao;
25 import org.apache.continuum.dao.ProjectDao;
26 import org.apache.maven.continuum.ContinuumException;
27 import org.apache.maven.continuum.execution.ContinuumBuildExecutor;
28 import org.apache.maven.continuum.execution.ContinuumBuildExecutorException;
29 import org.apache.maven.continuum.execution.manager.BuildExecutorManager;
30 import org.apache.maven.continuum.model.project.BuildDefinition;
31 import org.apache.maven.continuum.model.project.Project;
32 import org.apache.maven.continuum.store.ContinuumStoreException;
33 import org.apache.maven.continuum.utils.WorkingDirectoryService;
34
35
36
37
38
39
40
41 public class UpdateProjectFromWorkingDirectoryContinuumAction
42 extends AbstractContinuumAction
43 {
44
45
46
47 private WorkingDirectoryService workingDirectoryService;
48
49
50
51
52 private BuildExecutorManager buildExecutorManager;
53
54
55
56
57 private BuildDefinitionDao buildDefinitionDao;
58
59
60
61
62 private ProjectDao projectDao;
63
64 public void execute( Map context )
65 throws ContinuumStoreException, ContinuumException, ContinuumBuildExecutorException
66 {
67 Project project = getProject( context );
68
69 project = projectDao.getProjectWithAllDetails( project.getId() );
70
71 getLogger().info( "Updating project '" + project.getName() + "' from checkout." );
72
73 BuildDefinition buildDefinition = buildDefinitionDao.getBuildDefinition( getBuildDefinitionId( context ) );
74
75
76
77
78
79 ContinuumBuildExecutor builder = buildExecutorManager.getBuildExecutor( project.getExecutorId() );
80
81 builder.updateProjectFromCheckOut( workingDirectoryService.getWorkingDirectory( project ), project,
82 buildDefinition );
83
84
85
86
87
88 projectDao.updateProject( project );
89 }
90 }