Lines 63-68
Link Here
|
63 |
private IProject currentProject; |
63 |
private IProject currentProject; |
64 |
private boolean wasAutoBuilding; |
64 |
private boolean wasAutoBuilding; |
65 |
private Set<IProject> affectedProjects; |
65 |
private Set<IProject> affectedProjects; |
|
|
66 |
private boolean isAllDeployersProvideAffectedProjects = false; |
66 |
|
67 |
|
67 |
/** |
68 |
/** |
68 |
* |
69 |
* |
Lines 152-157
Link Here
|
152 |
*/ |
153 |
*/ |
153 |
private void deploy(List visitors, IVirtualComponent component, IProgressMonitor monitor) { |
154 |
private void deploy(List visitors, IVirtualComponent component, IProgressMonitor monitor) { |
154 |
IProject proj = component.getProject(); |
155 |
IProject proj = component.getProject(); |
|
|
156 |
boolean curIsAllDeployersProvideAffectedProjects = true; |
155 |
for (int i = 0; i < visitors.size(); i++) { |
157 |
for (int i = 0; i < visitors.size(); i++) { |
156 |
if (!(visitors.get(i) instanceof IConfigurationElement)) |
158 |
if (!(visitors.get(i) instanceof IConfigurationElement)) |
157 |
continue; |
159 |
continue; |
Lines 182-187
Link Here
|
182 |
if (changedProjects != null) { |
184 |
if (changedProjects != null) { |
183 |
this.affectedProjects.addAll(changedProjects); |
185 |
this.affectedProjects.addAll(changedProjects); |
184 |
} |
186 |
} |
|
|
187 |
} else { |
188 |
// There is at least one deployer does not implements the new ICommand2 interface. Therfore, |
189 |
// not all deployers have affected projects. |
190 |
curIsAllDeployersProvideAffectedProjects = false; |
185 |
} |
191 |
} |
186 |
addOKStatus(dep.getClass().getName()); |
192 |
addOKStatus(dep.getClass().getName()); |
187 |
} catch (CoreException ex) { |
193 |
} catch (CoreException ex) { |
Lines 191-196
Link Here
|
191 |
continue; |
197 |
continue; |
192 |
} |
198 |
} |
193 |
} |
199 |
} |
|
|
200 |
isAllDeployersProvideAffectedProjects = curIsAllDeployersProvideAffectedProjects; |
194 |
} |
201 |
} |
195 |
|
202 |
|
196 |
/** |
203 |
/** |
Lines 284-287
Link Here
|
284 |
|
291 |
|
285 |
return this.affectedProjects; |
292 |
return this.affectedProjects; |
286 |
} |
293 |
} |
|
|
294 |
|
295 |
/** |
296 |
* Check if all deployers provide affected projects information. This method will help the |
297 |
* caller to decide whether to use the affect project information or not. |
298 |
* @return true if all deployers provides the affected projects list; otherwise, return false. |
299 |
*/ |
300 |
public boolean isAllDeployersProvideAffectedProjects() { |
301 |
return isAllDeployersProvideAffectedProjects; |
302 |
} |
303 |
|
287 |
} |
304 |
} |