From 9c148e1c534aad3590bbb63e1b6baf00ed4d84b8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=81ukasz=20Nowak?= <luke@nexedi.com>
Date: Mon, 21 May 2012 15:06:13 +0200
Subject: [PATCH] Support software key.

---
 .../vifib_slap/Computer_updateFromJson.xml          | 13 ++++++++++++-
 master/bt5/vifib_slap/bt/revision                   |  2 +-
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/master/bt5/vifib_slap/SkinTemplateItem/portal_skins/vifib_slap/Computer_updateFromJson.xml b/master/bt5/vifib_slap/SkinTemplateItem/portal_skins/vifib_slap/Computer_updateFromJson.xml
index 6557a82cec..8241349533 100644
--- a/master/bt5/vifib_slap/SkinTemplateItem/portal_skins/vifib_slap/Computer_updateFromJson.xml
+++ b/master/bt5/vifib_slap/SkinTemplateItem/portal_skins/vifib_slap/Computer_updateFromJson.xml
@@ -91,7 +91,18 @@ def updatePartitionList(computer, partition_list):\n
     partition.deleteContent([q.getId() for q in to_delete_list])\n
 \n
 def updateSoftwareList(computer, software_list):\n
-  pass\n
+  for software_dict in software_list:\n
+    status = software_dict[\'status\']\n
+    try:\n
+      if status == \'installed\':\n
+        computer.stopSoftwareReleaseInstallation(software_release_url=software_dict[\'software_release\'], comment=software_dict[\'log\'])\n
+      elif status == \'uninstalled\':\n
+        computer.cleanupSoftwareReleaseInstallation(software_release_url=software_dict[\'software_release\'], comment=software_dict[\'log\'])\n
+      elif status == \'error\':\n
+        computer.reportSoftwareReleaseInstallationError(software_release_url=software_dict[\'software_release\'], comment=software_dict[\'log\'])\n
+    except ValueError:\n
+      # BBB: Underlying code is state based, does not support multiple information\n
+      pass\n
 \n
 if \'partition\' in computer_json:\n
   updatePartitionList(context, computer_json[\'partition\'])\n
diff --git a/master/bt5/vifib_slap/bt/revision b/master/bt5/vifib_slap/bt/revision
index b322bede21..826b140757 100644
--- a/master/bt5/vifib_slap/bt/revision
+++ b/master/bt5/vifib_slap/bt/revision
@@ -1 +1 @@
-729
\ No newline at end of file
+730
\ No newline at end of file
-- 
2.30.9