You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by wi...@apache.org on 2013/02/15 17:33:35 UTC
git commit: refs/heads/qemu-img - Implement the info method
Updated Branches:
refs/heads/qemu-img 2dd8181c9 -> be90c90f6
Implement the info method
Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/be90c90f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/be90c90f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/be90c90f
Branch: refs/heads/qemu-img
Commit: be90c90f61b55deb8eba899d2dc77796cd6730dd
Parents: 2dd8181
Author: Wido den Hollander <wi...@widodh.nl>
Authored: Fri Feb 15 17:32:21 2013 +0100
Committer: Wido den Hollander <wi...@widodh.nl>
Committed: Fri Feb 15 17:32:21 2013 +0100
----------------------------------------------------------------------
.../org/apache/cloudstack/utils/qemu/QemuImg.java | 22 ++++++++++++++-
1 files changed, 21 insertions(+), 1 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/be90c90f/utils/src/org/apache/cloudstack/utils/qemu/QemuImg.java
----------------------------------------------------------------------
diff --git a/utils/src/org/apache/cloudstack/utils/qemu/QemuImg.java b/utils/src/org/apache/cloudstack/utils/qemu/QemuImg.java
index d32507e..33d9f8d 100644
--- a/utils/src/org/apache/cloudstack/utils/qemu/QemuImg.java
+++ b/utils/src/org/apache/cloudstack/utils/qemu/QemuImg.java
@@ -19,9 +19,12 @@ package org.apache.cloudstack.utils.qemu;
import org.apache.cloudstack.utils.qemu.QemuImgFile;
import com.cloud.utils.script.Script;
+import com.cloud.utils.script.OutputInterpreter;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.HashMap;
public class QemuImg {
@@ -112,7 +115,24 @@ public class QemuImg {
}
/* Give information about the disk image */
- public void info(QemuImgFile file) {
+ public List<Map<String, String>> info(QemuImgFile file) {
+ Script s = new Script(_qemuImgPath);
+ s.add("info");
+ s.add(file.getFileName());
+ OutputInterpreter.AllLinesParser parser = new OutputInterpreter.AllLinesParser();
+ s.execute(parser);
+
+ List<Map<String, String>> list = new ArrayList<Map<String, String>>();
+ String[] outputBuffer = parser.getLines().trim().split("\n");
+ for (int i = 0; i < outputBuffer.length - 1; i++) {
+ String[] lineBuffer = outputBuffer[i].split(":");
+ if (lineBuffer.length == 2) {
+ HashMap<String,String> info = new HashMap<String,String>();
+ info.put(lineBuffer[0].trim(), lineBuffer[1].trim());
+ list.add(info);
+ }
+ }
+ return list;
}