List of usage examples for org.apache.maven.project MavenProject getDependencies
public List<Dependency> getDependencies()
From source file:org.wso2.developerstudio.eclipse.distribution.project.export.CarExportHandler.java
License:Open Source License
public List<IResource> exportArtifact(IProject project) throws Exception { List<IResource> exportResources = new ArrayList<IResource>(); List<ArtifactData> artifactList = new ArrayList<ArtifactData>(); Map<IProject, Map<String, IResource>> resourceProjectList = new HashMap<IProject, Map<String, IResource>>(); IFile pomFileRes;/*from ww w.j ava 2 s. c o m*/ File pomFile; MavenProject parentPrj; ArchiveManipulator archiveManipulator = new ArchiveManipulator(); clearTarget(project); // Let's create a temp project File tempProject = createTempProject(); File carResources = createTempDir(tempProject, "car_resources"); pomFileRes = project.getFile(POM_FILE); if (!pomFileRes.exists()) { throw new Exception("not a valid carbon application project"); } pomFile = pomFileRes.getLocation().toFile(); ProjectList projectListProvider = new ProjectList(); List<ListData> projectListData = projectListProvider.getListData(null, null); Map<String, DependencyData> projectList = new HashMap<String, DependencyData>(); Map<String, String> serverRoleList = new HashMap<String, String>(); for (ListData data : projectListData) { DependencyData dependencyData = (DependencyData) data.getData(); projectList.put(DistProjectUtils.getArtifactInfoAsString(dependencyData.getDependency()), dependencyData); } parentPrj = MavenUtils.getMavenProject(pomFile); for (Dependency dependency : (List<Dependency>) parentPrj.getDependencies()) { String dependencyKey = DistProjectUtils.getArtifactInfoAsString(dependency); serverRoleList.put(dependencyKey, DistProjectUtils.getServerRole(parentPrj, dependency)); if (projectList.containsKey(dependencyKey)) { DependencyData dependencyData = projectList.get(dependencyKey); Object parent = dependencyData.getParent(); Object self = dependencyData.getSelf(); String serverRole = serverRoleList.get(DistProjectUtils.getArtifactInfoAsString(dependency)); dependencyData.setServerRole(serverRole.replaceAll("^capp/", "")); if (parent != null && self != null) { // multiple artifact if (parent instanceof IProject && self instanceof String) { IFile file = ((IProject) parent).getFile((String) self); if (file.exists()) { ArtifactData artifactData = new ArtifactData(); artifactData.setDependencyData(dependencyData); artifactData.setFile(distProjectUtils.getFileName(dependencyData)); artifactData.setResource((IResource) file); artifactList.add(artifactData); } } } else if (parent == null && self != null) { // artifacts as // single artifact archive DefaultArtifactExportHandler artifactExportHandler = new DefaultArtifactExportHandler(); artifactExportHandler.exportArtifact(artifactList, null, null, dependencyData, null, self); } else if (parent != null && self == null) { // these are // registry // resources exportRegistryResourceArtifact(artifactList, resourceProjectList, dependencyData, parent); } else { log.error( "unidentified artifact structure, cannot be exported as a deployable artifact for server " + serverRole); } } } OMFactory factory = OMAbstractFactory.getOMFactory(); OMElement artifactsDocRoot = factory.createOMElement(new QName("artifacts")); OMElement artifactElt = factory.createOMElement(new QName("artifact")); artifactElt.addAttribute("name", parentPrj.getModel().getArtifactId(), null); artifactElt.addAttribute("version", parentPrj.getModel().getVersion(), null); artifactElt.addAttribute("type", "carbon/application", null); Collections.sort(artifactList); for (ArtifactData artifact : artifactList) { File artifactDir = new File(carResources, getArtifactDir(artifact.getDependencyData())); if (artifact.getResource() instanceof IFolder) { FileUtils.copyDirectory(artifact.getResource().getLocation().toFile(), artifactDir); } else if (artifact.getResource() instanceof IFile) { FileUtils.copy(artifact.getResource().getLocation().toFile(), new File(artifactDir, artifact.getFile())); } artifactElt.addChild(createDependencyElement(factory, artifact)); createArtifactXML(artifactDir, artifact); } artifactsDocRoot.addChild(artifactElt); File artifactsXml = new File(carResources, "artifacts.xml"); XMLUtil.prettify(artifactsDocRoot, new FileOutputStream(artifactsXml)); File tmpArchive = new File(tempProject, project.getName().concat("_").concat(parentPrj.getVersion()).concat(".car")); archiveManipulator.archiveDir(tmpArchive.toString(), carResources.toString()); IFile carbonArchive = getTargetArchive(project, parentPrj.getVersion(), "car"); FileUtils.copy(tmpArchive, carbonArchive.getLocation().toFile()); exportResources.add((IResource) carbonArchive); clearTempDirInWorksapce(project.getName(), SPLIT_DIR_NAME); TempFileUtils.cleanUp(); return exportResources; }
From source file:org.wso2.developerstudio.eclipse.ds.capp.refactor.DataServiceDeleteParticipant.java
License:Open Source License
private Change deleteFromPOM() throws CoreException { IFile pomFile = null;/*w w w .j ava 2s . co m*/ IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); CompositeChange deleteChange = new CompositeChange("Update CApp pom.xml"); for (IProject project : projects) { if (project.isOpen() && project.hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { pomFile = project.getFile("pom.xml"); try { pomFile.refreshLocal(0, new NullProgressMonitor()); } catch (Exception ignore) { } MavenProject mavenProject = MavenUtils .getMavenProject(project.getFile("pom.xml").getLocation().toFile()); Dependency projectDependency = getDependencyForTheProject(originalFile.getProject()); if (originalFile instanceof IFile) { projectDependency.setArtifactId(originalFile.getName().substring(0, originalFile.getName().length() - originalFile.getFileExtension().length() - 1)); } else { projectDependency.setArtifactId(originalFile.getName()); } List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileDeleteChange(project.getName(), pomFile, projectDependency)); } } } catch (Exception e) { log.error("Error occurred while trying to generate the Refactoring", e); } finally { try { if (pomFile != null) { pomFile.refreshLocal(0, new NullProgressMonitor()); } } catch (Exception ignore) { } } } } return deleteChange; }
From source file:org.wso2.developerstudio.eclipse.ds.capp.refactor.DataServiceRenameParticipant.java
License:Open Source License
private Change deleteFromPOM() throws CoreException { IFile pomFile = null;/*from w ww . java2 s. c o m*/ CompositeChange deleteChange = new CompositeChange("Update CApp pom.xml"); IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); String changedNameWithoutExtention = FilenameUtils.removeExtension(changedFileFullName); String originalNameWithoutExtension = FilenameUtils.removeExtension(originalFileFullName); for (IProject project : projects) { if (project.isOpen() && project.hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { pomFile = project.getFile("pom.xml"); try { pomFile.refreshLocal(0, new NullProgressMonitor()); } catch (Exception ignore) { } MavenProject mavenProject = MavenUtils .getMavenProject(project.getFile("pom.xml").getLocation().toFile()); Dependency projectDependency = getDependencyForTheProject(originalFile.getProject()); if (originalFile instanceof IFile) { projectDependency.setArtifactId(originalFile.getName().substring(0, originalFile.getName().length() - originalFile.getFileExtension().length() - 1)); } else { projectDependency.setArtifactId(originalFile.getName()); } List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileRenameChange("updateCapp", pomFile, originalNameWithoutExtension, project, changedNameWithoutExtention, dependency)); } } } catch (Exception e) { log.error("Error occurred while trying to generate the Refactoring", e); } finally { try { if (pomFile != null) { pomFile.refreshLocal(0, new NullProgressMonitor()); } } catch (Exception ignore) { } } } } return deleteChange; }
From source file:org.wso2.developerstudio.eclipse.general.project.capp.refactor.RegistryResourceArtifactDeleteParticipant.java
License:Open Source License
private void deleteFromPOM(CompositeChange deleteChange) throws CoreException { IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); IFile pomFile = null;//from w w w .j av a 2s . co m for (IProject project : projects) { if (project.isOpen() && project.hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { pomFile = project.getFile("pom.xml"); try { pomFile.refreshLocal(0, new NullProgressMonitor()); } catch (Exception ignore) { } MavenProject mavenProject = RefactorUtils.getMavenProject(project); Dependency projectDependency = RefactorUtils .getDependencyForTheProject(originalResource.getProject()); if (originalResource instanceof IFile) { projectDependency.setArtifactId( originalResource.getName().substring(0, originalResource.getName().length() - originalResource.getFileExtension().length() - 1)); } else { projectDependency.setArtifactId(originalResource.getName()); } List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (RefactorUtils.isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileDeleteChange(project.getName(), pomFile, projectDependency)); } } } catch (Exception e) { log.error("Error occurred while trying to generate the Refactoring", e); } finally { try { if (pomFile != null) { pomFile.refreshLocal(0, new NullProgressMonitor()); } } catch (Exception ignore) { } } } } }
From source file:org.wso2.developerstudio.eclipse.general.project.capp.refactor.RegistryResourceArtifactRenameParticipant.java
License:Open Source License
private void deleteFromPOM(CompositeChange deleteChange) throws CoreException { IFile pomFile = null;//w ww. jav a2 s.c o m IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); String changedNameWithoutExtention = FilenameUtils.removeExtension(changedFileName); String originalNameWithoutExtension = FilenameUtils.removeExtension(originalFile.getName()); for (IProject project : projects) { if (project.isOpen() && project.hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { pomFile = project.getFile("pom.xml"); try { pomFile.refreshLocal(0, new NullProgressMonitor()); } catch (Exception ignore) { } MavenProject mavenProject = RefactorUtils.getMavenProject(project); Dependency projectDependency = RefactorUtils .getDependencyForTheProject(originalFile.getProject()); if (originalFile instanceof IFile) { projectDependency.setArtifactId(originalFile.getName().substring(0, originalFile.getName().length() - originalFile.getFileExtension().length() - 1)); } else { projectDependency.setArtifactId(originalFile.getName()); } List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (RefactorUtils.isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileRenameChange("updateCapp", pomFile, originalNameWithoutExtension, project, changedNameWithoutExtention, dependency)); } } } catch (Exception e) { log.error("Error occurred while trying to generate the Refactoring", e); } finally { try { if (pomFile != null) { pomFile.refreshLocal(0, new NullProgressMonitor()); } } catch (Exception ignore) { } } } } }
From source file:org.wso2.developerstudio.eclipse.general.project.refactor.RegistryResourceArtifactDeleteParticipant.java
License:Open Source License
private void deleteFromPOM(CompositeChange deleteChange) throws CoreException { IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); for (IProject project : projects) { if (project.isOpen() && project.hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { IFile pomFile = project.getFile("pom.xml"); MavenProject mavenProject = RefactorUtils.getMavenProject(project); Dependency projectDependency = RefactorUtils .getDependencyForTheProject(originalResource.getProject()); if (originalResource instanceof IFile) { projectDependency.setArtifactId( originalResource.getName().substring(0, originalResource.getName().length() - originalResource.getFileExtension().length() - 1)); } else { projectDependency.setArtifactId(originalResource.getName()); }/*from w w w. j a va2s. c o m*/ List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (RefactorUtils.isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileDeleteChange(project.getName(), pomFile, projectDependency)); } } } catch (Exception e) { log.error("Error occured while trying to generate the Refactoring", e); } } } }
From source file:org.wso2.developerstudio.eclipse.general.project.refactor.RegistryResourceArtifactRenameParticipant.java
License:Open Source License
private void deleteFromPOM(CompositeChange deleteChange) throws CoreException { IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); String changedNameWithoutExtention = FilenameUtils.removeExtension(changedFileName); String originalNameWithoutExtension = FilenameUtils.removeExtension(originalFile.getName()); for (IProject project : projects) { if (project.isOpen() && project.hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { IFile pomFile = project.getFile("pom.xml"); MavenProject mavenProject = RefactorUtils.getMavenProject(project); Dependency projectDependency = RefactorUtils .getDependencyForTheProject(originalFile.getProject()); if (originalFile instanceof IFile) { projectDependency.setArtifactId(originalFile.getName().substring(0, originalFile.getName().length() - originalFile.getFileExtension().length() - 1)); } else { projectDependency.setArtifactId(originalFile.getName()); }/*from www.j a v a 2s .c o m*/ List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (RefactorUtils.isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileRenameChange("updateCapp", pomFile, originalNameWithoutExtension, project, changedNameWithoutExtention, dependency)); } } } catch (Exception e) { log.error("Error occurred while trying to generate the Refactoring", e); } } } }
From source file:org.wso2.developerstudio.eclipse.platform.core.project.refactor.ArtifactProjectDeleteParticipant.java
License:Open Source License
private void deleteDependencies(CompositeChange deleteChange, IProject project, IProject projectToDelete) { IFile pomFile = project.getFile(POM_XML); MavenProject mavenProject = ProjectRefactorUtils.getMavenProject(project); Dependency projectDependency = ProjectRefactorUtils.getDependencyForTheProject(originalProject); if (mavenProject != null) { List<?> dependencies = mavenProject.getDependencies(); if (projectDependency != null) { for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (ProjectRefactorUtils.isDependenciesEqual(projectDependency, dependency)) { deleteChange.add(new MavenConfigurationFileDeleteChange(project.getName(), pomFile, projectToDelete)); }/*from w w w .j a v a 2 s .c o m*/ } } } }
From source file:org.wso2.developerstudio.eclipse.platform.core.project.refactor.ArtifactProjectRenameRefactorParticipant.java
License:Open Source License
/** * This method gets executed before the refactoring gets executed on * original file which means/*from w w w .j a va 2 s . co m*/ * this method is executed before the actual project is deleted from the * workspace. * If you have any task need to run before the project is deleted, you need * to generate Changes * for those tasks in this method. */ @Override public Change createPreChange(IProgressMonitor arg0) throws CoreException, OperationCanceledException { IFile pomFile = originalProject.getFile("pom.xml"); CompositeChange artifactChange = new CompositeChange("Maven Configuration Refactor"); MavenConfigurationFileChange endpointArtifactFileChange = new MavenConfigurationFileChange("HW", pomFile, originalProject.getName(), originalProject, latestName); artifactChange.add(endpointArtifactFileChange); IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects(); for (int i = 0; i < projects.length; i++) { if (projects[i].isOpen() && projects[i].hasNature("org.wso2.developerstudio.eclipse.distribution.project.nature")) { try { MavenProject mavenProject = MavenUtils .getMavenProject(projects[i].getFile("pom.xml").getLocation().toFile()); List<?> dependencies = mavenProject.getDependencies(); for (Iterator<?> iterator = dependencies.iterator(); iterator.hasNext();) { Dependency dependency = (Dependency) iterator.next(); if (originalProject.getName().equalsIgnoreCase(dependency.getArtifactId())) { artifactChange.add(new MavenConfigurationFileChange(projects[i].getName(), projects[i].getFile("pom.xml"), originalProject.getName(), projects[i], latestName)); } } } catch (Exception e) { log.error("Error occured while trying to generate the Refactoring", e); } } } return artifactChange; }
From source file:org.wso2.maven.capp.mojo.AbstractPOMGenMojo.java
License:Open Source License
protected void addMavenDependency(MavenProject artifactMavenProject, String dGroupId, String dArtifactId, String dVersion, String scope, String type) { Dependency mavenDependency = new Dependency(); mavenDependency.setGroupId(dGroupId); mavenDependency.setArtifactId(dArtifactId); mavenDependency.setVersion(dVersion); mavenDependency.setScope(scope);// w w w .j av a 2 s.c om if (type != null) { mavenDependency.setType(type); } artifactMavenProject.getDependencies().add(mavenDependency); }