[Esbox-commits] r2255 - in branches/work_Ed: org.maemo.esbox.maemosdk.ui/src/org/maemo/esbox/internal/api/maemosdk/ui/preferences org.maemo.esbox.vm/src/org/maemo/esbox/internal/vm/ui/actions org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/vm/vmware
eswartz at garage.maemo.org
eswartz at garage.maemo.org
Fri Oct 2 19:52:09 EEST 2009
Author: eswartz
Date: 2009-10-02 19:52:07 +0300 (Fri, 02 Oct 2009)
New Revision: 2255
Modified:
branches/work_Ed/org.maemo.esbox.maemosdk.ui/src/org/maemo/esbox/internal/api/maemosdk/ui/preferences/SharedFolderTreeViewer.java
branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/vm/vmware/VMwareUtils.java
branches/work_Ed/org.maemo.esbox.vm/src/org/maemo/esbox/internal/vm/ui/actions/ValidateVirtualMachineCommand.java
Log:
Fixes to make automounting of shares work on OS X
Modified: branches/work_Ed/org.maemo.esbox.maemosdk.ui/src/org/maemo/esbox/internal/api/maemosdk/ui/preferences/SharedFolderTreeViewer.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.maemosdk.ui/src/org/maemo/esbox/internal/api/maemosdk/ui/preferences/SharedFolderTreeViewer.java 2009-10-02 13:04:12 UTC (rev 2254)
+++ branches/work_Ed/org.maemo.esbox.maemosdk.ui/src/org/maemo/esbox/internal/api/maemosdk/ui/preferences/SharedFolderTreeViewer.java 2009-10-02 16:52:07 UTC (rev 2255)
@@ -11,6 +11,8 @@
package org.maemo.esbox.internal.api.maemosdk.ui.preferences;
+import java.io.File;
+import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -125,8 +127,36 @@
DirectoryDialogHelper.setFilterPathToExistingDirectory(dialog,
current instanceof String
? new Path((String)current).toOSString() : Path.ROOT.toOSString());
- return dialog.open();
+
+ String path = dialog.open();
+ return canonical(path);
}
+
+ /* (non-Javadoc)
+ * @see org.maemo.mica.common.ui.TextAndDialogCellEditor#doGetValue()
+ */
+ @Override
+ protected Object doGetValue() {
+ Object value = super.doGetValue();
+ if (value instanceof String) {
+ value = canonical((String) value);
+ }
+ return value;
+ }
+ /**
+ * Only store canonical paths, so we can match mount points properly.
+ * @param value
+ * @return
+ */
+ private String canonical(String value) {
+ if (value != null) {
+ try {
+ value = new File(value).getCanonicalPath();
+ } catch (IOException e) {
+ }
+ }
+ return value;
+ }
}
static abstract class PathFieldItem extends FieldItem {
@@ -307,7 +337,7 @@
static class SharedFolderContentProvider implements ITreeContentProvider {
private Object[] getFields(ISharedFolder folder) {
- List<Object> fieldList = new ArrayList();
+ List<Object> fieldList = new ArrayList<Object>();
fieldList.add(new SharePathFieldItem(
"Share path",
@@ -344,7 +374,7 @@
* @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
*/
public Object[] getElements(Object inputElement) {
- return ((Collection) inputElement).toArray();
+ return ((Collection<?>) inputElement).toArray();
}
/* (non-Javadoc)
@@ -493,6 +523,8 @@
ViewerTooltipSupport.addTooltipSupport(this, new ViewerTooltipSupport.ITooltipProvider() {
public String getTooltip(Object element) {
+ if (isCellEditorActive())
+ return null;
if (element instanceof FieldItem)
return ((FieldItem) element).tooltip;
/*if (element instanceof ISharedFolder) {
@@ -558,6 +590,7 @@
/**
* @param mappings
*/
+ @SuppressWarnings("unchecked")
public ScanSharedFoldersThread() {
this.mappings = new ArrayList<ISharedFolder>();
if (getInput() instanceof Collection)
@@ -579,6 +612,8 @@
SharedFolderState state;
boolean retry = false;
do {
+ remoteMachine.getFileSystemAccess().refresh();
+
state = SharedFolderManager.getInstance().analyzeSharedFolderState(
MachineRegistry.getInstance().getLocalMachine(),
remoteMachine,
@@ -626,7 +661,7 @@
public void run() {
if (!getControl().isDisposed()) {
if (getInput() instanceof Collection) {
- Object[] objs = ((Collection) getInput()).toArray();
+ Object[] objs = ((Collection<?>) getInput()).toArray();
update(objs, null);
for (TreeColumn column : ((Tree) getControl()).getColumns())
column.pack();
Modified: branches/work_Ed/org.maemo.esbox.vm/src/org/maemo/esbox/internal/vm/ui/actions/ValidateVirtualMachineCommand.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.vm/src/org/maemo/esbox/internal/vm/ui/actions/ValidateVirtualMachineCommand.java 2009-10-02 13:04:12 UTC (rev 2254)
+++ branches/work_Ed/org.maemo.esbox.vm/src/org/maemo/esbox/internal/vm/ui/actions/ValidateVirtualMachineCommand.java 2009-10-02 16:52:07 UTC (rev 2255)
@@ -22,6 +22,7 @@
import org.maemo.mica.common.core.machine.MachineRegistry;
import org.maemo.mica.common.ui.dialogs.StyledTextProgressDialog;
+import java.lang.reflect.InvocationTargetException;
import java.text.MessageFormat;
/**
@@ -72,6 +73,9 @@
machine);
try {
dialog.run(true, true, runner);
+ } catch (InterruptedException e) {
+ } catch (InvocationTargetException e) {
+ Activator.getErrorLogger().logAndShowError("Unexpected exception running tests", e.getCause());
} catch (Exception e) {
Activator.getErrorLogger().logAndShowError("Unexpected exception running tests", e);
}
Modified: branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/vm/vmware/VMwareUtils.java
===================================================================
--- branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/vm/vmware/VMwareUtils.java 2009-10-02 13:04:12 UTC (rev 2254)
+++ branches/work_Ed/org.maemo.esbox.vm.vmware/src/org/maemo/esbox/internal/vm/vmware/VMwareUtils.java 2009-10-02 16:52:07 UTC (rev 2255)
@@ -135,23 +135,27 @@
* @return String, {@value #NETWORK_CONFIG_BRIDGED}, {@value #NETWORK_CONFIG_HOSTONLY}, {@value #NETWORK_CONFIG_NAT}
*/
public static String getNetworkConfig(Map<String, String> vmxSettings) {
+ String netconfig = null;
String config = null;
for (Map.Entry<String, String> entry : vmxSettings.entrySet()) {
if (entry.getKey().matches("ethernet.*\\.vnet")) {
String vmnet = entry.getValue();
if (vmnet.endsWith("vmnet8")) {
- return NETWORK_CONFIG_NAT;
+ netconfig = NETWORK_CONFIG_NAT;
} else if (vmnet.endsWith("vmnet1")) {
- return NETWORK_CONFIG_HOSTONLY;
+ netconfig = NETWORK_CONFIG_HOSTONLY;
} else if (vmnet.endsWith("vmnet0")) {
- return NETWORK_CONFIG_BRIDGED;
+ netconfig = NETWORK_CONFIG_BRIDGED;
}
}
if (entry.getKey().matches("ethernet.*\\.connectionType")) {
config = entry.getValue();
+ if (!config.equals("custom")) {
+ return config;
+ }
}
}
- return config;
+ return netconfig != null ? netconfig : config;
}
/**
More information about the Esbox-commits
mailing list