attask 0.0.2 → 0.1.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
  SHA1:
3
- metadata.gz: 9e3a1d68670cb5fd2f28639ab038293367eaed6a
4
- data.tar.gz: a509263ae912cd9d9f438690926c0ba37f37ffab
3
+ metadata.gz: eb986f9613540989df63bd3034c08f8de48d5c99
4
+ data.tar.gz: d11435f0f526219dc19c55862d18a9545cc04263
5
5
  SHA512:
6
- metadata.gz: 288900f25fad2c60ab3fc48e6adc52c18da16738b0eb8c4f1563a690ba5bdd5a5f4616456921ef97024cae4988af3d6cadc42879a065d12d343003950700f2b1
7
- data.tar.gz: 44911bb28f9f867c30e75960853d5f5ac99f158fdae1533505ceae2bb1a4ac9e950a89bfd5a3c8435ce000eccaab2d639ce9826221e5d1568fde74da8bafa5ca
6
+ metadata.gz: 501bf743f90c8ab6dfeb0e1dd25dbc1bc5fd4c66a53a7a566c1f2d2a4449a81ee4e770b332dd1ef43d1f700d3111df08665c499fe620e2cd000fcefb6af90f2d
7
+ data.tar.gz: 0d558efd5d7221ae4ff6f371d4ff892580082c0f5df480cbf752c8d2e3ed3f86620f1044924895eeafbca24537ed27f3b38d42e0a194651184e24560f02e5913
data/lib/attask/client.rb CHANGED
@@ -12,77 +12,82 @@ module Attask
12
12
  end
13
13
 
14
14
  def search(object_code, params = {}, fields = [])
15
- params = merge_hashes(@session_id, params, fields: fields.join(','))
15
+ params = merge_hashes(params, fields: fields.join(','))
16
16
  path = mount_path(object_code, '/search')
17
17
  request(:get, path, params)
18
18
  end
19
19
 
20
20
  def get_list(object_code, ids = [], fields = [])
21
- fields = fields.join(',')
22
- params = merge_hashes(@session_id, { id: ids.join(',') }, fields: fields)
21
+ params = merge_hashes({ id: ids.join(',') }, fields: fields.join(','))
23
22
  path = mount_path(object_code, '')
24
23
  request(:get, path, params)
25
24
  end
26
25
 
27
26
  def get(object_code, object_id, params = {}, fields = [])
28
- params = merge_hashes(@session_id, params, fields: fields.join(','))
27
+ params = merge_hashes(params, fields: fields.join(','))
29
28
  path = mount_path(object_code, object_id)
30
29
  request(:get, path, params)
31
30
  end
32
31
 
33
32
  def put(object_code, object_id, params = {}, fields = [])
34
- params = merge_hashes(@session_id, params, fields: fields.join(','))
33
+ params = merge_hashes(params, fields: fields.join(','))
35
34
  path = mount_path(object_code, object_id)
36
35
  request(:put, path, params)
37
36
  end
38
37
 
39
38
  def post(object_code, object_id, params = {}, fields = [])
40
- params = merge_hashes(@session_id, params, fields: fields.join(','))
39
+ params = merge_hashes(params, fields: fields.join(','))
41
40
  path = mount_path(object_code, object_id)
42
41
  request(:post, path, params)
43
42
  end
44
43
 
45
- def delete(object_code, object_id, params)
44
+ def delete(object_code, object_id, params = {})
46
45
  path = mount_path(object_code, object_id)
47
46
  request(:delete, path, params)
48
47
  end
49
48
 
50
- def handle(image_path, multipart_data_format)
51
- upload_io = Faraday::UploadIO.new(image_path, multipart_data_format)
52
- params = { uploadedFile: upload_io }
53
- path = mount_path("upload?sessionID=#{session_id['sessionID']}")
54
- request(:post, path, params)['data']['handle']
55
- end
56
-
57
- def upload(updates)
58
- s_id = @session_id['sessionID']
59
- path = mount_path("document?sessionID=#{s_id}&updates=#{updates}")
60
- request(:post, path)
49
+ def upload(updates, image_path, data_format)
50
+ updates[:handle] = handle(image_path, data_format)
51
+ params = { updates: updates.to_json }
52
+ path = mount_path('document')
53
+ request(:post, path, params)
61
54
  end
62
55
 
63
- def download(download_url, filename, save_to)
64
- params = @session_id
65
- s_id = @session_id['sessionID']
66
- path =
67
- "https://#{@app}.attask-ondemand.com/#{download_url}&sessionID=#{s_id}"
56
+ def download(download_url, filename)
57
+ path = mount_download_path(download_url)
68
58
  response = request(:get, path)
69
59
  save_file(filename, response)
70
60
  end
71
61
 
72
62
  private
73
63
 
74
- def mount_path(object_code, object_id = '')
75
- "#{@endpoint}/#{object_code}#{object_id}"
64
+ def mount_path(object_code, object_id = '', login_path = false)
65
+ return "#{@endpoint}/#{object_code}#{object_id}" if login_path
66
+ "#{@endpoint}/#{object_code}#{object_id}?sessionID=#{@session_id}"
67
+ end
68
+
69
+ def mount_download_path(download_url)
70
+ s_id = @session_id
71
+ "https://#{@app}.attask-ondemand.com/#{download_url}&sessionID=#{s_id}"
72
+ end
73
+
74
+ def handle(image_path, data_format)
75
+ params = payload_file(image_path, data_format)
76
+ path = mount_path('upload')
77
+ request(:post, path, params)['data']['handle']
78
+ end
79
+
80
+ def payload_file(image_path, data_format)
81
+ { uploadedFile: Faraday::UploadIO.new(image_path, data_format) }
76
82
  end
77
83
 
78
84
  def session_id
79
- { 'sessionID' => login['data']['sessionID'] }
85
+ login['data']['sessionID']
80
86
  end
81
87
 
82
88
  def login
83
- config = Config
84
- params = { username: config.username, password: config.password }
85
- path = mount_path('login', '')
89
+ params = { username: Config.username, password: Config.password }
90
+ path = mount_path('login', '', true)
86
91
  request(:post, path, params)
87
92
  end
88
93
 
@@ -3,5 +3,5 @@
3
3
 
4
4
  module Attask
5
5
  # The current Attask version.
6
- VERSION = '0.0.2'
6
+ VERSION = '0.1.0'
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: attask
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paulo Henrique Bruce
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-02 00:00:00.000000000 Z
11
+ date: 2017-02-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable