@Override public void run() throws IOException { Utilities.performPOMModelOperations(pom, Collections.singletonList(operation)); } });
private POMModel getPOMModel(Project project) { FileObject pom = getPomFile(project); ModelSource source = Utilities.createModelSource(pom); return POMModelFactory.getDefault().getModel(source); }
@Override public ChangeInfo implement() throws Exception { FileObject foPom = FileUtil.toFileObject(mvnPrj.getMavenProject().getFile()); ModelSource mdlSrc = Utilities.createModelSource(foPom); POMModel model = POMModelFactory.getDefault().getModel(mdlSrc); int caretPos = 0; try { if (model.startTransaction()) { DependencyContainer container = model.getProject(); Dependency dep = model.getFactory().createDependency(); dep.setGroupId("org.springframework.boot"); dep.setArtifactId(artifactId); if (optional) { dep.setOptional(Boolean.TRUE); container.addDependency(dep); caretPos = model.getAccess().findPosition(dep.getPeer()); model.endTransaction(); } catch (IllegalStateException ex) { StatusDisplayer.getDefault().setStatusText("Cannot write to the model: " + ex.getMessage(),
@Override public void run() { NbMavenProject im = prj.getLookup().lookup(NbMavenProject.class); MavenProject mvnprj = im.getMavenProject(); DependencyNode tree = DependencyTreeFactory.createDependencyTree(mvnprj, EmbedderFactory.getProjectEmbedder(), Artifact.SCOPE_TEST); FileObject fo = prj.getLookup().lookup(FileObject.class); POMModel pommodel = null; if (fo != null) { ModelSource ms = Utilities.createModelSource(fo); if (ms.isEditable()) { POMModel model = POMModelFactory.getDefault().getModel(ms); if (model != null) { pommodel = model; } } } //add all in one place to prevent large time delays between additions if (pommodel != null) { ic.add(pommodel); } ic.add(tree); ic.add(mvnprj); } });
public @Override boolean recordAssociation(Project p, final Association a) { FileObject pom = pom(p); if (pom == null) { return false; } Utilities.performPOMModelOperations(pom, Collections.<ModelOperation<POMModel>>singletonList(new ModelOperation<POMModel>() { public @Override void performOperation(POMModel model) { CiManagement cim; if (a != null) { cim = model.getFactory().createCiManagement(); cim.setSystem(HUDSON_SYSTEM); cim.setUrl(a.toString()); } else { cim = null; } model.getProject().setCiManagement(cim); } })); return true; // XXX pPOMMO does not rethrow exceptions or have a return value }
Utilities.performPOMModelOperations(getPomFile(p), Collections.singletonList(operation)); RequestProcessor RP = new RequestProcessor("Configure Selenium 2.0 project task", 1, true); //NOI18N RP.post(new Runnable() {
@NbBundle.Messages("remove_junit3_when_adding_testng=Removing JUnit 3.x dependency as TestNG has transitive dependency to JUnit 4.x.") public void configureProject(FileObject createdFile) { ClassPath cp = ClassPath.getClassPath(createdFile, ClassPath.COMPILE); FileObject ng = cp.findResource("org.testng.annotations.Test"); //NOI18N if (ng == null) { final Project p = FileOwnerQuery.getOwner(createdFile); FileObject pom = p.getProjectDirectory().getFileObject("pom.xml"); //NOI18N ModelOperation<POMModel> operation = new ModelOperation<POMModel>() { public @Override void performOperation(POMModel model) { String groupID = "org.testng"; //NOI18N String artifactID = "testng"; //NOI18N if (!ModelUtils.hasModelDependency(model, groupID, artifactID)) { fixJUnitDependency(model, p.getLookup().lookup(NbMavenProject.class)); Dependency dep = ModelUtils.checkModelDependency(model, groupID, artifactID, true); dep.setVersion("6.8.1"); //NOI18N dep.setScope("test"); //NOI18N } } }; Utilities.performPOMModelOperations(pom, Collections.singletonList(operation)); RequestProcessor RP = new RequestProcessor("Configure TestNG project task", 1, true); //NOI18N RP.post(new Runnable() { public void run() { p.getLookup().lookup(NbMavenProject.class).downloadDependencyAndJavadocSource(true); } }); } }
Utilities.performPOMModelOperations(project.getProjectDirectory().getFileObject("pom.xml"), Collections.<ModelOperation<POMModel>>singletonList( new ModelOperation<POMModel>() {