[Esbox-commits] r892 - in branches/micaSplit/org.maemo.esbox.maemosdk.core: . src/org/maemo/esbox/internal/api/maemosdk/core/execEnv src/org/maemo/esbox/internal/maemosdk/core src/org/maemo/esbox/internal/maemosdk/core/adapters

eswartz at garage.maemo.org eswartz at garage.maemo.org
Fri Oct 24 22:51:28 EEST 2008


Author: eswartz
Date: 2008-10-24 22:51:28 +0300 (Fri, 24 Oct 2008)
New Revision: 892

Added:
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironmentHandler.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapter.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapterFactory.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironmentHandler.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironments.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironmentHandler.java
Removed:
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/BaseScratchboxExecutionEnvironment.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironment.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironment.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironment.java
Modified:
   branches/micaSplit/org.maemo.esbox.maemosdk.core/plugin.xml
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/OldStyleProjectProperties.java
   branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/adapters/MaemoDefaultExecutionEnvironmentAdapter.java
Log:
Detach execution environment registration from implementation via IExecutionEnvironmentProviderAdapter on ISDKTarget.

Also, fix some bugs in unit tests -- deleting projects without deleting contents and using a stupidly expensive template to test the project creator.

Modified: branches/micaSplit/org.maemo.esbox.maemosdk.core/plugin.xml
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/plugin.xml	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/plugin.xml	2008-10-24 19:51:28 UTC (rev 892)
@@ -10,6 +10,13 @@
                type="org.maemo.mica.common.launch.adapters.ITargetEnvironmentModifierAdapter">
          </adapter>
       </factory>
+       <factory
+            adaptableType="org.maemo.mica.common.core.sdk.ISDKTarget"
+            class="org.maemo.esbox.internal.api.maemosdk.core.execEnv.MaemoEmulatorExecutionEnvironmentProviderAdapterFactory">
+         <adapter
+               type="org.maemo.mica.common.core.execEnv.IExecutionEnvironmentProviderAdapter">
+         </adapter>
+      </factory>
    </extension>
 
   <extension
@@ -18,15 +25,15 @@
          point="org.maemo.mica.common.core.execution_environment">
       <execution_environment
       		id="x11"
-            class="org.maemo.esbox.internal.api.maemosdk.core.execEnv.X11ExecutionEnvironment">
+            name="X11">
       </execution_environment>
       <execution_environment
       		id="gtk"
-            class="org.maemo.esbox.internal.api.maemosdk.core.execEnv.GTKExecutionEnvironment">
+            name="GTK">
       </execution_environment>
       <execution_environment
       		id="maemo"
-            class="org.maemo.esbox.internal.api.maemosdk.core.execEnv.MaemoExecutionEnvironment">
+            name="Maemo AF">
       </execution_environment>
    </extension>
   

Deleted: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/BaseScratchboxExecutionEnvironment.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/BaseScratchboxExecutionEnvironment.java	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/BaseScratchboxExecutionEnvironment.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Nokia Corporation
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Ed Swartz (Nokia) - initial API and implementation
- *******************************************************************************/
-
-package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
-
-import org.maemo.esbox.internal.maemosdk.core.Activator;
-import org.maemo.mica.common.core.execEnv.BaseExecutionEnvironment;
-
-/**
- * @author eswartz
- * 
- */
-public abstract class BaseScratchboxExecutionEnvironment extends
-		BaseExecutionEnvironment {
-	/** Base id for scratchbox execution environment ids */
-	public static final String SB_EXEC_ENV_BASE = Activator.PLUGIN_ID;
-
-	public BaseScratchboxExecutionEnvironment(String id, String name) {
-		super(id, name);
-	}
-
-}

Deleted: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironment.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironment.java	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironment.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Nokia Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Ed Swartz (Nokia) - initial API and implementation
- *******************************************************************************/
-
-package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
-
-/**
- * Environment for GTK applications in X11
- * 
- * @author eswartz
- * 
- */
-public class GTKExecutionEnvironment extends X11ExecutionEnvironment {
-	@SuppressWarnings("hiding")
-	public static final String ID = SB_EXEC_ENV_BASE + ".gtk";
-
-	public GTKExecutionEnvironment() {
-		super(ID, "GTK");
-	}
-}

Copied: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironmentHandler.java (from rev 891, branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironment.java)
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironmentHandler.java	                        (rev 0)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironmentHandler.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Nokia Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
+
+/**
+ * Environment for GTK applications in X11
+ * 
+ * @author eswartz
+ * 
+ */
+public class GTKExecutionEnvironmentHandler extends X11ExecutionEnvironmentHandler {
+}


Property changes on: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/GTKExecutionEnvironmentHandler.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Added: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapter.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapter.java	                        (rev 0)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapter.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Nokia Corporation
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
+
+import org.maemo.mica.common.core.execEnv.*;
+
+/**
+ * This provides the execution environments supported inside a maemo emulator.
+ * @author eswartz
+ *
+ */
+public class MaemoEmulatorExecutionEnvironmentProviderAdapter implements IExecutionEnvironmentProviderAdapter {
+
+	public MaemoEmulatorExecutionEnvironmentProviderAdapter() {
+	}
+
+	/* (non-Javadoc)
+	 * @see org.maemo.mica.common.core.execEnv.IExecutionEnvironmentAdapter#getExecutionEnvironmentHandler(java.lang.String)
+	 */
+	public IExecutionEnvironmentHandler getExecutionEnvironmentHandler(
+			IExecutionEnvironment execEnv) {
+		if (execEnv == null) {
+			return null;
+		}
+		if (execEnv.getId().equals(MaemoExecutionEnvironments.MAEMO)) {
+			return new MaemoExecutionEnvironmentHandler();
+		}
+		if (execEnv.getId().equals(MaemoExecutionEnvironments.GTK)) {
+			return new GTKExecutionEnvironmentHandler();
+		}
+		if (execEnv.getId().equals(MaemoExecutionEnvironments.X11)) {
+			return new X11ExecutionEnvironmentHandler();
+		}
+		return null;
+	}
+
+
+}

Added: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapterFactory.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapterFactory.java	                        (rev 0)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoEmulatorExecutionEnvironmentProviderAdapterFactory.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -0,0 +1,43 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Nokia Corporation
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
+
+import org.eclipse.core.runtime.IAdapterFactory;
+import org.maemo.esbox.scratchbox.core.sdk.IScratchboxSDKTarget;
+import org.maemo.mica.common.core.execEnv.IExecutionEnvironmentProviderAdapter;
+
+/**
+ * Generate instances of {@link IExecutionEnvironmentProviderAdapter} for SDK targets
+ * that live inside maemo emulator contexts.
+ * @author eswartz
+ *
+ */
+public class MaemoEmulatorExecutionEnvironmentProviderAdapterFactory implements IAdapterFactory {
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+	 */
+	public Object getAdapter(Object adaptableObject, Class adapterType) {
+		if (adaptableObject instanceof IScratchboxSDKTarget) {
+			return new MaemoEmulatorExecutionEnvironmentProviderAdapter();
+		}
+		return null;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+	 */
+	public Class[] getAdapterList() {
+		return new Class[] { IExecutionEnvironmentProviderAdapter.class };
+	}
+
+}

Deleted: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironment.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironment.java	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironment.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Nokia Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Ed Swartz (Nokia) - initial API and implementation
- *******************************************************************************/
-
-package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.swt.widgets.Shell;
-import org.maemo.esbox.internal.api.maemosdk.core.tools.MaemoScriptLauncher;
-import org.maemo.esbox.internal.maemosdk.core.Activator;
-import org.maemo.mica.common.core.MicaException;
-import org.maemo.mica.common.core.sdk.ISDKTarget;
-import org.maemo.mica.common.project.core.ProjectManager;
-
-/**
- * Environment for Maemo applications
- * 
- * @author eswartz
- * 
- */
-public class MaemoExecutionEnvironment extends X11ExecutionEnvironment {
-	@SuppressWarnings("hiding")
-	public static final String ID = SB_EXEC_ENV_BASE + ".maemo";
-
-	public MaemoExecutionEnvironment() {
-		super(ID, "Maemo");
-	}
-
-	public MaemoExecutionEnvironment(String id, String name) {
-		super(id, name);
-	}
-
-	@Override
-	public void establishEnvironment(Shell shell, IProject project)
-			throws CoreException {
-		// see if Maemo is running
-		ISDKTarget sdkTarget;
-		try {
-			sdkTarget = ProjectManager.getInstance().getSDKTarget(project);
-			if (!MaemoScriptLauncher.getInstance().isMaemoStarted(sdkTarget)) {
-				if (MessageDialog
-						.openQuestion(shell, "Launch Maemo?",
-								"Maemo is not running.  Would you like to launch it now?")) {
-					MaemoScriptLauncher.getInstance().startMaemo(sdkTarget);
-				}
-			}
-		} catch (MicaException e) {
-			Activator.getErrorLogger().logAndShowError(
-					"Error querying Maemo status", e);
-			// don't fail the launch
-		}
-	}
-
-}

Copied: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironmentHandler.java (from rev 891, branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironment.java)
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironmentHandler.java	                        (rev 0)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironmentHandler.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Nokia Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.swt.widgets.Shell;
+import org.maemo.esbox.internal.api.maemosdk.core.tools.MaemoScriptLauncher;
+import org.maemo.esbox.internal.maemosdk.core.Activator;
+import org.maemo.mica.common.core.MicaException;
+import org.maemo.mica.common.core.execEnv.IExecutionEnvironmentHandler;
+import org.maemo.mica.common.core.sdk.ISDKTarget;
+import org.maemo.mica.common.project.core.ProjectManager;
+
+/**
+ * Environment for Maemo applications
+ * 
+ * @author eswartz
+ * 
+ */
+public class MaemoExecutionEnvironmentHandler implements IExecutionEnvironmentHandler {
+
+	public void establishEnvironment(Shell shell, IProject project)
+			throws CoreException {
+		// see if Maemo is running
+		ISDKTarget sdkTarget;
+		try {
+			sdkTarget = ProjectManager.getInstance().getSDKTarget(project);
+			if (!MaemoScriptLauncher.getInstance().isMaemoStarted(sdkTarget)) {
+				if (MessageDialog
+						.openQuestion(shell, "Launch Maemo?",
+								"Maemo is not running.  Would you like to launch it now?")) {
+					MaemoScriptLauncher.getInstance().startMaemo(sdkTarget);
+				}
+			}
+		} catch (MicaException e) {
+			Activator.getErrorLogger().logAndShowError(
+					"Error querying Maemo status", e);
+			// don't fail the launch
+		}
+	}
+
+}


Property changes on: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironmentHandler.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Added: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironments.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironments.java	                        (rev 0)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/MaemoExecutionEnvironments.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Nokia Corporation
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
+
+import org.maemo.esbox.internal.maemosdk.core.Activator;
+
+/**
+ * Registered execution environments for a maemo context
+ * @author eswartz
+ *
+ */
+public class MaemoExecutionEnvironments {
+	public static final String SB_EXEC_ENV_BASE = Activator.PLUGIN_ID;
+	
+	/* A generic X11 environment */
+	public static final String X11 = SB_EXEC_ENV_BASE + ".x11";
+	/* A generic GTK environment */
+	public static final String GTK = SB_EXEC_ENV_BASE + ".gtk";
+	/* A Maemo Application Framework environment */
+	public static final String MAEMO = SB_EXEC_ENV_BASE + ".maemo";
+}

Deleted: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironment.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironment.java	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironment.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2008 Nokia Corporation.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *    Ed Swartz (Nokia) - initial API and implementation
- *******************************************************************************/
-
-package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.swt.widgets.Shell;
-import org.maemo.esbox.internal.api.maemosdk.core.tools.MaemoScriptLauncher;
-import org.maemo.esbox.internal.maemosdk.core.Activator;
-import org.maemo.mica.common.core.MicaException;
-import org.maemo.mica.common.core.sdk.ISDKTarget;
-import org.maemo.mica.common.project.core.ProjectManager;
-
-/**
- * Environment for X11-based programs
- * 
- * @author eswartz
- * 
- */
-public class X11ExecutionEnvironment extends BaseScratchboxExecutionEnvironment {
-
-	/**
-	 * 
-	 */
-	public static final String ID = SB_EXEC_ENV_BASE + ".x11";
-
-	public X11ExecutionEnvironment() {
-		super(ID, "X11");
-	}
-
-	public X11ExecutionEnvironment(String id, String name) {
-		super(id, name);
-	}
-
-	@Override
-	public void establishEnvironment(Shell shell, IProject project)
-			throws CoreException {
-		super.establishEnvironment(shell, project);
-
-		ISDKTarget sdkTarget;
-		try {
-			sdkTarget = ProjectManager.getInstance().getSDKTarget(project);
-		} catch (MicaException e1) {
-			throw new CoreException(Activator.createErrorStatus(
-					"Not an ESbox project: " + project, e1));
-		}
-
-		try {
-			if (!MaemoScriptLauncher.getInstance().isXServerStarted(sdkTarget)) {
-
-				if (MessageDialog
-						.openQuestion(shell, "Launch X Server?",
-								"The X server is not running.  Would you like to launch it now?")) {
-					MaemoScriptLauncher.getInstance().startX();
-				}
-			}
-		} catch (MicaException e) {
-			Activator.getErrorLogger().logAndShowError(
-					"Error querying X status", e);
-			// don't fail the launch
-		}
-	}
-
-}

Copied: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironmentHandler.java (from rev 891, branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironment.java)
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironmentHandler.java	                        (rev 0)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironmentHandler.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Nokia Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Ed Swartz (Nokia) - initial API and implementation
+ *******************************************************************************/
+
+package org.maemo.esbox.internal.api.maemosdk.core.execEnv;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.swt.widgets.Shell;
+import org.maemo.esbox.internal.api.maemosdk.core.tools.MaemoScriptLauncher;
+import org.maemo.esbox.internal.maemosdk.core.Activator;
+import org.maemo.mica.common.core.MicaException;
+import org.maemo.mica.common.core.execEnv.IExecutionEnvironmentHandler;
+import org.maemo.mica.common.core.sdk.ISDKTarget;
+import org.maemo.mica.common.project.core.ProjectManager;
+
+/**
+ * Environment for X11-based programs
+ * 
+ * @author eswartz
+ * 
+ */
+public class X11ExecutionEnvironmentHandler implements IExecutionEnvironmentHandler {
+
+	public void establishEnvironment(Shell shell, IProject project)
+			throws CoreException {
+		ISDKTarget sdkTarget;
+		try {
+			sdkTarget = ProjectManager.getInstance().getSDKTarget(project);
+		} catch (MicaException e1) {
+			throw new CoreException(Activator.createErrorStatus(
+					"Not an ESbox project: " + project, e1));
+		}
+
+		try {
+			if (!MaemoScriptLauncher.getInstance().isXServerStarted(sdkTarget)) {
+
+				if (MessageDialog
+						.openQuestion(shell, "Launch X Server?",
+								"The X server is not running.  Would you like to launch it now?")) {
+					MaemoScriptLauncher.getInstance().startX();
+				}
+			}
+		} catch (MicaException e) {
+			Activator.getErrorLogger().logAndShowError(
+					"Error querying X status", e);
+			// don't fail the launch
+		}
+	}
+}


Property changes on: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/api/maemosdk/core/execEnv/X11ExecutionEnvironmentHandler.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Modified: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/OldStyleProjectProperties.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/OldStyleProjectProperties.java	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/OldStyleProjectProperties.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -14,6 +14,7 @@
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.QualifiedName;
+import org.maemo.esbox.internal.api.maemosdk.core.execEnv.MaemoExecutionEnvironments;
 import org.maemo.esbox.scratchbox.core.scratchbox.ScratchboxException;
 import org.maemo.esbox.scratchbox.core.sdk.IScratchboxSDK;
 import org.maemo.esbox.scratchbox.core.sdk.ScratchboxSDKFacade;
@@ -80,15 +81,10 @@
 		IExecutionEnvironment execEnv = null;
 		String execEnvId = readProperty(executionEnvironmentProperty);
 		if (execEnvId == null) {
-			// XXX: this is compatibility behavior
-			// execEnvId =
-			// "org.maemo.esbox.scratchbox.core.execution_environment.maemo";
+			execEnvId = MaemoExecutionEnvironments.MAEMO;
 		}
 		execEnv = ExecutionEnvironmentFactory.getInstance()
 				.findExecutionEnvironment(execEnvId);
-		if (execEnv == null) {
-			execEnv = new UnknownExecutionEnvironment();
-		}
 		return execEnv;
 	}
 

Modified: branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/adapters/MaemoDefaultExecutionEnvironmentAdapter.java
===================================================================
--- branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/adapters/MaemoDefaultExecutionEnvironmentAdapter.java	2008-10-24 00:22:53 UTC (rev 891)
+++ branches/micaSplit/org.maemo.esbox.maemosdk.core/src/org/maemo/esbox/internal/maemosdk/core/adapters/MaemoDefaultExecutionEnvironmentAdapter.java	2008-10-24 19:51:28 UTC (rev 892)
@@ -12,7 +12,7 @@
 package org.maemo.esbox.internal.maemosdk.core.adapters;
 
 import org.eclipse.core.resources.IProject;
-import org.maemo.esbox.internal.api.maemosdk.core.execEnv.MaemoExecutionEnvironment;
+import org.maemo.esbox.internal.api.maemosdk.core.execEnv.MaemoExecutionEnvironments;
 import org.maemo.mica.common.core.adapters.IDefaultExecutionEnvironmentAdapter;
 import org.maemo.mica.common.core.execEnv.ExecutionEnvironmentFactory;
 import org.maemo.mica.common.core.execEnv.IExecutionEnvironment;
@@ -41,7 +41,7 @@
 	public IExecutionEnvironment getDefaultExecutionEnvironment(IProject project) {
 		// TODO: more intelligent check
 		return ExecutionEnvironmentFactory.getInstance()
-				.findExecutionEnvironment(MaemoExecutionEnvironment.ID);
+				.findExecutionEnvironment(MaemoExecutionEnvironments.MAEMO);
 	}
 
 }



More information about the Esbox-commits mailing list