red_cap 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d78e642412a6c1130c646f78d9857495c5c47face4834f9f89ee5f323f4f9ed2
4
- data.tar.gz: 21eeaefdc5c38b84916ae2257f8ba14fc3e89d327c392dd9b703973ca6c8d351
3
+ metadata.gz: 294e8dbcbc97397f804b5443e39d7e25fe0a6fd33a5d41af80e9790c6a681441
4
+ data.tar.gz: 83776913f99befb802225f449943de4d85d0fb7efb775ded2292347bbd141693
5
5
  SHA512:
6
- metadata.gz: cfbca51100d14bc29820d402cef3bef6ef45a2c3878e3e9f6b31d45f06b65c53e915db3dd0e2496fd055c3d86fb5abcc84aa9d30128af5e3d0c79140a4739887
7
- data.tar.gz: fff7559efdd1645e5cc781d192694f002b0f2f3476777dfcb6bdfe74cc5a541bea1f4acb224738767420f10b645e680f947d7504db2ddfff5e8a4001be1e80e0
6
+ metadata.gz: 877c44eee9b61ff514db43f235f78d4442ac53f3efcaaf9b223e6a271ddb5a0a297d0160477dc0ee6b569bcf619199d1b8b649ae863fa87fda1f97ccac577c4c
7
+ data.tar.gz: 4b36cfffeacc967b4bb3eaaae3aeb841b8a08197a17e4974f1e4725d4714d2c77312144323cac998d7fc738af34f5db41af755cac38862eac6b586e3c273e3a6
@@ -28,6 +28,14 @@ class REDCap
28
28
  json_api_request(content: "record", records: study_id).first
29
29
  end
30
30
 
31
+ def save_records records
32
+ json_api_request(content: "record", data: records.to_json)
33
+ end
34
+
35
+ def delete_records study_ids
36
+ json_api_request(content: "record", action: "delete", records: study_ids)
37
+ end
38
+
31
39
  def metadata
32
40
  json_api_request(content: "metadata")
33
41
  end
@@ -64,8 +72,8 @@ class REDCap
64
72
  connection.options.open_timeout = 300
65
73
  connection.options.timeout = 300
66
74
  response = connection.post nil, options.reverse_merge(token: @token)
67
- if error_message = response.body[/<error>(.+?)<\/error>/, 1]
68
- raise Error.new(error_message)
75
+ if response.body =~ /^{"error":"/
76
+ raise Error.new(response.body)
69
77
  end
70
78
  response
71
79
  end
@@ -1,3 +1,3 @@
1
1
  class REDCap
2
- VERSION = "0.9.0"
2
+ VERSION = "0.10.0"
3
3
  end
data/lib/red_cap.rb CHANGED
@@ -34,6 +34,15 @@ class REDCap
34
34
  client.records(filters.join(" AND "), &block)
35
35
  end
36
36
 
37
+ def update study_id, attributes
38
+ record = attributes.merge(study_id: study_id).stringify_keys
39
+ client.save_records [record]
40
+ end
41
+
42
+ def delete study_id
43
+ client.delete_records [study_id]
44
+ end
45
+
37
46
  private
38
47
 
39
48
  def client
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: red_cap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Micah Geisel
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-11-21 00:00:00.000000000 Z
11
+ date: 2020-03-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday