[yocto] [RFC refactor 12/21] Store metadata location as URI instead of String
Ioana Grigoropol
ioanax.grigoropol at intel.com
Wed Jun 5 10:00:13 PDT 2013
- use URI to store meta-data location
- initialize metadata location with projectLocation/meta
Signed-off-by: Ioana Grigoropol <ioanax.grigoropol at intel.com>
---
.../bc/ui/wizards/BitbakeRecipeUIElement.java | 15 +++++++++++----
.../ui/wizards/NewBitBakeFileRecipeWizardPage.java | 19 +++++++++++++++++--
2 files changed, 28 insertions(+), 6 deletions(-)
diff --git a/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/BitbakeRecipeUIElement.java b/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/BitbakeRecipeUIElement.java
index 9699117..8bbc113 100644
--- a/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/BitbakeRecipeUIElement.java
+++ b/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/BitbakeRecipeUIElement.java
@@ -12,6 +12,9 @@ package org.yocto.bc.ui.wizards;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.widgets.Text;
+
+import java.net.URI;
+import java.net.URISyntaxException;
import java.util.ArrayList;
public class BitbakeRecipeUIElement {
@@ -27,7 +30,7 @@ public class BitbakeRecipeUIElement {
private String srcuri;
private String md5sum;
private String sha256sum;
- private String metaDir;
+ private URI metaDir;
private ArrayList inheritance;
public BitbakeRecipeUIElement()
@@ -44,7 +47,11 @@ public class BitbakeRecipeUIElement {
this.md5sum = "";
this.sha256sum = "";
this.inheritance = new ArrayList();
- this.metaDir = "";
+ try {
+ this.metaDir = new URI("");
+ } catch (URISyntaxException e) {
+ e.printStackTrace();
+ }
}
public String getContainer() {
@@ -135,11 +142,11 @@ public class BitbakeRecipeUIElement {
this.inheritance = value;
}
- public String getMetaDir() {
+ public URI getMetaDir() {
return metaDir;
}
- public void setMetaDir(String value) {
+ public void setMetaDir(URI value) {
metaDir = value;
}
}
diff --git a/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/NewBitBakeFileRecipeWizardPage.java b/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/NewBitBakeFileRecipeWizardPage.java
index c9b39be..e9dc53f 100644
--- a/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/NewBitBakeFileRecipeWizardPage.java
+++ b/plugins/org.yocto.bc.ui/src/org/yocto/bc/ui/wizards/NewBitBakeFileRecipeWizardPage.java
@@ -15,6 +15,7 @@ import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.IPath;
import org.eclipse.jface.viewers.ISelection;
@@ -36,6 +37,9 @@ import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.dialogs.ContainerSelectionDialog;
+import org.yocto.bc.ui.Activator;
+import org.yocto.bc.ui.model.ProjectInfo;
+import org.yocto.remote.utils.RemoteHelper;
import java.util.HashMap;
import java.util.Hashtable;
@@ -53,6 +57,7 @@ import java.io.FileInputStream;
import java.io.InputStream;
import java.io.FilenameFilter;
import java.security.MessageDigest;
+import java.lang.reflect.InvocationTargetException;
import java.math.BigInteger;
import java.net.URI;
import java.net.URISyntaxException;
@@ -75,7 +80,7 @@ public class NewBitBakeFileRecipeWizardPage extends WizardPage {
private BitbakeRecipeUIElement element;
private ISelection selection;
- private String metaDirLoc;
+ private URI metaDirLoc;
private ArrayList inheritance;
private final IHost connection;
@@ -213,7 +218,17 @@ public class NewBitBakeFileRecipeWizardPage extends WizardPage {
}
IProject project = container.getProject();
- metaDirLoc = project.getLocation().toString() + "/meta";
+ ProjectInfo projInfo = null;
+ try {
+ projInfo = Activator.getProjInfo(project.getLocationURI());
+ } catch (InvocationTargetException e) {
+ e.printStackTrace();
+ } catch (CoreException e) {
+ e.printStackTrace();
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ metaDirLoc = RemoteHelper.createNewURI(projInfo.getOriginalURI(), "meta");
if (fileName.length() == 0) {
updateStatus("File name must be specified");
--
1.7.9.5
More information about the yocto
mailing list