[yocto] [PATCHv3 05/10] plugins/sdk.ide: Refactored project natures
Atanas Gegov
atanas.gegov.oss at gmail.com
Wed Apr 17 06:29:20 PDT 2013
From: Atanas Gegov <atanas.gegov at bmw-carit.de>
Introduced a class hierarchy for the Yocto project
natures with YoctoSDKProjectNature as a base class.
Eliminated unneeded class-own static methods for adding
natures.
---
.../natures/YoctoSDKAutotoolsProjectNature.java | 25 +--------------
.../ide/natures/YoctoSDKEmptyProjectNature.java | 33 +-------------------
.../sdk/ide/natures/YoctoSDKProjectNature.java | 5 ---
.../sdk/ide/wizard/NewYoctoCProjectTemplate.java | 9 +++---
4 files changed, 6 insertions(+), 66 deletions(-)
diff --git a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKAutotoolsProjectNature.java b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKAutotoolsProjectNature.java
index 767c005..b8d6e8b 100644
--- a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKAutotoolsProjectNature.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKAutotoolsProjectNature.java
@@ -16,14 +16,11 @@ import org.eclipse.cdt.managedbuilder.core.IConfiguration;
import org.eclipse.cdt.managedbuilder.core.IManagedBuildInfo;
import org.eclipse.cdt.managedbuilder.core.ManagedBuildManager;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectNature;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.yocto.sdk.ide.YoctoSDKPlugin;
import org.yocto.sdk.ide.YoctoUIElement;
import org.yocto.sdk.ide.utils.YoctoSDKUtils;
-public class YoctoSDKAutotoolsProjectNature implements IProjectNature {
+public class YoctoSDKAutotoolsProjectNature extends YoctoSDKProjectNature {
public static final String YoctoSDK_AUTOTOOLS_NATURE_ID = YoctoSDKPlugin.getUniqueIdentifier() + ".YoctoSDKAutotoolsNature";
private static final String DEFAULT_HOST_STR = "host";
@@ -35,26 +32,6 @@ public class YoctoSDKAutotoolsProjectNature implements IProjectNature {
private static final String DEFAULT_AUTOGEN_STR = "autogen";
private static final String DEFAULT_LIBTOOL_SYSROOT_PREFIX = " --with-libtool-sysroot=";
- private IProject proj;
-
- public void configure() throws CoreException {
- }
-
- public void deconfigure() throws CoreException {
- }
-
- public IProject getProject() {
- return proj;
- }
-
- public void setProject(IProject project) {
- this.proj = project;
- }
-
- public static void addYoctoSDKAutotoolsNature(IProject project, IProgressMonitor monitor) throws CoreException {
- YoctoSDKNatureUtils.addNature(project, YoctoSDK_AUTOTOOLS_NATURE_ID, monitor);
- }
-
public static void configureAutotoolsOptions(IProject project) {
IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project);
IConfiguration icfg = info.getDefaultConfiguration();
diff --git a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKEmptyProjectNature.java b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKEmptyProjectNature.java
index 6c9a5ac..e1b847a 100644
--- a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKEmptyProjectNature.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKEmptyProjectNature.java
@@ -1,39 +1,8 @@
package org.yocto.sdk.ide.natures;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IProjectNature;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.yocto.sdk.ide.YoctoSDKPlugin;
-public class YoctoSDKEmptyProjectNature implements IProjectNature {
+public class YoctoSDKEmptyProjectNature extends YoctoSDKProjectNature {
public static final String YoctoSDK_EMPTY_NATURE_ID = YoctoSDKPlugin.getUniqueIdentifier() + ".YoctoSDKEmptyNature";
-
- private IProject proj;
-
- public void configure() throws CoreException {
- // TODO Auto-generated method stub
-
- }
-
- public void deconfigure() throws CoreException {
- // TODO Auto-generated method stub
-
- }
-
- public IProject getProject() {
- // TODO Auto-generated method stub
- return proj;
- }
-
- public void setProject(IProject project) {
- // TODO Auto-generated method stub
- this.proj = project;
- }
-
- public static void addYoctoSDKEmptyNature(IProject project, IProgressMonitor monitor) throws CoreException {
- YoctoSDKNatureUtils.addNature(project, YoctoSDK_EMPTY_NATURE_ID, monitor);
- }
-
}
diff --git a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKProjectNature.java b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKProjectNature.java
index 51926fb..e3f6a35 100644
--- a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKProjectNature.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/natures/YoctoSDKProjectNature.java
@@ -13,7 +13,6 @@ package org.yocto.sdk.ide.natures;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IProjectNature;
import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.yocto.sdk.ide.YoctoSDKPlugin;
public class YoctoSDKProjectNature implements IProjectNature {
@@ -34,8 +33,4 @@ public class YoctoSDKProjectNature implements IProjectNature {
public void setProject(IProject project) {
this.proj = project;
}
-
- public static void addYoctoSDKNature(IProject project, IProgressMonitor monitor) throws CoreException {
- YoctoSDKNatureUtils.addNature(project, YoctoSDK_NATURE_ID, monitor);
- }
}
diff --git a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/wizard/NewYoctoCProjectTemplate.java b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/wizard/NewYoctoCProjectTemplate.java
index 239cbf8..a103ebe 100644
--- a/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/wizard/NewYoctoCProjectTemplate.java
+++ b/plugins/org.yocto.sdk.ide/src/org/yocto/sdk/ide/wizard/NewYoctoCProjectTemplate.java
@@ -52,13 +52,12 @@ import org.eclipse.jface.preference.IPreferenceStore;
import org.yocto.sdk.ide.YoctoGeneralException;
import org.yocto.sdk.ide.YoctoProfileElement;
import org.yocto.sdk.ide.YoctoSDKChecker;
-import org.yocto.sdk.ide.YoctoSDKChecker.SDKCheckRequestFrom;
-import org.yocto.sdk.ide.YoctoSDKChecker.SDKCheckResults;
import org.yocto.sdk.ide.YoctoSDKMessages;
import org.yocto.sdk.ide.YoctoSDKPlugin;
import org.yocto.sdk.ide.YoctoUIElement;
import org.yocto.sdk.ide.natures.YoctoSDKAutotoolsProjectNature;
import org.yocto.sdk.ide.natures.YoctoSDKEmptyProjectNature;
+import org.yocto.sdk.ide.natures.YoctoSDKNatureUtils;
import org.yocto.sdk.ide.natures.YoctoSDKProjectNature;
import org.yocto.sdk.ide.utils.YoctoSDKUtils;
@@ -182,7 +181,7 @@ public class NewYoctoCProjectTemplate extends ProcessRunner {
private void addNatures(IProject project, boolean projectExists, boolean isEmptyProject,
boolean isAutotoolsProject, IProgressMonitor monitor)
throws CoreException, YoctoGeneralException {
- YoctoSDKProjectNature.addYoctoSDKNature(project, monitor);
+ YoctoSDKNatureUtils.addNature(project, YoctoSDKProjectNature.YoctoSDK_NATURE_ID, monitor);
YoctoSDKChecker.checkIfGloballySelectedYoctoProfileIsValid();
@@ -194,7 +193,7 @@ public class NewYoctoCProjectTemplate extends ProcessRunner {
YoctoSDKUtils.setEnvironmentVariables(project, elem);
if (isEmptyProject) {
- YoctoSDKEmptyProjectNature.addYoctoSDKEmptyNature(project, monitor);
+ YoctoSDKNatureUtils.addNature(project, YoctoSDKEmptyProjectNature.YoctoSDK_EMPTY_NATURE_ID, monitor);
}
if (isAutotoolsProject) {
@@ -208,7 +207,7 @@ public class NewYoctoCProjectTemplate extends ProcessRunner {
AutotoolsConfigurationManager.getInstance().saveConfigs(project);
}
- YoctoSDKAutotoolsProjectNature.addYoctoSDKAutotoolsNature(project, monitor);
+ YoctoSDKNatureUtils.addNature(project, YoctoSDKAutotoolsProjectNature.YoctoSDK_AUTOTOOLS_NATURE_ID, monitor);
YoctoSDKAutotoolsProjectNature.configureAutotoolsOptions(project);
}
}
--
1.7.9.5
More information about the yocto
mailing list