myexperiment-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[myexperiment-hackers] [3221] branches/components/lib/rest.rb: Added abi


From: noreply
Subject: [myexperiment-hackers] [3221] branches/components/lib/rest.rb: Added ability to specify version of pack items in REST API
Date: Wed, 5 Dec 2012 09:47:26 +0000 (UTC)

Revision
3221
Author
fbacall
Date
2012-12-05 09:47:25 +0000 (Wed, 05 Dec 2012)

Log Message

Added ability to specify version of pack items in REST API

Modified Paths

Diff

Modified: branches/components/lib/rest.rb (3220 => 3221)


--- branches/components/lib/rest.rb	2012-12-04 11:47:08 UTC (rev 3220)
+++ branches/components/lib/rest.rb	2012-12-05 09:47:25 UTC (rev 3221)
@@ -675,7 +675,7 @@
     when 'Experiment';             return experiment_url(ob)
     when 'TavernaEnactor';         return runner_url(ob)
     when 'Job';                    return experiment_job_url(ob.experiment, ob)
-    when 'PackContributableEntry'; return ob.contributable ? rest_resource_uri(ob.contributable) : nil
+    when 'PackContributableEntry'; return ob.contributable ? rest_resource_uri(ob.get_contributable_version) : nil
     when 'PackRemoteEntry';        return ob.uri
     when 'ContentType';            return content_type_url(ob)
     when 'License';                return license_url(ob)
@@ -1450,6 +1450,9 @@
     pack          = parse_element(data, :resource, '/internal-pack-item/pack')
     item          = parse_element(data, :resource, '/internal-pack-item/item')
     comment       = parse_element(data, :text,     '/internal-pack-item/comment')
+
+    version_node  = data.find_first('/internal-pack-item/item/@version')
+    version       = version_node ? version_node.value.to_i : nil
   end
 
   # Obtain object
@@ -1463,7 +1466,8 @@
       ob = PackContributableEntry.new(:user => opts[:user],
           :pack          => pack,
           :contributable => item,
-          :comment       => comment)
+          :comment       => comment,
+          :contributable_version => version)
 
     when 'view', 'edit', 'destroy':
 
@@ -2312,7 +2316,11 @@
   begin
     send(opts[:rules]['Function'], opts)
   rescue
-    return rest_response(500)
+    if Rails.env == "production"
+      return rest_response(500)
+    else
+      raise
+    end
   end
 end
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]