List of usage examples for org.apache.maven.project MavenProject getArtifactId
public String getArtifactId()
From source file:org.wisdom.maven.utils.DefaultMaven2OsgiConverter.java
License:Apache License
/** * Computes the file name of the bundle used in Wisdom distribution for the given Maven project. * This convention is based on the uniqueness at runtime of 'bsn-version' (bsn is the bundle symbolic name). * * @param project the project//from ww w . j a v a 2s .co m * @return the computed name, composed by the symbolic name and the version: {@code bsn-version.jar} */ public static String getBundleFileName(MavenProject project) { return getBundleFileName(project.getGroupId(), project.getArtifactId(), project.getVersion()); }
From source file:org.wso2.developerstudio.appfactory.ui.actions.DeployAction.java
License:Open Source License
public void run(IAction action) { if (selection != null) { try {// ww w .j ava2 s . c o m /* IViewPart findView = PlatformUI.getWorkbench().getActiveWorkbenchWindow(). getActivePage().findView("org.wso2.developerstudio.appfactory.ui.views.AppfactoryApplicationListView"); AppfactoryApplicationListView applist = (AppfactoryApplicationListView) findView;*/ IProject project = (IProject) selection.getFirstElement(); File pomfile = project.getFile("pom.xml").getLocation().toFile(); MavenProject mavenProject = MavenUtils.getMavenProject(pomfile); final Map<String, String> params = new HashMap<String, String>(); params.put("action", JagApiProperties.App_BUILD_ACTION); params.put("stage", "Development"); params.put("applicationKey", mavenProject.getArtifactId()); String version = mavenProject.getVersion(); if ("SNAPSHOT".equals(version)) { version = "trunk"; } params.put("version", version); params.put("doDeploy", "true"); Display.getCurrent().asyncExec(new Runnable() { @Override public void run() { try { HttpsJaggeryClient.httpPost(JagApiProperties.getBuildApplication(), params); } catch (Exception e) { log.error("Remote method invocation Error !", e); } } }); } catch (Exception e) { log.error("Project Pom Error !", e); } } }
From source file:org.wso2.developerstudio.eclipse.artifact.analytics.publisher.refactor.RefactorUtils.java
License:Open Source License
public static Dependency getDependencyForTheProject(IFile file) { IProject project = file.getProject(); MavenProject mavenProject = getMavenProject(project); String groupId = mavenProject.getGroupId(); String artifactId = mavenProject.getArtifactId(); String version = mavenProject.getVersion(); String filePath = file.getLocation().toOSString(); int startIndex = (project.getLocation().toOSString() + File.separator + "src" + File.separator + "main" + File.separator).length(); int endIndex = filePath.lastIndexOf(File.separator); String typeString;/*from www . j a v a 2s .co m*/ String typeStringFromPath = filePath.substring(startIndex, endIndex); if (typeStringFromPath.equalsIgnoreCase(AnalyticsConstants.ANALYTICS_EXECUTION_PLAN_DIR)) { typeString = AnalyticsConstants.ANALYTICS_EXECUTION_PLAN_DIR; } else if (typeStringFromPath.equalsIgnoreCase(AnalyticsConstants.ANALYTICS_PUBLISHER_DIR)) { typeString = AnalyticsConstants.ANALYTICS_PUBLISHER_DIR; } else if (typeStringFromPath.equalsIgnoreCase(AnalyticsConstants.ANALYTICS_RECEIVER_DIR)) { typeString = AnalyticsConstants.ANALYTICS_RECEIVER_DIR; } else { typeString = AnalyticsConstants.ANALYTICS_STREAM_DIR; } Dependency dependency = new Dependency(); dependency.setGroupId(groupId + "." + typeString); dependency.setArtifactId(artifactId); dependency.setVersion(version); return dependency; }
From source file:org.wso2.developerstudio.eclipse.artifact.endpoint.refactor.RefactorUtils.java
License:Open Source License
public static Dependency getDependencyForTheProject(IFile file) { IProject project = file.getProject(); MavenProject mavenProject = getMavenProject(project); String groupId = mavenProject.getGroupId(); String artifactId = mavenProject.getArtifactId(); String version = mavenProject.getVersion(); String filePath = file.getLocation().toOSString(); int startIndex = (project.getLocation().toOSString() + File.separator + "src" + File.separator + "main" + File.separator + "synapse-config" + File.separator).length(); int endIndex = filePath.lastIndexOf(File.separator); String typeString;/* ww w .j av a 2 s . c o m*/ if (startIndex < endIndex) { String typeStringFromPath = filePath.substring(startIndex, endIndex); if (typeStringFromPath.equalsIgnoreCase("sequences")) { typeString = "sequence"; } else if (typeStringFromPath.equalsIgnoreCase("endpoints")) { typeString = "endpoint"; } else if (typeStringFromPath.equalsIgnoreCase("proxy-services")) { typeString = "proxy-service"; } else { typeString = "local-entry"; } } else { typeString = "synapse"; } Dependency dependency = new Dependency(); dependency.setGroupId(groupId + "." + typeString); dependency.setArtifactId(artifactId); dependency.setVersion(version); return dependency; }
From source file:org.wso2.developerstudio.eclipse.artifact.library.ui.wizard.LibraryArtifactCreationWizard.java
License:Open Source License
public boolean performFinish() { try {// w w w. jav a2s. c o m IProject project = createNewProject(); List<Dependency> dependencyList = new ArrayList<Dependency>(); List<String> exportedPackages = fillDependencyList(project, libraryModel, dependencyList); StringBuffer sb = new StringBuffer(); for (String exportedpackage : exportedPackages) { sb.append(exportedpackage.trim()).append(","); } String exportPackageNodeValue = sb.toString().trim().replaceAll(",$", ""); File pomfile = project.getFile("pom.xml").getLocation().toFile(); getModel().getMavenInfo().setPackageName("bundle"); if (!pomfile.exists()) { createPOM(pomfile); } MavenProject mavenProject = MavenUtils.getMavenProject(pomfile); mavenProject.getModel().getProperties().put("CApp.type", "lib/library/bundle"); Plugin plugin = MavenUtils.createPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4", true); Xpp3Dom configurationNode = MavenUtils.createMainConfigurationNode(plugin); Xpp3Dom instructionNode = MavenUtils.createXpp3Node(configurationNode, "instructions"); Xpp3Dom symbolicNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-SymbolicName"); symbolicNameNode.setValue(mavenProject.getArtifactId()); Xpp3Dom bundleNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-Name"); bundleNameNode.setValue(mavenProject.getArtifactId()); Xpp3Dom exportPackageNode = MavenUtils.createXpp3Node(instructionNode, "Export-Package"); exportPackageNode.setValue(exportPackageNodeValue); Xpp3Dom dynamicImportNode = MavenUtils.createXpp3Node(instructionNode, "DynamicImport-Package"); dynamicImportNode.setValue("*"); if (libraryModel.isFragmentHostBundle()) { Xpp3Dom fragmentHostNode = MavenUtils.createXpp3Node(instructionNode, "Fragment-Host"); fragmentHostNode.setValue(libraryModel.getFragmentHostBundleName()); } Repository repo = new Repository(); repo.setUrl("http://dist.wso2.org/maven2"); repo.setId("wso2-maven2-repository-1"); mavenProject.getModel().addRepository(repo); mavenProject.getModel().addPluginRepository(repo); MavenUtils.addMavenDependency(mavenProject, dependencyList); MavenUtils.saveMavenProject(mavenProject, pomfile); ProjectUtils.addNatureToProject(project, false, Constants.LIBRARY_PROJECT_NATURE); MavenUtils.updateWithMavenEclipsePlugin(pomfile, new String[] {}, new String[] { Constants.LIBRARY_PROJECT_NATURE }); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); refreshDistProjects(); } catch (Exception e) { log.warn("An Unspecified Error has occurred", e); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.library.ui.wizard.LibraryArtifactCreationWizard.java
License:Open Source License
public static List<String> fillDependencyList(IProject project, LibraryArtifactModel libraryModel, List<Dependency> dependencyList) throws JavaModelException, Exception, CoreException, IOException { IFile bundlesDataFile = project.getFile("bundles-data.xml"); List<String> exportedPackages = new ArrayList<String>(); BundlesDataInfo bundleData = new BundlesDataInfo(); if (libraryModel.isFragmentHostBundle()) { bundleData.setFragmentHost(libraryModel.getFragmentHostBundleName()); }/*from w w w. ja va2 s. c om*/ List<IProject> projects = new ArrayList<IProject>(); for (Object resource : libraryModel.getLibraries()) { File libraryResource = null; if (resource instanceof File) { libraryResource = (File) resource; } else if (resource instanceof IFile) { libraryResource = new File(((IFile) resource).getLocation().toOSString()); } else if (resource instanceof IProject) { IProject workSpacePrj = (IProject) resource; projects.add(workSpacePrj); handleWorkspaceProjectResource(workSpacePrj); } if (libraryResource != null) { String dest = new File(project.getLocation().toFile(), libraryResource.getName()).toString(); if (!libraryResource.toString().equals(dest)) { FileUtils.copyFile(libraryResource.toString(), dest); } } } project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); File[] jarsList = project.getLocation().toFile().listFiles(new FilenameFilter() { public boolean accept(File file, String name) { return name.endsWith(".jar"); } }); Map<File, ArrayList<String>> exportedPackagesInfoMap = FileUtils.processJarList(jarsList); for (File jarFile : exportedPackagesInfoMap.keySet()) { if (isExistsInLibraryModel(jarFile, libraryModel)) { Path base = new Path(project.getLocation().toFile().toString()); ArrayList<String> packages = exportedPackagesInfoMap.get(jarFile); exportedPackages.addAll(packages); bundleData.createJarElement(jarFile.getName(), exportedPackagesInfoMap.get(jarFile)); Dependency dependency = new Dependency(); dependency.setArtifactId(jarFile.getName()); dependency.setGroupId("dummy.groupid"); dependency.setVersion("1.0.0"); dependency.setScope("system"); dependency.setSystemPath( "${basedir}/" + jarFile.toString().substring(base.toFile().getPath().length() + 1)); dependencyList.add(dependency); } else { try { jarFile.delete(); } catch (Exception e) { log.warn("Failed to remove unused jar file(s)", e); } } } for (IProject prj : projects) { IFile pomFile = prj.getFile("pom.xml"); if (pomFile.exists()) { try { MavenProject mavenProject = MavenUtils.getMavenProject(pomFile.getLocation().toFile()); Dependency dependency = new Dependency(); dependency.setArtifactId(mavenProject.getArtifactId()); dependency.setGroupId(mavenProject.getGroupId()); dependency.setVersion(mavenProject.getVersion()); dependencyList.add(dependency); } catch (Exception e) { log.warn("Error reading " + pomFile, e); } } bundleData.createProjectElement(prj, new ArrayList<String>()); IJavaProject javaProject = JavaCore.create(prj); for (IPackageFragment pkg : javaProject.getPackageFragments()) { if (pkg.getKind() == IPackageFragmentRoot.K_SOURCE) { if (pkg.hasChildren()) { exportedPackages.add(pkg.getElementName()); } } } } bundleData.toFile(bundlesDataFile); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); bundlesDataFile.setHidden(true); return exportedPackages; }
From source file:org.wso2.developerstudio.eclipse.artifact.registry.filter.ui.wizard.RegistryFilterCreationWizard.java
License:Open Source License
public boolean performFinish() { try {// w w w . j av a 2 s. com project = createNewProject(); sourceFolder = ProjectUtils.getWorkspaceFolder(project, "src", "main", "java"); javaProject = JavaCore.create(project); root = javaProject.getPackageFragmentRoot(sourceFolder); JavaUtils.addJavaSupportAndSourceFolder(project, sourceFolder); addDependancies(project); String className = filterModel.getFilterClass(); String packageName = filterModel.getFilterClassPackage(); IPackageFragment sourcePackage = root.createPackageFragment(packageName, false, null); ICompilationUnit cu = sourcePackage.createCompilationUnit(className + ".java", getFilterClassSource(packageName, className), false, null); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); File pomfile = project.getFile("pom.xml").getLocation().toFile(); getModel().getMavenInfo().setPackageName("bundle"); if (!pomfile.exists()) { createPOM(pomfile); } MavenProject mavenProject = MavenUtils.getMavenProject(pomfile); mavenProject.getModel().getProperties().put("CApp.type", "lib/registry/filter"); Plugin plugin = MavenUtils.createPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4", true); Xpp3Dom configurationNode = MavenUtils.createMainConfigurationNode(plugin); Xpp3Dom instructionNode = MavenUtils.createXpp3Node(configurationNode, "instructions"); Xpp3Dom symbolicNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-SymbolicName"); symbolicNameNode.setValue(mavenProject.getArtifactId()); Xpp3Dom bundleNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-Name"); bundleNameNode.setValue(mavenProject.getArtifactId()); Xpp3Dom exportPackageNode = MavenUtils.createXpp3Node(instructionNode, "Export-Package"); exportPackageNode.setValue(packageName); Xpp3Dom dynamicImportNode = MavenUtils.createXpp3Node(instructionNode, "DynamicImport-Package"); dynamicImportNode.setValue("*"); Repository repo = new Repository(); repo.setUrl("http://maven.wso2.org/nexus/content/groups/wso2-public/"); repo.setId("wso2-maven2-repository-1"); mavenProject.getModel().addRepository(repo); mavenProject.getModel().addPluginRepository(repo); List<Dependency> dependencyList = new ArrayList<Dependency>(); Map<String, JavaLibraryBean> dependencyInfoMap = JavaLibraryUtil.getDependencyInfoMap(project); Map<String, String> map = ProjectDependencyConstants.DEPENDENCY_MAP; for (JavaLibraryBean bean : dependencyInfoMap.values()) { if (bean.getVersion().contains("${")) { for (String path : map.keySet()) { bean.setVersion(bean.getVersion().replace(path, map.get(path))); } } Dependency dependency = new Dependency(); dependency.setArtifactId(bean.getArtifactId()); dependency.setGroupId(bean.getGroupId()); dependency.setVersion(bean.getVersion()); dependencyList.add(dependency); } MavenUtils.addMavenDependency(mavenProject, dependencyList); MavenUtils.saveMavenProject(mavenProject, pomfile); ProjectUtils.addNatureToProject(project, false, Constants.REGISTRY_FILTER_PROJECT_NATURE); MavenUtils.updateWithMavenEclipsePlugin(pomfile, new String[] { JDT_BUILD_COMMAND }, new String[] { Constants.REGISTRY_FILTER_PROJECT_NATURE, JDT_PROJECT_NATURE }); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); try { refreshDistProjects(); IEditorPart javaEditor = JavaUI.openInEditor(cu); JavaUI.revealInEditor(javaEditor, (IJavaElement) cu); } catch (Exception e) { /* ignore */} } catch (Exception e) { e.printStackTrace(); } return true; }
From source file:org.wso2.developerstudio.eclipse.artifact.registry.handler.ui.wizard.RegistryHandlerCreationWizard.java
License:Open Source License
public void updatePom(IProject project, HandlerInfo handlerInfo) throws Exception { File mavenProjectPomLocation = project.getFile("pom.xml").getLocation().toFile(); MavenProject mavenProject = MavenUtils.getMavenProject(mavenProjectPomLocation); Properties properties = mavenProject.getModel().getProperties(); properties.put("CApp.type", "lib/registry/handlers"); mavenProject.getModel().setProperties(properties); Plugin plugin = MavenUtils.createPluginEntry(mavenProject, "org.apache.felix", "maven-bundle-plugin", "2.3.4", true); Xpp3Dom configurationNode = MavenUtils.createMainConfigurationNode(plugin); Xpp3Dom instructionNode = MavenUtils.createXpp3Node("instructions"); Xpp3Dom bundleSymbolicNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-SymbolicName"); Xpp3Dom bundleNameNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-Name"); Xpp3Dom bundleActivatorNode = MavenUtils.createXpp3Node(instructionNode, "Bundle-Activator"); Xpp3Dom exportPackageNode = MavenUtils.createXpp3Node(instructionNode, "Export-Package"); Xpp3Dom dynamicImportNode = MavenUtils.createXpp3Node(instructionNode, "DynamicImport-Package"); bundleSymbolicNameNode.setValue(project.getName()); bundleNameNode.setValue(project.getName()); bundleActivatorNode.setValue(BUNDLE_ACTIVATOR_NAME); exportPackageNode.setValue(getExportedPackage(handlerInfo)); dynamicImportNode.setValue("*"); configurationNode.addChild(instructionNode); Repository repo = new Repository(); repo.setUrl("http://maven.wso2.org/nexus/content/groups/wso2-public/"); repo.setId("wso2-maven2-repository-1"); mavenProject.getModel().addRepository(repo); mavenProject.getModel().addPluginRepository(repo); List<Dependency> dependencyList = new ArrayList<Dependency>(); Map<String, JavaLibraryBean> dependencyInfoMap = JavaLibraryUtil.getDependencyInfoMap(project); Map<String, String> map = ProjectDependencyConstants.DEPENDENCY_MAP; for (JavaLibraryBean bean : dependencyInfoMap.values()) { if (bean.getVersion().contains("${")) { for (String path : map.keySet()) { bean.setVersion(bean.getVersion().replace(path, map.get(path))); }/* ww w .j a v a 2 s . co m*/ } Dependency dependency = new Dependency(); dependency.setArtifactId(bean.getArtifactId()); dependency.setGroupId(bean.getGroupId()); dependency.setVersion(bean.getVersion()); dependencyList.add(dependency); } if (importHandlerFromWs && importHandlerProject != null) { try { IFile pomFile = importHandlerProject.getFile("pom.xml"); MavenProject workspaceProject; if (pomFile.exists()) { workspaceProject = MavenUtils.getMavenProject(pomFile.getLocation().toFile()); } else { String srcDir = "src"; workspaceProject = MavenUtils.createMavenProject( "org.wso2.carbon." + importHandlerProject.getName(), importHandlerProject.getName(), "1.0.0", "jar"); IJavaProject javaProject = JavaCore.create(importHandlerProject); IClasspathEntry[] classpath = javaProject.getRawClasspath(); int entryCount = 0; for (IClasspathEntry classpathEntry : classpath) { if (classpathEntry.getEntryKind() == IClasspathEntry.CPE_SOURCE) { if (entryCount == 0) { String entryPath = ""; String[] pathSegments = classpathEntry.getPath().segments(); if (pathSegments.length > 1) { for (int i = 1; i < pathSegments.length; i++) { if (i == 1) { entryPath = pathSegments[i]; } else { entryPath += "/" + pathSegments[i]; } } if (entryPath.length() > 0) { srcDir = entryPath; ++entryCount; } } } else { log.warn("multiple source directories found, Considering '" + srcDir + "' as source directory"); break; } } } if (entryCount == 0) { log.warn("No source directory specified, using default source directory."); } workspaceProject.getBuild().setSourceDirectory(srcDir); Repository nexusRepo = new Repository(); nexusRepo.setUrl("http://maven.wso2.org/nexus/content/groups/wso2-public/"); nexusRepo.setId("wso2-maven2-repository-1"); workspaceProject.getModel().addRepository(nexusRepo); workspaceProject.getModel().addPluginRepository(nexusRepo); List<Dependency> libList = new ArrayList<Dependency>(); Map<String, JavaLibraryBean> dependencyMap = JavaLibraryUtil .getDependencyInfoMap(importHandlerProject); for (JavaLibraryBean bean : dependencyMap.values()) { Dependency dependency = new Dependency(); dependency.setArtifactId(bean.getArtifactId()); dependency.setGroupId(bean.getGroupId()); dependency.setVersion(bean.getVersion()); libList.add(dependency); } workspaceProject.setDependencies(libList); MavenUtils.saveMavenProject(workspaceProject, pomFile.getLocation().toFile()); project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor()); } Dependency dependency = new Dependency(); dependency.setArtifactId(workspaceProject.getArtifactId()); dependency.setGroupId(workspaceProject.getGroupId()); dependency.setVersion(workspaceProject.getVersion()); dependencyList.add(dependency); } catch (Exception e) { log.warn("Error reading or updating pom file.", e); } } MavenUtils.addMavenDependency(mavenProject, dependencyList); MavenUtils.saveMavenProject(mavenProject, mavenProjectPomLocation); }
From source file:org.wso2.developerstudio.eclipse.capp.maven.sample.AbstractMavenSampleContributor.java
License:Open Source License
protected void generateMavenPOMForSample(IProject project) throws Exception { MavenProject selectedProject = generateMavenProject(project); MavenPomGenPluginUtils.updateAndSaveMavenCAppProject(selectedProject, project, null, selectedProject.getArtifactId() + PARENT); }
From source file:org.wso2.developerstudio.eclipse.distribution.project.export.CappArtifactsListProvider.java
License:Open Source License
public List<ListData> getArtifactsListForSingleArtifactProject(IProject project) throws Exception { MavenProject mavenProject = DistProjectUtils.getMavenProject(project); ArtifactTypeMapping artifactTypeMapping = new ArtifactTypeMapping(); List<ListData> singleProjectArtifactAsAList = new ArrayList<ListData>(); Dependency dependency = new Dependency(); dependency.setArtifactId(mavenProject.getArtifactId()); dependency.setGroupId(mavenProject.getGroupId()); dependency.setVersion(mavenProject.getVersion()); String cAppType = mavenProject.getModel().getPackaging(); if (cAppType == null || !artifactTypeMapping.isValidArtifactType(cAppType)) { if (mavenProject.getModel().getProperties().containsKey("CApp.type")) { cAppType = (String) mavenProject.getModel().getProperties().get("CApp.type"); }//from w w w .j a v a2s . com } dependency.setType(artifactTypeMapping.getType(cAppType)); ServerRoleMapping serverRoleMapping = new ServerRoleMapping(); String serverRole = serverRoleMapping.getServerRole(cAppType); DependencyData dependencyData = new DependencyData(); dependencyData.setDependency(dependency); dependencyData.setSelf(project); dependencyData.setCApptype(cAppType); dependencyData.setServerRole(getServerRole(serverRole)); singleProjectArtifactAsAList .add(createListData(DistProjectUtils.getArtifactInfoAsString(dependency), dependencyData)); return singleProjectArtifactAsAList; }