---
 server/lib/deltacloud/helpers/conversion_helper.rb |   17 +++++++++++++++++
 server/server.rb                                   |    2 ++
 2 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/server/lib/deltacloud/helpers/conversion_helper.rb 
b/server/lib/deltacloud/helpers/conversion_helper.rb
index 052095d..7e25c15 100644
--- a/server/lib/deltacloud/helpers/conversion_helper.rb
+++ b/server/lib/deltacloud/helpers/conversion_helper.rb
@@ -34,6 +34,23 @@ module ConversionHelper
       end
       return { :"#{type}" => data }.to_json
     end
+    if type.eql?('hardware_profile')
+      unless Array.eql?(obj.class)
+        obj = [obj]
+      else
+        type = type.to_s.pluralize
+      end
+      data = obj.collect do |o|
+        {
+          :architecture => format_hardware_property(o.architecture).strip,
+          :memory => format_hardware_property(o.memory).strip,
+          :storage => format_hardware_property(o.storage).strip,
+          :href => hardware_profile_url(o.name)
+        }
+      end
+      data = data.first if obj.size==1
+      return { :"#{type}" => data }.to_json
+    end
   end
 
 end
diff --git a/server/server.rb b/server/server.rb
index a47168a..0e25fe0 100644
--- a/server/server.rb
+++ b/server/server.rb
@@ -289,6 +289,7 @@ END
         respond_to do |format|
           format.xml  { haml :'hardware_profiles/index' }
           format.html  { haml :'hardware_profiles/index' }
+          format.json { convert_to_json('hardware_profile', @profiles) }
         end
     end
   end
@@ -301,6 +302,7 @@ END
       respond_to do |format|
         format.xml { haml :'hardware_profiles/show', :layout => false }
         format.html { haml :'hardware_profiles/show' }
+        format.json { convert_to_json('hardware_profile', @profile) }
       end
     end
   end
-- 
1.7.0.4

_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to