in language/ide/bridges/apisupport/bridge/org/netbeans/modules/jackpot30/apisupport/bridgeimpl/ProjectDependencyUpgraderImpl.java [67:128]
private boolean ensureDependency(Project currentProject, String cnb, String displayName, String releaseVersion, SpecificationVersion spec, final boolean canShowUI) {
NbModuleProvider currentNbModule = currentProject.getLookup().lookup(NbModuleProvider.class);
if (currentNbModule == null) {
return false;
}
try {
NbModuleProject currentNbModuleProject = currentProject.getLookup().lookup(NbModuleProject.class);
if (currentNbModuleProject == null) {
return false;
}
ProjectXMLManager m = new ProjectXMLManager(currentNbModuleProject);
ModuleDependency dep = m.getModuleDependency(cnb);
if (dep == null) {
if (showDependencyUpgradeDialog(currentProject, displayName, null, spec, false, canShowUI)) {
ModuleEntry me = currentNbModuleProject.getModuleList().getEntry(cnb);
ModuleDependency nue = new ModuleDependency(me,
releaseVersion != null ? releaseVersion : me.getReleaseVersion(),
spec != null ? spec.toString() : me.getSpecificationVersion(),
true,
false);
m.addDependency(nue);
ProjectManager.getDefault().saveProject(currentProject);
}
return true;
}
if (dep.getSpecificationVersion() == null) {
//impl.dep?
return false;
}
SpecificationVersion currentDep = new SpecificationVersion(dep.getSpecificationVersion());
if (spec != null && (currentDep == null || currentDep.compareTo(spec) < 0)) {
if (showDependencyUpgradeDialog(currentProject, displayName, new SpecificationVersion(dep.getSpecificationVersion()), spec, false, canShowUI)) {
ModuleDependency nue = new ModuleDependency(dep.getModuleEntry(),
releaseVersion != null ? releaseVersion : dep.getReleaseVersion(),
spec.toString(),
dep.hasCompileDependency(),
dep.hasImplementationDependency());
m.editDependency(dep, nue);
ProjectManager.getDefault().saveProject(currentProject);
}
return true;
}
} catch (CyclicDependencyException ex) {
Exceptions.printStackTrace(ex);
} catch (IOException ex) {
Exceptions.printStackTrace(ex);
}
return false;
}