[eclipse-poky] [PATCH 2/2] org.yocto.sdk.remotetools: remove YoctoBSPWizard

Tim Orling timothy.t.orling at linux.intel.com
Mon Feb 5 11:04:37 PST 2018


Reference for yocto-bsp being dropped from Documentation:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=12300

> On Jan 30, 2018, at 7:21 PM, Chin Huat Ang <chin.huat.ang at intel.com> wrote:
> 
> Remove all wizard or UI code for yocto-bsp tool
> 
> [YOCTO #12509]
> 
> Signed-off-by: Chin Huat Ang <chin.huat.ang at intel.com>
> ---
> .../org/yocto/sdk/remotetools/YoctoBspElement.java |  88 ----
> .../sdk/remotetools/YoctoBspPropertyElement.java   |  65 ---
> .../org/yocto/sdk/remotetools/YoctoJSONHelper.java |  95 ----
> .../sdk/remotetools/actions/YoctoBspHandler.java   |  38 --
> .../sdk/remotetools/wizards/bsp/BSPAction.java     |  32 --
> .../remotetools/wizards/bsp/BSPProgressDialog.java |  47 --
> .../sdk/remotetools/wizards/bsp/BSPThread.java     |  92 ----
> .../wizards/bsp/ErrorCollectorThread.java          |  19 -
> .../remotetools/wizards/bsp/KernelArchGetter.java  |  23 -
> .../wizards/bsp/KernelBranchesGetter.java          |  28 --
> .../sdk/remotetools/wizards/bsp/MainPage.java      | 498 --------------------
> .../wizards/bsp/OutputCollectorThread.java         |  19 -
> .../remotetools/wizards/bsp/PropertiesPage.java    | 499 ---------------------
> .../remotetools/wizards/bsp/QemuArchGetter.java    |  27 --
> .../remotetools/wizards/bsp/YoctoBSPWizard.java    |  99 ----
> 15 files changed, 1669 deletions(-)
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspElement.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspPropertyElement.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoJSONHelper.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/YoctoBspHandler.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPAction.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPProgressDialog.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPThread.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/ErrorCollectorThread.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelArchGetter.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelBranchesGetter.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/MainPage.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/OutputCollectorThread.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/PropertiesPage.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/QemuArchGetter.java
> delete mode 100644 plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/YoctoBSPWizard.java
> 
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspElement.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspElement.java
> deleted file mode 100644
> index e7bf054..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspElement.java
> +++ /dev/null
> @@ -1,88 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2010 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools;
> -
> -public class YoctoBspElement {
> -	private String metadataLoc;
> -	private String buildLoc;
> -	private String bspName;
> -	private String bspOutLoc;
> -	private String karch;
> -	private String qarch;
> -	private boolean validPropertiesFile;
> -
> -	public YoctoBspElement()
> -	{
> -		this.metadataLoc = "";
> -		this.buildLoc = "";
> -		this.bspName = "";
> -		this.bspOutLoc = "";
> -		this.karch = "";
> -		this.qarch = "";
> -		this.validPropertiesFile = false;
> -	}
> -
> -	public String getMetadataLoc() {
> -		return metadataLoc;
> -	}
> -	
> -	public void setMetadataLoc(String value) {
> -		metadataLoc = value;
> -	}
> -	
> -	public String getBuildLoc() {
> -		return buildLoc;
> -	}
> -	
> -	public void setBuildLoc(String value) {
> -		buildLoc = value;
> -	}
> -	
> -	public String getBspName() {
> -		return bspName;
> -	}
> -	
> -	public void setBspName(String value) {
> -		this.bspName = value;
> -	}
> -	
> -	public String getBspOutLoc() {
> -		return bspOutLoc;
> -	}
> -	
> -	public void setBspOutLoc(String value) {
> -		this.bspOutLoc = value;
> -	}
> -	
> -	public String getKarch() {
> -		return karch;
> -	}
> -	
> -	public void setKarch(String value) {
> -		this.karch = value;
> -	}
> -	
> -	public String getQarch() {
> -		return qarch;
> -	}
> -	
> -	public void setQarch(String value) {
> -		this.qarch = value;
> -	}
> -	
> -	public boolean getValidPropertiesFile() {
> -		return validPropertiesFile;
> -	}
> -	
> -	public void setValidPropertiesFile(boolean value) {
> -		this.validPropertiesFile = value;
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspPropertyElement.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspPropertyElement.java
> deleted file mode 100644
> index e88b4bd..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoBspPropertyElement.java
> +++ /dev/null
> @@ -1,65 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2010 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools;
> -
> -public class YoctoBspPropertyElement implements Comparable<YoctoBspPropertyElement>{
> -	private String name;
> -	private String type;
> -	private String value;
> -	private String defaultValue;
> -
> -	public YoctoBspPropertyElement()
> -	{
> -		this.name = "";
> -		this.type = "";
> -		this.value = "";
> -		this.defaultValue = "";
> -	}
> -
> -	public String getName() {
> -		return name;
> -	}
> -
> -	public void setName(String value) {
> -		name = value;
> -	}
> -
> -	public String getType() {
> -		return type;
> -	}
> -
> -	public void setType(String value) {
> -		type = value;
> -	}
> -
> -	public String getDefaultValue() {
> -		return defaultValue;
> -	}
> -
> -	public void setDefaultValue(String value) {
> -		this.defaultValue = value;
> -	}
> -
> -	public String getValue() {
> -		return value;
> -	}
> -
> -	public void setValue(String value) {
> -		this.value = value;
> -	}
> -
> -	@Override
> -	public int compareTo(YoctoBspPropertyElement o) {
> -		return type.compareTo(o.type);
> -	}
> -
> -
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoJSONHelper.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoJSONHelper.java
> deleted file mode 100644
> index 36723d9..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/YoctoJSONHelper.java
> +++ /dev/null
> @@ -1,95 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2010 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools;
> -
> -import java.io.IOException;
> -import java.io.FileWriter;
> -import java.util.Iterator;
> -import java.util.Set;
> -import java.util.HashSet;
> -import java.io.FileReader;
> -
> -import org.json.simple.JSONObject;
> -import org.json.simple.JSONValue;
> -
> -public class YoctoJSONHelper {
> -	private static final String PROPERTIES_FILE = "/tmp/properties.json";
> -	private static final String PROPERTY_VALUE_FILE = "/tmp/propertyvalues.json";
> -
> -	private static HashSet<YoctoBspPropertyElement> properties;
> -
> -	public static HashSet<YoctoBspPropertyElement> getProperties() throws Exception {
> -		
> -		properties = new HashSet<YoctoBspPropertyElement>(); 
> -		try {
> -			
> -			JSONObject obj = (JSONObject)JSONValue.parse(new FileReader(PROPERTIES_FILE));
> -			@SuppressWarnings("unchecked")
> -			Set<String> keys = obj.keySet();
> -			if (!keys.isEmpty()) {
> -				Iterator<String> iter = keys.iterator();
> -			    while (iter.hasNext()) {
> -			      String key = (String)iter.next();
> -			      if (validKey(key)) {
> -			    	  JSONObject value_obj = (JSONObject)obj.get(key);
> -			    	  YoctoBspPropertyElement elem = new YoctoBspPropertyElement();
> -			    	  elem.setName(key);
> -			    	  String type = (String)value_obj.get("type");
> -			    	  elem.setType(type);
> -			    	  if (type.contentEquals("boolean")) {
> -			    		  elem.setDefaultValue((String)value_obj.get("default"));
> -			    	  }
> -			    	  properties.add(elem);
> -			      }
> -			    }
> -			}
> -			
> -		} catch (Exception e) {
> -			throw e;
> -		} 
> -		return properties;
> -	}
> -
> -	@SuppressWarnings("unchecked")
> -	public static void createBspJSONFile(HashSet<YoctoBspPropertyElement> properties) {
> -		try {
> -			/* should be JSONObject<String, Object> obj = new JSONObject<String, Object>();
> -			 * but upstream json-simple would have to change.
> -			 * See http://stackoverflow.com/questions/16415436/json-and-generics-in-java-type-safety-warning
> -			 */
> -			JSONObject obj = new JSONObject();
> -			if (!properties.isEmpty()) {
> -				Iterator<YoctoBspPropertyElement> it = properties.iterator();
> -				while (it.hasNext()) {
> -					// Get property
> -					YoctoBspPropertyElement propElem = (YoctoBspPropertyElement)it.next();
> -					obj.put(propElem.getName(), propElem.getValue());
> -				}
> -			}
> -		 
> -			FileWriter file = new FileWriter(PROPERTY_VALUE_FILE);
> -			file.write(obj.toJSONString());
> -			file.flush();
> -			file.close();
> -		 
> -		} catch (IOException e) {
> -			e.printStackTrace();
> -		}
> -	}
> -	
> -	private static boolean validKey(String key) {
> -		if (key.contains("kernel"))
> -			return false;
> -		if (key.contentEquals("qemuarch"))
> -			return false;
> -		return true;
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/YoctoBspHandler.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/YoctoBspHandler.java
> deleted file mode 100644
> index c97afb6..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/actions/YoctoBspHandler.java
> +++ /dev/null
> @@ -1,38 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2010 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools.actions;
> -
> -import org.eclipse.core.commands.AbstractHandler;
> -import org.eclipse.core.commands.ExecutionEvent;
> -import org.eclipse.core.commands.ExecutionException;
> -import org.eclipse.jface.wizard.WizardDialog;
> -import org.eclipse.ui.IWorkbenchWindow;
> -import org.eclipse.ui.handlers.HandlerUtil;
> -
> -import org.yocto.sdk.remotetools.wizards.bsp.YoctoBSPWizard;
> -
> -public class YoctoBspHandler extends AbstractHandler {
> -
> -	public Object execute(ExecutionEvent event) throws ExecutionException {
> -		
> -		IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);
> -		 // Instantiates and initializes the wizard
> -	    YoctoBSPWizard bspWizard = new YoctoBSPWizard();
> -	    //bspWizard.init(window.getWorkbench(), (IStructuredSelection)selection);
> -	    // Instantiates the wizard container with the wizard and opens it
> -	    WizardDialog dialog = new WizardDialog(window.getShell(), bspWizard);
> -	    //dialog.create();
> -	    dialog.open();
> -		//YoctoBspDialog setting=new YoctoBspDialog(window.getShell());
> -		//setting.open();
> -		return null;
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPAction.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPAction.java
> deleted file mode 100644
> index 171f181..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPAction.java
> +++ /dev/null
> @@ -1,32 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -/**
> - * Stores a list of items from the output of a background thread and the error message if something went wrong
> - * @author ioana.grigoropol
> - *
> - */
> -public class BSPAction {
> -	private String[] items;
> -	private String message;
> -
> -	BSPAction(String[] items, String message){
> -		this.setItems(items);
> -		this.setMessage(message);
> -	}
> -
> -	public String[] getItems() {
> -		return items;
> -	}
> -
> -	public void setItems(String[] items) {
> -		this.items = items;
> -	}
> -
> -	public String getMessage() {
> -		return message;
> -	}
> -
> -	public void setMessage(String message) {
> -		this.message = message;
> -	}
> -}
> \ No newline at end of file
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPProgressDialog.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPProgressDialog.java
> deleted file mode 100644
> index 8d5864c..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPProgressDialog.java
> +++ /dev/null
> @@ -1,47 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -import org.eclipse.core.runtime.IProgressMonitor;
> -import org.eclipse.jface.dialogs.ProgressMonitorDialog;
> -import org.eclipse.jface.operation.IRunnableWithProgress;
> -import org.eclipse.swt.widgets.Shell;
> -
> -/**
> - * Creates a progress monitor dialog that will run in the background a BSPThread and display a custom message
> - * @author ioana.grigoropol
> - *
> - */
> -public class BSPProgressDialog extends ProgressMonitorDialog{
> -	String displayMessage;
> -	BSPThread getterThread;
> -	Shell shell;
> -
> -
> -	public BSPProgressDialog(Shell parent, BSPThread getterThread, String displayMessage) {
> -		super(parent);
> -		this.shell = parent;
> -		this.getterThread = getterThread;
> -		this.displayMessage = displayMessage;
> -	}
> -
> -	public void run(boolean showProgressDialog){
> -		try {
> -			if (showProgressDialog)
> -				super.run(true, true, new IRunnableWithProgress(){
> -					@Override
> -					public void run(IProgressMonitor monitor) {
> -						monitor.beginTask(displayMessage + " ...", 100);
> -						getterThread.run();
> -						monitor.done();
> -					}
> -				});
> -			else
> -				getterThread.run();
> -		} catch (Exception e) {
> -			getterThread.getBspAction().setMessage(e.getMessage());
> -		}
> -	}
> -
> -	public BSPAction getBspAction() {
> -		return getterThread.getBspAction();
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPThread.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPThread.java
> deleted file mode 100644
> index f6b19ac..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/BSPThread.java
> +++ /dev/null
> @@ -1,92 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -import java.io.BufferedReader;
> -import java.io.InputStreamReader;
> -import java.util.ArrayList;
> -
> -/**
> - * Receives a command to be run on a separate thread in the background
> - * It contains an BSPAction object that will collect the output & error
> - * Output lines are processed and collected into the items of BSPAction
> - * @author ioana.grigoropol
> - *
> - */
> -public abstract class BSPThread implements Runnable {
> -	public static final String SUCCESS = "success";
> -	public static final String ERROR = "error";
> -
> -	private BSPAction bspAction;
> -	private String command;
> -
> -	/**
> -	 * Receives the command to be run in the background
> -	 * @param command
> -	 */
> -	public BSPThread(String command) {
> -		this.command = command;
> -		this.bspAction = new BSPAction(null, null);
> -	}
> -
> -	@Override
> -	public void run() {
> -		ArrayList<String> values = new ArrayList<String>();
> -
> -		try {
> -			ProcessBuilder builder = new ProcessBuilder(new String[] {"bash", "-c", command});
> -			// redirect error stream to collect both output & error
> -			builder.redirectErrorStream(true);
> -			Process process = builder.start();
> -			BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
> -			String line = null;
> -			String errorMessage = "";
> -			while ( (line = br.readLine()) != null) {
> -				String[] result = processLine(line);
> -				String status = result[0];
> -				String value = result[1];
> -				if (status.equals(ERROR) && !value.isEmpty()) {
> -					errorMessage += value;
> -					continue;
> -				}
> -				if (!value.isEmpty())
> -					values.add(value);
> -			}
> -			int exitVal = process.waitFor();
> -
> -			// if the background process did not exit with 0 code, we should set the status accordingly
> -			if (exitVal != 0) {
> -				bspAction.setMessage(errorMessage);
> -				bspAction.setItems(null);
> -			}
> -		} catch (Exception e) {
> -			bspAction.setMessage(e.getMessage());
> -			bspAction.setItems(null);
> -		}
> -		if (!values.isEmpty()) {
> -			bspAction.setMessage(null);
> -			bspAction.setItems(values.toArray(new String[values.size()]));
> -		}
> -	}
> -
> -	/**
> -	 * Each command ran in the background will have a different output and a different way of processing it
> -	 * @param line
> -	 * @return
> -	 */
> -	protected abstract String[] processLine(String line);
> -
> -	public BSPAction getBspAction() {
> -		return bspAction;
> -	}
> -
> -	public void setBspAction(BSPAction bspAction) {
> -		this.bspAction = bspAction;
> -	}
> -
> -	public String getCommand() {
> -		return command;
> -	}
> -
> -	public void setCommand(String command) {
> -		this.command = command;
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/ErrorCollectorThread.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/ErrorCollectorThread.java
> deleted file mode 100644
> index d39ac28..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/ErrorCollectorThread.java
> +++ /dev/null
> @@ -1,19 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -/**
> - * BSPThread that ignores the output of the process and returns an error if the process exits with non zero code
> - * @author ioana.grigoropol
> - *
> - */
> -public class ErrorCollectorThread extends BSPThread{
> -
> -	public ErrorCollectorThread(String command) {
> -		super(command);
> -	}
> -
> -	@Override
> -	protected String[] processLine(String line) {
> -		return null;
> -	}
> -
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelArchGetter.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelArchGetter.java
> deleted file mode 100644
> index 833057a..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelArchGetter.java
> +++ /dev/null
> @@ -1,23 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -/**
> - * BSPThread that processes the output of "yocto-bsp list karch"
> - * @author ioana.grigoropol
> - *
> - */
> -public class KernelArchGetter extends BSPThread{
> -
> -	public KernelArchGetter(String command) {
> -		super(command);
> -	}
> -
> -	@Override
> -	protected String[] processLine(String line) {
> -		if (line.contains(":"))
> -			return new String[]{SUCCESS, ""};
> -		line = line.replaceAll("^\\s+", "");
> -		line = line.replaceAll("\\s+$", "");
> -		return new String[]{SUCCESS, line};
> -	}
> -
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelBranchesGetter.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelBranchesGetter.java
> deleted file mode 100644
> index 4caea2c..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/KernelBranchesGetter.java
> +++ /dev/null
> @@ -1,28 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -/**
> - * BSPThread that processes the output lines from running command "yocto-bsp list" for the selected kernel
> - * @author ioana.grigoropol
> - *
> - */
> -public class KernelBranchesGetter extends BSPThread {
> -
> -	public KernelBranchesGetter(String command) {
> -		super(command);
> -	}
> -
> -	@Override
> -	protected String[] processLine(String line) {
> -		// [TODO : Ioana]: find a better way to identify error lines
> -		if (!line.startsWith("["))
> -			return new String[]{ERROR, line + "\n"};
> -
> -		String[] items = line.split(",");
> -
> -		String value = items[0];
> -		value = value.replace("[\"", "");
> -		value = value.replaceAll("\"$", "");
> -		return new String[]{SUCCESS, value};
> -	}
> -
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/MainPage.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/MainPage.java
> deleted file mode 100644
> index cc3630f..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/MainPage.java
> +++ /dev/null
> @@ -1,498 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2012 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -import java.io.BufferedReader;
> -import java.io.File;
> -import java.io.InputStream;
> -import java.io.InputStreamReader;
> -
> -import org.eclipse.core.runtime.IStatus;
> -import org.eclipse.core.runtime.Status;
> -import org.eclipse.jface.wizard.WizardPage;
> -import org.eclipse.swt.SWT;
> -import org.eclipse.swt.events.FocusEvent;
> -import org.eclipse.swt.events.FocusListener;
> -import org.eclipse.swt.events.ModifyEvent;
> -import org.eclipse.swt.events.ModifyListener;
> -import org.eclipse.swt.events.SelectionAdapter;
> -import org.eclipse.swt.events.SelectionEvent;
> -import org.eclipse.swt.layout.GridData;
> -import org.eclipse.swt.layout.GridLayout;
> -import org.eclipse.swt.widgets.Button;
> -import org.eclipse.swt.widgets.Combo;
> -import org.eclipse.swt.widgets.Composite;
> -import org.eclipse.swt.widgets.Control;
> -import org.eclipse.swt.widgets.DirectoryDialog;
> -import org.eclipse.swt.widgets.Label;
> -import org.eclipse.swt.widgets.Text;
> -import org.eclipse.swt.widgets.Widget;
> -import org.yocto.sdk.remotetools.YoctoBspElement;
> -
> -/**
> - *
> - * Setting up the parameters for creating the new Yocto BSP
> - *
> - * @author jzhang
> - */
> -public class MainPage extends WizardPage {
> -	public static  final String  PAGE_NAME = "Main";
> -	private static final String KARCH_CMD = "yocto-bsp list karch";
> -	private static final String QARCH_CMD = "yocto-bsp list qemu property qemuarch";
> -	private static final String BSP_SCRIPT = "yocto-bsp";
> -	private static final String PROPERTIES_CMD_PREFIX = "yocto-bsp list ";
> -	private static final String PROPERTIES_CMD_SURFIX = " properties -o ";
> -	private static final String PROPERTIES_FILE = "/tmp/properties.json";
> -
> -	private Button btnMetadataLoc;
> -	private Text textMetadataLoc;
> -	private Label labelMetadata;
> -
> -	private Button btnBspOutputLoc;
> -	private Text textBspOutputLoc;
> -	private Label labelBspOutput;
> -
> -	private Button btnBuildLoc;
> -	private Text textBuildLoc;
> -	private Label labelBuildLoc;
> -
> -	private boolean buildDirChecked;
> -	private BuildLocationListener buildLocationListener;
> -
> -	private Text textBspName;
> -	private Label labelBspName;
> -
> -	private Combo comboKArch;
> -	private Label labelKArch;
> -
> -	private Combo comboQArch;
> -	private Label labelQArch;
> -
> -	private YoctoBspElement bspElem;
> -
> -	public MainPage(YoctoBspElement element) {
> -		super(PAGE_NAME, "yocto-bsp Main page", null);
> -
> -		setMessage("Enter the required fields(with *) to create new Yocto Project BSP!");
> -		this.bspElem = element;
> -	}
> -
> -	@Override
> -	public void createControl(Composite parent) {
> -		setErrorMessage(null);
> -		Composite composite = new Composite(parent, SWT.NONE);
> -		GridLayout layout = new GridLayout(2, false);
> -		GridData gd = new GridData(SWT.FILL, SWT.CENTER, true, false);
> -		composite.setLayout(layout);
> -		gd.horizontalSpan = 2;
> -		composite.setLayoutData(gd);
> -
> -		labelMetadata = new Label(composite, SWT.NONE);
> -		labelMetadata.setText("Metadata location*: ");
> -		Composite textContainer = new Composite(composite, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -		textMetadataLoc = (Text)addTextControl(textContainer, "");
> -		textMetadataLoc.setEnabled(true);
> -		textMetadataLoc.addModifyListener(new ModifyListener() {
> -			@Override
> -			public void modifyText(ModifyEvent e) {
> -				controlChanged(e.widget);
> -			}
> -		});
> -		setBtnMetadataLoc(addFileSelectButton(textContainer, textMetadataLoc));
> -
> -		labelBuildLoc = new Label(composite, SWT.NONE);
> -		labelBuildLoc.setText("Build location: ");
> -
> -		textContainer = new Composite(composite, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -
> -		textBuildLoc = (Text)addTextControl(textContainer, "");
> -		buildLocationListener = new BuildLocationListener("");
> -		textBuildLoc.addFocusListener(buildLocationListener);
> -
> -		setBtnBuilddirLoc(addFileSelectButton(textContainer, textBuildLoc));
> -
> -		labelBspName = new Label(composite, SWT.NONE);
> -		labelBspName.setText("BSP Name*: ");
> -
> -		textContainer = new Composite(composite, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -
> -		textBspName = (Text)addTextControl(textContainer, "");
> -		textBspName.addModifyListener(new ModifyListener() {
> -			@Override
> -			public void modifyText(ModifyEvent e) {
> -				controlChanged(e.widget);
> -			}
> -		});
> -
> -		labelBspOutput = new Label(composite, SWT.NONE);
> -		labelBspOutput.setText("BSP output location: ");
> -
> -		textContainer = new Composite(composite, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -
> -		textBspOutputLoc = (Text)addTextControl(textContainer, "");
> -		textBspOutputLoc.addModifyListener(new ModifyListener() {
> -			@Override
> -			public void modifyText(ModifyEvent e) {
> -				controlChanged(e.widget);
> -			}
> -		});
> -		setBtnBspOutLoc(addFileSelectButton(textContainer, textBspOutputLoc));
> -
> -		labelKArch = new Label(composite, SWT.NONE);
> -		labelKArch.setText("Kernel Architecture*: ");
> -
> -		textContainer = new Composite(composite, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -
> -		comboKArch = new Combo(textContainer, SWT.READ_ONLY);
> -		comboKArch.setLayout(new GridLayout(2, false));
> -		comboKArch.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
> -		comboKArch.setEnabled(false);
> -		comboKArch.addModifyListener(new ModifyListener() {
> -			@Override
> -			public void modifyText(ModifyEvent e) {
> -				controlChanged(e.widget);
> -			}
> -		});
> -
> -		labelQArch = new Label(composite, SWT.NONE);
> -		labelQArch.setText("Qemu Architecture(* for karch as qemu): ");
> -		labelQArch.setEnabled(false);
> -
> -		textContainer = new Composite(composite, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -
> -		comboQArch = new Combo(textContainer, SWT.READ_ONLY);
> -		comboQArch.setLayout(new GridLayout(2, false));
> -		comboQArch.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
> -		comboQArch.setEnabled(false);
> -		comboQArch.addModifyListener(new ModifyListener() {
> -			@Override
> -			public void modifyText(ModifyEvent e) {
> -				controlChanged(e.widget);
> -			}
> -		});
> -
> -		setControl(composite);
> -		validatePage();
> -	}
> -
> -	private Control addTextControl(final Composite parent, String value) {
> -		final Text text;
> -
> -		text = new Text(parent, SWT.SINGLE | SWT.LEAD | SWT.BORDER);
> -		text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
> -		text.setText(value);
> -		text.setSize(10, 150);
> -
> -		return text;
> -	}
> -
> -	private Button addFileSelectButton(final Composite parent, final Text text) {
> -		Button button = new Button(parent, SWT.PUSH | SWT.LEAD);
> -		button.setText("Browse...");
> -		button.addSelectionListener(new SelectionAdapter() {
> -			@Override
> -			public void widgetSelected(SelectionEvent event) {
> -				String dirName = new DirectoryDialog(parent.getShell()).open();
> -				if (dirName != null) {
> -					text.setText(dirName);
> -				}
> -			}
> -		});
> -		return button;
> -	}
> -
> -	private void controlChanged(Widget widget) {
> -		Status status = new Status(IStatus.OK, "not_used", 0, "", null);
> -		setErrorMessage(null);
> -		String metadataLoc = textMetadataLoc.getText();
> -
> -		if (widget == textMetadataLoc) {
> -			resetKarchCombo();
> -			if (metadataLoc.length() == 0) {
> -				status = new Status(IStatus.ERROR, "not_used", 0, "Meta data location can't be empty!", null);
> -			} else {
> -				File meta_data = new File(metadataLoc);
> -				if (!meta_data.exists() || !meta_data.isDirectory()) {
> -					status = new Status(IStatus.ERROR, "not_used", 0,
> -							"Invalid meta data location: Make sure it exists and is a directory!", null);
> -				} else {
> -					File bspScript = new File(metadataLoc + "/scripts/" + BSP_SCRIPT);
> -					if (!bspScript.exists() || !bspScript.canExecute())
> -						status = new Status(IStatus.ERROR, "not_used", 0,
> -								"Make sure yocto-bsp exists under \"" + metadataLoc + "/scripts\" and is executable!", null);
> -					else {
> -						kernelArchesHandler();
> -					}
> -				}
> -			}
> -		} else if (widget == comboKArch) {
> -			String selection = comboKArch.getText();
> -			if (!bspElem.getKarch().contentEquals(selection))
> -				bspElem = new YoctoBspElement();
> -			if (selection.matches("qemu")) {
> -				labelQArch.setEnabled(true);
> -				comboQArch.setEnabled(true);
> -			} else {
> -				labelQArch.setEnabled(false);
> -				comboQArch.setEnabled(false);
> -			}
> -		}
> -
> -		String buildDir = textBuildLoc.getText();
> -		String outputDir = textBspOutputLoc.getText();
> -		String bspName = textBspName.getText();
> -		
> -		if (bspName.contains(" ")) {
> -			status = new Status(IStatus.ERROR, "not_used", 0,
> -					"BSP name contains space which is not allowed!", null);
> -		}
> -
> -		if (!outputDir.isEmpty()){
> -			if (outputDir.matches(buildDir)) {
> -				status = new Status(IStatus.ERROR, "not_used", 0,
> -						"You've set BSP output directory the same as build directory, please leave output directory empty for this scenario!", null);
> -			} else {
> -				File outputDirectory = new File(outputDir);
> -				if (outputDirectory.exists()){
> -					status = new Status(IStatus.ERROR, "not_used", 0,
> -							"Your BSP output directory points to an existing directory!", null);
> -				}
> -			}
> -		} else if (buildDir.startsWith(metadataLoc) && !bspName.isEmpty()) {
> -			String bspDirStr = metadataLoc + "/meta-" + bspName;
> -			File bspDir = new File(bspDirStr);
> -			if (bspDir.exists()) {
> -				status = new Status(IStatus.ERROR, "not_used", 0,
> -						"Your BSP with name: " + bspName + " already exist under directory: " + bspDirStr + ", please change your bsp name!", null);
> -			}
> -		}
> -
> -		if (status.getSeverity() == IStatus.ERROR)
> -			setErrorMessage(status.getMessage());
> -
> -		getWizard().getContainer().updateButtons();
> -		canFlipToNextPage();
> -	}
> -
> -	private Status checkBuildDir() {
> -
> -		String metadataLoc = textMetadataLoc.getText();
> -		String buildLoc = textBuildLoc.getText();
> -
> -		if (buildLoc.isEmpty()) {
> -			buildLoc = metadataLoc + "/build";
> -			return createBuildDir(buildLoc);
> -		} else {
> -			File buildLocDir = new File(buildLoc);
> -			if (!buildLocDir.exists()) {
> -				return createBuildDir(buildLoc);
> -			} else if (buildLocDir.isDirectory()) {
> -				return createBuildDir(buildLoc);
> -			} else {
> -				return new Status(IStatus.ERROR, "not_used", 0, "Invalid build location: Make sure the build location is a directory!", null);
> -			}
> -		}
> -	}
> -
> -	private Status createBuildDir(String buildLoc) {
> -		String metadataDir = textMetadataLoc.getText();
> -
> -		// if we do  not change the directory to metadata location the script will be looked into the directory indicated by user.dir system property
> -		// system.property usually points to the location from where eclipse was started
> -		String createBuildDirCmd = "cd " + metadataDir + ";source " + metadataDir + "/oe-init-build-env " + buildLoc;
> -
> -		try {
> -			ProcessBuilder builder = new ProcessBuilder(new String[] {"bash", "-c", createBuildDirCmd});
> -			Process proc = builder.start();
> -			InputStream errorStream = proc.getErrorStream();
> -			InputStreamReader isr = new InputStreamReader(errorStream);
> -			BufferedReader br = new BufferedReader(isr);
> -			String line = null;
> -			String status = "";
> -			while ( (line = br.readLine()) != null) {
> -				status += line;
> -			}
> -
> -			if (proc.waitFor() != 0)
> -				return new Status(IStatus.ERROR, "not_used", 0, status, null);;
> -			return new Status(IStatus.OK, "not_used", 0, "", null);
> -		} catch (Exception e) {
> -			return  new Status(IStatus.ERROR, "not_used", 0, e.getMessage(), null);
> -		}
> -	}
> -
> -	public YoctoBspElement getBSPElement() {
> -		return this.bspElem;
> -	}
> -
> -
> -	private void resetKarchCombo() {
> -		comboKArch.deselectAll();
> -		comboQArch.deselectAll();
> -		comboKArch.setEnabled(false);
> -		labelQArch.setEnabled(false);
> -		comboQArch.setEnabled(false);
> -	}
> -
> -	private void kernelArchesHandler() {
> -		BSPAction kArchesAction = getKArches();
> -		if (kArchesAction.getMessage() == null && kArchesAction.getItems().length != 0) {
> -			comboKArch.setItems(kArchesAction.getItems());
> -			comboKArch.setEnabled(true);
> -		} else if (kArchesAction.getMessage() != null){
> -			setErrorMessage(kArchesAction.getMessage());
> -			return;
> -		}
> -		BSPAction qArchesAction = getQArches();
> -		if (qArchesAction.getMessage() == null && qArchesAction.getItems().length != 0) {
> -			comboQArch.setItems(qArchesAction.getItems());
> -		} else if (qArchesAction.getMessage() != null)
> -			setErrorMessage(qArchesAction.getMessage());
> -
> -	}
> -
> -	@Override
> -	public boolean canFlipToNextPage(){
> -		String err = getErrorMessage();
> -		if (err != null)
> -			return false;
> -		else if (!validatePage())
> -			return false;
> -		return true;
> -	}
> -
> -
> -	public boolean validatePage() {
> -		String metadataLoc = textMetadataLoc.getText();
> -		String bspname = textBspName.getText();
> -		String karch = comboKArch.getText();
> -		String qarch = comboQArch.getText();
> -		if (metadataLoc.isEmpty() ||
> -				bspname.isEmpty() ||
> -				karch.isEmpty()) {
> -			return false;
> -		} else if (karch.matches("qemu") && qarch.isEmpty()) {
> -			return false;
> -		}
> -
> -		bspElem.setBspName(bspname);
> -		if (!textBspOutputLoc.getText().isEmpty())
> -			bspElem.setBspOutLoc(textBspOutputLoc.getText());
> -		else
> -			bspElem.setBspOutLoc("");
> -		if (!textBuildLoc.getText().isEmpty()) {
> -			checkBuildDir();
> -			bspElem.setBuildLoc(textBuildLoc.getText());
> -		} else {
> -			bspElem.setBuildLoc(metadataLoc + "/build");
> -			if (!buildDirChecked) {
> -				checkBuildDir();
> -				buildDirChecked = true;
> -			}
> -		}
> -		bspElem.setMetadataLoc(metadataLoc);
> -		bspElem.setKarch(karch);
> -		bspElem.setQarch(qarch);
> -
> -
> -		if (!bspElem.getValidPropertiesFile()) {
> -			boolean validPropertiesFile = true;
> -			BSPAction action = createPropertiesFile();
> -			if (action.getMessage() != null) {
> -				validPropertiesFile = false;
> -				setErrorMessage(action.getMessage());
> -			}
> -			bspElem.setValidPropertiesFile(validPropertiesFile);
> -		}
> -		return true;
> -	}
> -
> -	private BSPAction createPropertiesFile() {
> -		String createPropertiesCmd = bspElem.getMetadataLoc() + "/scripts/" +
> -				PROPERTIES_CMD_PREFIX + bspElem.getKarch() +
> -				PROPERTIES_CMD_SURFIX + PROPERTIES_FILE;
> -		BSPProgressDialog progressDialog = new BSPProgressDialog(getShell(),  new ErrorCollectorThread(createPropertiesCmd), "Creating properties file ");
> -		progressDialog.run(false);
> -		return progressDialog.getBspAction();
> -	}
> -
> -	private BSPAction getKArches() {
> -		String getKArchCmd = textMetadataLoc.getText() + "/scripts/" + KARCH_CMD;
> -		BSPProgressDialog progressDialog = new BSPProgressDialog(getShell(), new KernelArchGetter(getKArchCmd), "Loading kernel architectures ");
> -		progressDialog.run(false);
> -		return progressDialog.getBspAction();
> -	}
> -
> -	private BSPAction getQArches() {
> -		String getQArchCmd = textMetadataLoc.getText() + "/scripts/" + QARCH_CMD;
> -		BSPProgressDialog progressDialog = new BSPProgressDialog(getShell(), new QemuArchGetter(getQArchCmd), "Loading Qemu architectures ");
> -		progressDialog.run(false);
> -		return progressDialog.getBspAction();
> -	}
> -
> -	public Button getBtnMetadataLoc() {
> -		return btnMetadataLoc;
> -	}
> -
> -	public void setBtnMetadataLoc(Button btnMetadataLoc) {
> -		this.btnMetadataLoc = btnMetadataLoc;
> -	}
> -
> -	public Button getBtnBspOutLoc() {
> -		return btnBspOutputLoc;
> -	}
> -
> -	public void setBtnBspOutLoc(Button btnBspOutLoc) {
> -		this.btnBspOutputLoc = btnBspOutLoc;
> -	}
> -
> -	public Button getBtnBuilddirLoc() {
> -		return btnBuildLoc;
> -	}
> -
> -	public void setBtnBuilddirLoc(Button btnBuilddirLoc) {
> -		this.btnBuildLoc = btnBuilddirLoc;
> -	}
> -
> -	class BuildLocationListener implements FocusListener{
> -		String value;
> -		boolean changed;
> -
> -		BuildLocationListener(String value){
> -			this.value = value;
> -		}
> -		@Override
> -		public void focusGained(FocusEvent e) {
> -			value = ((Text)e.getSource()).getText();
> -		}
> -
> -		@Override
> -		public void focusLost(FocusEvent e) {
> -			if(!((Text)e.getSource()).getText().equals(value)) {
> -				checkBuildDir();
> -				buildDirChecked = true;
> -			}
> -		}
> -
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/OutputCollectorThread.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/OutputCollectorThread.java
> deleted file mode 100644
> index df5fba5..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/OutputCollectorThread.java
> +++ /dev/null
> @@ -1,19 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -/**
> - * BSPThread that returns all the output lines of the process execution
> - * @author ioana.grigoropol
> - *
> - */
> -public class OutputCollectorThread extends BSPThread{
> -
> -	public OutputCollectorThread(String command) {
> -		super(command);
> -	}
> -
> -	@Override
> -	protected String[] processLine(String line) {
> -		return new String[]{SUCCESS, line};
> -	}
> -
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/PropertiesPage.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/PropertiesPage.java
> deleted file mode 100644
> index 58ee11f..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/PropertiesPage.java
> +++ /dev/null
> @@ -1,499 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2012 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -import java.util.ArrayList;
> -import java.util.Collections;
> -import java.util.Enumeration;
> -import java.util.HashSet;
> -import java.util.Hashtable;
> -import java.util.Iterator;
> -
> -import org.eclipse.jface.dialogs.MessageDialog;
> -import org.eclipse.jface.wizard.WizardPage;
> -import org.eclipse.swt.SWT;
> -import org.eclipse.swt.custom.ScrolledComposite;
> -import org.eclipse.swt.events.SelectionEvent;
> -import org.eclipse.swt.events.SelectionListener;
> -import org.eclipse.swt.layout.GridData;
> -import org.eclipse.swt.layout.GridLayout;
> -import org.eclipse.swt.widgets.Button;
> -import org.eclipse.swt.widgets.Combo;
> -import org.eclipse.swt.widgets.Composite;
> -import org.eclipse.swt.widgets.Control;
> -import org.eclipse.swt.widgets.Group;
> -import org.eclipse.swt.widgets.Label;
> -import org.eclipse.swt.widgets.Text;
> -import org.eclipse.swt.widgets.Widget;
> -import org.yocto.sdk.remotetools.YoctoBspElement;
> -import org.yocto.sdk.remotetools.YoctoBspPropertyElement;
> -import org.yocto.sdk.remotetools.YoctoJSONHelper;
> -/**
> - *
> - * Setting up the parameters for creating the new Yocto BSP
> - *
> - * @author jzhang
> - */
> -public class PropertiesPage extends WizardPage {
> -	private static final String PAGE_NAME = "Properties";
> -	private static final String VALUES_CMD_PREFIX = "yocto-bsp list ";
> -	private static final String VALUES_CMD_SURFIX = " property  ";
> -	private static final String KERNEL_CHOICE = "kernel_choice";
> -	private static final String DEFAULT_KERNEL = "use_default_kernel";
> -	private static final String SMP_NAME = "smp";
> -	private static final String EXISTING_KBRANCH_NAME = "existing_kbranch";
> -	private static final String NEED_NEW_KBRANCH_NAME = "need_new_kbranch";
> -	private static final String NEW_KBRANCH_NAME = "new_kbranch";
> -	private static final String QARCH_NAME = "qemuarch";
> -
> -	private static final String KERNEL_CHOICES = "choices";
> -	private static final String KERNEL_BRANCHES = "branches";
> -
> -	private Hashtable<YoctoBspPropertyElement, Control> propertyControlMap;
> -	HashSet<YoctoBspPropertyElement> properties;
> -
> -	private ScrolledComposite composite;
> -	private Composite controlContainer = null;
> -
> -	private YoctoBspElement bspElem = null;
> -	private boolean kArchChanged = false;
> -
> -	private Combo kernelCombo;
> -	private Combo branchesCombo;
> -
> -	private Button newBranchButton;
> -	private Button existingBranchButton;
> -
> -	private Button smpButton;
> -
> -	private Group kGroup = null;
> -	private Group kbGroup = null;
> -//	private Group otherSettingsGroup = null;
> -	private Group propertyGroup = null;
> -
> -	public PropertiesPage(YoctoBspElement element) {
> -		super(PAGE_NAME, "yocto-bsp Properties page", null);
> -		this.bspElem = element;
> -	}
> -
> -	public void onEnterPage(YoctoBspElement element) {
> -		if (!element.getValidPropertiesFile()) {
> -			setErrorMessage("There's no valid properties file created, please choose \"Back\" to reselect kernel architecture!");
> -			return;
> -		}
> -
> -		if (this.bspElem == null || this.bspElem.getKarch().isEmpty() || !this.bspElem.getKarch().contentEquals(element.getKarch())) {
> -			kArchChanged = true;
> -		} else
> -			kArchChanged = false;
> -
> -		this.bspElem = element;
> -		try {
> -			if (kArchChanged) {
> -				updateKernelValues(KERNEL_CHOICES, KERNEL_CHOICE);
> -				
> -				if (propertyGroup != null) {
> -					for (Control cntrl : propertyGroup.getChildren()) {
> -						cntrl.dispose();
> -					}
> -				}
> -
> -				properties = YoctoJSONHelper.getProperties();
> -
> -				if (!properties.isEmpty()) {
> -
> -					if (!element.getQarch().isEmpty()) {
> -						YoctoBspPropertyElement qarch_elem = new YoctoBspPropertyElement();
> -						qarch_elem.setName(QARCH_NAME);
> -						qarch_elem.setValue(element.getQarch());
> -						properties.add(qarch_elem);
> -					}
> -
> -					propertyControlMap = new Hashtable<YoctoBspPropertyElement, Control>();
> -
> -					ArrayList<YoctoBspPropertyElement> propertiesList = new ArrayList<YoctoBspPropertyElement>(properties);
> -					Collections.sort(propertiesList, Collections.reverseOrder());
> -
> -					Iterator<YoctoBspPropertyElement> it = propertiesList.iterator();
> -					Composite comp = new Composite(propertyGroup, SWT.FILL);
> -					GridLayout layout = new GridLayout(2, false);
> -					GridData data = new GridData(GridData.FILL, GridData.FILL, true, false, 2, 1);
> -					comp.setLayoutData(data);
> -					comp.setLayout(layout);
> -
> -					while (it.hasNext()) {
> -						// Get property
> -						YoctoBspPropertyElement propElem = it.next();
> -						String type = propElem.getType();
> -						String name = propElem.getName();
> -						if (type.contentEquals("edit")) {
> -							new Label (propertyGroup, SWT.FILL).setText(name + ":");
> -
> -							Composite textContainer = new Composite(propertyGroup, SWT.NONE);
> -							textContainer.setLayout(new GridLayout(1, false));
> -							textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
> -							Text text = new Text(textContainer, SWT.BORDER | SWT.SINGLE);
> -							text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
> -							propertyControlMap.put(propElem, text);
> -
> -						} else if (type.contentEquals("boolean")) {
> -							String default_value = propElem.getDefaultValue();
> -							Composite labelContainer = new Composite(propertyGroup, SWT.NONE);
> -							labelContainer.setLayout(new GridLayout(2, false));
> -							labelContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL, GridData.FILL_VERTICAL, true, false, 2, 1));
> -							Button button = new Button(propertyGroup, SWT.CHECK);
> -							button.setText(name);
> -							if (default_value.equalsIgnoreCase("y")) {
> -								button.setSelection(true);
> -							} else
> -								button.setSelection(false);
> -							propertyControlMap.put(propElem, button);
> -						} else if (type.contentEquals("choicelist")) {
> -							new Label (propertyGroup, SWT.NONE).setText(name + ":");
> -
> -							Composite textContainer = new Composite(propertyGroup, SWT.NONE);
> -							textContainer.setLayout(new GridLayout(1, false));
> -							textContainer.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
> -							Combo combo = new Combo(textContainer, SWT.READ_ONLY);
> -							combo.setLayout(new GridLayout(2, false));
> -							combo.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
> -							combo.setItems(getBSPComboProperties(name));
> -							propertyControlMap.put(propElem, combo);
> -						}
> -					}
> -				}
> -				composite.setMinSize(controlContainer.computeSize(SWT.DEFAULT, SWT.DEFAULT, true));
> -				composite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
> -				controlContainer.pack();
> -				this.composite.layout(true, true);
> -			}
> -		} catch (Exception e) {
> -			e.printStackTrace();
> -		}
> -
> -
> -	}
> -
> -
> -	@Override
> -	public void createControl(Composite parent) {
> -		this.composite = new ScrolledComposite(parent, SWT.H_SCROLL | SWT.V_SCROLL);
> -		GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);
> -		GridLayout layout = new GridLayout(2, true);
> -		this.composite.setLayout(layout);
> -
> -		gd= new GridData(SWT.FILL, SWT.FILL, true, false);
> -		gd.horizontalSpan = 2;
> -		this.composite.setLayoutData(gd);
> -
> -		setControl(this.composite);
> -
> -		controlContainer = new Composite(composite, SWT.NONE);
> -		controlContainer.setLayout(new GridLayout(1, true));
> -		controlContainer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
> -
> -		kGroup = new Group(controlContainer, SWT.FILL);
> -		kGroup.setLayout(new GridLayout(2, false));
> -		GridData data = new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1);
> -		kGroup.setLayoutData(data);
> -		kGroup.setText("Kernel Settings:");
> -
> -		new Label (kGroup, SWT.NONE).setText("Kernel:");
> -		Composite textContainer = new Composite(kGroup, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(1, false));
> -		textContainer.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false, 1, 1));
> -
> -		kernelCombo = new Combo(textContainer, SWT.READ_ONLY);
> -		kernelCombo.setLayout(new GridLayout(2, false));
> -		kernelCombo.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
> -
> -		kernelCombo.addSelectionListener(new SelectionListener() {
> -
> -			@Override
> -			public void widgetSelected(SelectionEvent e) {
> -				controlChanged(e.widget);
> -			}
> -
> -			@Override
> -			public void widgetDefaultSelected(SelectionEvent e) {
> -			}
> -		});
> -
> -		kbGroup = new Group(kGroup, SWT.FILL);
> -		kbGroup.setLayout(new GridLayout(2, true));
> -		data = new GridData(SWT.FILL, SWT.FILL, true, false);
> -		data.horizontalSpan = 2;
> -		kbGroup.setLayoutData(data);
> -		kbGroup.setText("Branch Settings:");
> -
> -		textContainer = new Composite(kbGroup, SWT.NONE);
> -		textContainer.setLayout(new GridLayout(2, false));
> -		textContainer.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false, 2, 1));
> -		
> -		new Label(textContainer, SWT.NONE).setText("Kernel branch:");
> -		
> -		branchesCombo = new Combo(textContainer, SWT.READ_ONLY);
> -		branchesCombo.setLayout(new GridLayout(1, false));
> -		branchesCombo.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
> -		branchesCombo.addSelectionListener(new SelectionListener() {
> -
> -			@Override
> -			public void widgetSelected(SelectionEvent e) {
> -				controlChanged(e.widget);
> -			}
> -
> -			@Override
> -			public void widgetDefaultSelected(SelectionEvent e) {
> -			}
> -		});
> -		branchesCombo.setSize(200, 200);
> -		
> -		newBranchButton = new Button(kbGroup, SWT.RADIO);
> -		newBranchButton.setText("Create a new branch from an existing one");
> -		newBranchButton.setSelection(true);
> -		newBranchButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1));
> -		SelectionListener listener = new SelectionListener() {
> -			@Override
> -			public void widgetDefaultSelected(SelectionEvent e) {}
> -
> -			@Override
> -			public void widgetSelected(SelectionEvent e) {
> -				controlChanged(e.widget);
> -			}
> -		};
> -
> -		newBranchButton.addSelectionListener(listener);
> -
> -		existingBranchButton = new Button(kbGroup, SWT.RADIO);
> -		existingBranchButton.setText("Use existing branch");
> -		existingBranchButton.setSelection(false);
> -		existingBranchButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1));
> -		existingBranchButton.addSelectionListener(listener);
> -
> -//		otherSettingsGroup = new Group(controlContainer, SWT.FILL);
> -//		otherSettingsGroup.setLayout(new GridLayout(2, true));
> -//		data = new GridData(SWT.FILL, SWT.FILL, true, false);
> -//		data.horizontalSpan = 2;
> -//		otherSettingsGroup.setLayoutData(data);
> -//		otherSettingsGroup.setText("Other Settings:");
> -
> -		smpButton = new Button(kGroup, SWT.CHECK);
> -		smpButton.setText("Enable SMP support");
> -		smpButton.setSelection(true);
> -		
> -		propertyGroup = new Group(controlContainer, SWT.NONE);
> -		propertyGroup.setLayout(new GridLayout(2, false));
> -		data = new GridData(GridData.FILL, GridData.FILL, true, false, 2, 1);
> -		propertyGroup.setLayoutData(data);
> -		propertyGroup.setText("BSP specific settings:");
> -
> -		this.composite.layout(true, true);
> -
> -		composite.setContent(controlContainer);
> -		composite.setExpandHorizontal(true);
> -		composite.setExpandVertical(true);
> -		composite.setMinSize(controlContainer.computeSize(SWT.DEFAULT, SWT.DEFAULT, true));
> -		controlContainer.pack();
> -		composite.pack();
> -	}
> -
> -	@Override
> -	public boolean canFlipToNextPage() {
> -		return false;
> -	}
> -
> -	public HashSet<YoctoBspPropertyElement> getProperties() {
> -		String kcSelection = kernelCombo.getText();
> -		String kbSelection = branchesCombo.getText();
> -		YoctoBspPropertyElement kcElement = new YoctoBspPropertyElement();
> -		kcElement.setName(KERNEL_CHOICE);
> -		kcElement.setValue(kcSelection);
> -		properties.add(kcElement);
> -		YoctoBspPropertyElement defaultElement = new YoctoBspPropertyElement();
> -		defaultElement.setName(DEFAULT_KERNEL);
> -		defaultElement.setValue("n");
> -		properties.add(defaultElement);
> -
> -		YoctoBspPropertyElement smpElement = new YoctoBspPropertyElement();
> -		smpElement.setName(SMP_NAME);
> -		if (smpButton.getSelection())
> -			smpElement.setValue("y");
> -		else
> -			smpElement.setValue("n");
> -		properties.add(smpElement);
> -
> -		YoctoBspPropertyElement newKbElement = new YoctoBspPropertyElement();
> -		YoctoBspPropertyElement kbElement = new YoctoBspPropertyElement();
> -
> -		newKbElement.setName(NEED_NEW_KBRANCH_NAME);
> -		if (newBranchButton.getSelection()) {
> -			newKbElement.setValue("y");
> -			properties.add(newKbElement);
> -			kbElement.setName(NEW_KBRANCH_NAME);
> -			kbElement.setValue(kbSelection);
> -			properties.add(kbElement);
> -		} else {
> -			newKbElement.setValue("n");
> -			properties.add(newKbElement);
> -			kbElement.setName(EXISTING_KBRANCH_NAME);
> -			kbElement.setValue(kbSelection);
> -			properties.add(kbElement);
> -		}
> -
> -		return properties;
> -	}
> -
> -	public boolean validatePage() {
> -		if (kernelCombo == null)
> -			return false;
> -
> -		if ((kernelCombo != null) && (branchesCombo != null)) {
> -			String kcSelection = kernelCombo.getText();
> -			String kbSelection = branchesCombo.getText();
> -			if ((kcSelection == null) || (kbSelection == null) || (kcSelection.isEmpty()) || (kbSelection.isEmpty())) {
> -				setErrorMessage("Please choose a kernel and a specific branch!");
> -				return false;
> -			}
> -		}
> -		if ((propertyControlMap != null)) {
> -			if (!propertyControlMap.isEmpty()) {
> -				Enumeration<YoctoBspPropertyElement> keys = propertyControlMap.keys();
> -				while (keys.hasMoreElements()) {
> -					YoctoBspPropertyElement key = keys.nextElement();
> -					Control control = propertyControlMap.get(key);
> -					String type = key.getType();
> -
> -					if (type.contentEquals("edit")) {
> -						String text_value = ((Text)control).getText();
> -						if (text_value == null) {
> -							setErrorMessage("Field "+ key.getName() +" is not set.  All of the field on this screen must be set!");
> -							return false;
> -						} else {
> -							key.setValue(text_value);
> -						}
> -					} else if (type.contentEquals("choicelist")) {
> -						String choice_value = ((Combo)control).getText();
> -						if (choice_value == null) {
> -							setErrorMessage("Field "+ key.getName() +" is not set.  All of the field on this screen must be set!");
> -							return false;
> -						} else {
> -							key.setValue(choice_value);
> -						}
> -					} else {
> -						boolean button_select = ((Button)control).getSelection();
> -						if (button_select)
> -							key.setValue("y");
> -						else
> -							key.setValue("n");
> -					}
> -					updateProperties(key);
> -				}
> -			}
> -		}
> -		return true;
> -	}
> -
> -	private void updateProperties(YoctoBspPropertyElement element) {
> -		Iterator<YoctoBspPropertyElement> it = properties.iterator();
> -
> -		while (it.hasNext()) {
> -			YoctoBspPropertyElement propElem = it.next();
> -			if (propElem.getName().contentEquals(element.getName())) {
> -				properties.remove(propElem);
> -				properties.add(element);
> -				break;
> -			} else
> -				continue;
> -		}
> -	}
> -	private void controlChanged(Widget widget) {
> -		setErrorMessage(null);
> -
> -		String kernel_choice = kernelCombo.getText();
> -		if ((kernel_choice == null) || (kernel_choice.isEmpty())) {
> -			setErrorMessage("Please choose kernel !");
> -			return;
> -		}
> -		if (widget == kernelCombo) {
> -			updateKernelValues(KERNEL_BRANCHES, "\\\"" + kernel_choice + "\\\"." + NEW_KBRANCH_NAME);
> -		} else if (widget == branchesCombo) {
> -			setErrorMessage(null);
> -			branchesCombo.computeSize(SWT.DEFAULT, SWT.DEFAULT);
> -		} else if (widget == newBranchButton || widget == existingBranchButton) {
> -			if (newBranchButton.getSelection()) {
> -				updateKernelValues(KERNEL_BRANCHES, "\"" + kernel_choice + "\"." + NEW_KBRANCH_NAME);
> -			} else {
> -				updateKernelValues(KERNEL_BRANCHES, "\"" + kernel_choice + "\"." + EXISTING_KBRANCH_NAME);
> -			}
> -			branchesCombo.deselectAll();
> -		}
> -		canFlipToNextPage();
> -		getWizard().getContainer().updateButtons();
> -		this.composite.layout(true, true);
> -		composite.pack();
> -	}
> -
> -	private void updateKernelValues(final String value, String property) {
> -		@SuppressWarnings("unused")
> -		String build_dir = "";
> -		if ((bspElem.getBuildLoc() == null) || bspElem.getBuildLoc().isEmpty())
> -			build_dir = bspElem.getMetadataLoc()+"/build";
> -		else
> -			build_dir = bspElem.getBuildLoc();
> -
> -		String metadataLoc = bspElem.getMetadataLoc();
> -		String valuesCmd = "source " + metadataLoc + "/oe-init-build-env;" + metadataLoc + "/scripts/" + VALUES_CMD_PREFIX + bspElem.getKarch() + VALUES_CMD_SURFIX + property;
> -		BSPProgressDialog progressDialog = new BSPProgressDialog(getShell(),  new KernelBranchesGetter(valuesCmd), "Loading Kernel " + value);
> -		if (value.equals(KERNEL_CHOICES))
> -			progressDialog.run(false);
> -		else if (value.equals(KERNEL_BRANCHES))
> -			progressDialog.run(true);
> -		
> -		BSPAction action = progressDialog.getBspAction();
> -		if (action.getItems() != null) {
> -			if (value.equals(KERNEL_CHOICES)) {
> -				kernelCombo.setItems(action.getItems());
> -				kernelCombo.pack();
> -				kernelCombo.deselectAll();
> -				branchesCombo.setEnabled(false);
> -				branchesCombo.deselectAll();
> -			} else if (value.equals(KERNEL_BRANCHES)) {
> -				branchesCombo.setItems(action.getItems());
> -				branchesCombo.pack();
> -				branchesCombo.setEnabled(true);
> -			}
> -			composite.setMinSize(controlContainer.computeSize(SWT.DEFAULT, SWT.DEFAULT, true));
> -		} else if (action.getMessage() != null)
> -			MessageDialog.openError(getShell(), "Yocto-BSP", action.getMessage());
> -		composite.setMinSize(controlContainer.computeSize(SWT.DEFAULT, SWT.DEFAULT, true));
> -	}
> -
> -	private String[] getBSPComboProperties(String property) {
> -		String build_dir = "";
> -		if ((bspElem.getBuildLoc() == null) || bspElem.getBuildLoc().isEmpty())
> -			build_dir = bspElem.getMetadataLoc()+"/build";
> -		else
> -			build_dir = bspElem.getBuildLoc();
> -
> -		String valuesCmd = "export BUILDDIR=" + build_dir + ";" + bspElem.getMetadataLoc() + "/scripts/" + VALUES_CMD_PREFIX + bspElem.getKarch() + VALUES_CMD_SURFIX + property;
> -		BSPProgressDialog progressDialog = new BSPProgressDialog(getShell(),  new KernelBranchesGetter(valuesCmd), "Loading property " + property + "values");
> -		progressDialog.run(false);
> -		BSPAction action = progressDialog.getBspAction();
> -
> -		if (action.getItems() != null) {
> -			return action.getItems();
> -		} else if (action.getMessage() != null) {
> -			MessageDialog.openError(getShell(), "Yocto-BSP", action.getMessage());
> -			return new String[]{};
> -		}
> -		return new String[]{};
> -	}
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/QemuArchGetter.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/QemuArchGetter.java
> deleted file mode 100644
> index e235695..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/QemuArchGetter.java
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -/**
> - * BSPThread that processes the output of running "yocto-bsp list qemu property qemuarch"
> - * @author ioana.grigoropol
> - *
> - */
> -public class QemuArchGetter extends BSPThread {
> -
> -	public QemuArchGetter(String command) {
> -		super(command);
> -	}
> -
> -	@Override
> -	protected String[] processLine(String line) {
> -		if (!line.startsWith("["))
> -			return new String[]{ERROR, line + "\n"};
> -
> -		String[] values = line.split(",");
> -
> -		String value = values[0];
> -		value = value.replace("[\"", "");
> -		value = value.replaceAll("\"$", "");
> -		return new String[]{SUCCESS, value};
> -	}
> -
> -}
> diff --git a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/YoctoBSPWizard.java b/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/YoctoBSPWizard.java
> deleted file mode 100644
> index 3ab24c0..0000000
> --- a/plugins/org.yocto.sdk.remotetools/src/org/yocto/sdk/remotetools/wizards/bsp/YoctoBSPWizard.java
> +++ /dev/null
> @@ -1,99 +0,0 @@
> -/*******************************************************************************
> - * Copyright (c) 2010 Intel 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:
> - * Intel - initial API and implementation
> - *******************************************************************************/
> -package org.yocto.sdk.remotetools.wizards.bsp;
> -
> -import java.util.HashSet;
> -
> -import org.eclipse.jface.dialogs.MessageDialog;
> -import org.eclipse.jface.wizard.IWizardPage;
> -import org.eclipse.jface.wizard.Wizard;
> -import org.yocto.sdk.remotetools.YoctoBspElement;
> -import org.yocto.sdk.remotetools.YoctoBspPropertyElement;
> -import org.yocto.sdk.remotetools.YoctoJSONHelper;
> -
> -/**
> - * A wizard for creating Yocto BSP.
> - *
> - * @author jzhang
> - *
> - */
> -public class YoctoBSPWizard extends Wizard {
> -	private static final String CREATE_CMD = "/scripts/yocto-bsp create ";
> -	private static final String PROPERTY_VALUE_FILE = "/tmp/propertyvalues.json";
> -
> -	private MainPage mainPage;
> -	private PropertiesPage propertiesPage;
> -	private final YoctoBspElement bspElem;
> -
> -	public YoctoBSPWizard() {
> -		super();
> -		bspElem = new YoctoBspElement();
> -	}
> -
> -	@Override
> -	public IWizardPage getNextPage(IWizardPage page) {
> -		propertiesPage.onEnterPage(mainPage.getBSPElement());
> -		return propertiesPage;
> -	}
> -
> -	@Override
> -	public void addPages() {
> -		mainPage = new MainPage(bspElem);
> -		addPage(mainPage);
> -		propertiesPage = new PropertiesPage(bspElem);
> -		addPage(propertiesPage);
> -	}
> -
> -	private BSPAction createBSP(){
> -		YoctoBspElement element = mainPage.getBSPElement();
> -		String createBspCmd = element.getMetadataLoc() + CREATE_CMD +
> -								element.getBspName() + " " + element.getKarch();
> -
> -		if (!element.getBspOutLoc().isEmpty())
> -			createBspCmd = createBspCmd + " -o " + element.getBspOutLoc();
> -		else
> -			createBspCmd = createBspCmd + " -o " + element.getMetadataLoc() + "/meta-" + element.getBspName();
> -		createBspCmd = createBspCmd + " -i " + PROPERTY_VALUE_FILE;
> -
> -		BSPProgressDialog progressDialog = new BSPProgressDialog(getShell(),  new OutputCollectorThread(createBspCmd), "Creating BSP ");
> -		progressDialog.run(true);
> -		return progressDialog.getBspAction();
> -	}
> -
> -	@Override
> -	public boolean performFinish() {
> -		if (propertiesPage.validatePage()) {
> -			HashSet<YoctoBspPropertyElement> properties = propertiesPage.getProperties();
> -			YoctoJSONHelper.createBspJSONFile(properties);
> -
> -			BSPAction createBSPAction = createBSP();
> -			if (createBSPAction.getMessage() !=  null && !createBSPAction.getMessage().isEmpty()) {
> -				MessageDialog.openError(getShell(),"Yocto-BSP", createBSPAction.getMessage());
> -				return false;
> -			} else {
> -				String message = "";
> -				for (String item : createBSPAction.getItems())
> -					message += item + "\n";
> -				MessageDialog.openInformation(getShell(), "Yocto-BSP", message);
> -				return true;
> -			}
> -		} else {
> -			MessageDialog.openError(getShell(), "Yocto-BSP", "Property settings contains error!");
> -			return false;
> -		}
> -
> -	}
> -
> -	@Override
> -	public boolean canFinish() {
> -		return (mainPage.validatePage() && propertiesPage.validatePage());
> -	}
> -}
> -- 
> 2.7.4
> 
> _______________________________________________
> eclipse-poky mailing list
> eclipse-poky at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/eclipse-poky




More information about the eclipse-yocto mailing list