tigre-client 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile.lock CHANGED
@@ -1,15 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tigre-client (0.2.3)
5
- curb (~> 0.7.12)
4
+ tigre-client (0.2.4)
6
5
  faraday (~> 0.6.0)
7
6
 
8
7
  GEM
9
8
  remote: http://rubygems.org/
10
9
  specs:
11
10
  addressable (2.2.4)
12
- curb (0.7.15)
13
11
  diff-lcs (1.1.2)
14
12
  faraday (0.6.0)
15
13
  addressable (~> 2.2.4)
data/lib/tigre-client.rb CHANGED
@@ -1,4 +1,3 @@
1
- require 'curb'
2
1
  require 'faraday'
3
2
 
4
3
  require 'tigre-client/multipart_with_file'
@@ -22,6 +22,7 @@ module Tigre
22
22
  # required params
23
23
  # sha256 => String
24
24
  # occurrence_id => String
25
+ # params_hash => Hash
25
26
  def self.update(sha256, occurrence_id, params_hash={})
26
27
  raise ArguementError, "Missing sha256 parameter" if sha256 == ''
27
28
 
@@ -1,7 +1,6 @@
1
1
  module Tigre
2
2
  class Sample
3
3
 
4
- # mimics a curl POST request using Curl
5
4
  # required params
6
5
  # file_location => String path to the file
7
6
  # md5 => String
@@ -28,6 +27,7 @@ module Tigre
28
27
 
29
28
  # required params
30
29
  # md5 => String
30
+ # params_hash => Hash
31
31
  def self.update(md5, params_hash={})
32
32
  update_data = params_hash.map { |k, v| {"sample[#{k.to_s}]" => v.to_s} }
33
33
  Tigre.put_connection("/samples/#{md5}", update_data)
@@ -64,12 +64,36 @@ module Tigre
64
64
  raise ArguementError, "Missing tags parameter"
65
65
  end
66
66
 
67
- tags = tags.join(',') if tags.is_a?(Array)
68
-
67
+ if tags.is_a?(Array)
68
+ tags = tags.map {|t| t.strip}.join(',')
69
+ else
70
+ tags = tags.split(',').map {|t| t.strip}.join(',')
71
+ end
72
+
69
73
  options[:page] ||= 0
70
74
  options[:per] ||= 50
71
75
  Tigre.get_connection("/samples/tagged_with?tags=#{tags}&page=#{options[:page]}&per=#{options[:per]}")
72
76
  end
73
77
 
78
+ # required
79
+ # md5 => String
80
+ # tags => String => I.E 'foo'
81
+ # tags => String (comma seperated) => I.E 'foo,bar,baz'
82
+ # tags => Array => ['foo', 'bar', 'baz']
83
+ def self.add_tags(md5, tags)
84
+ if md5 == '' || tags == ''
85
+ raise ArguementError, "Missing tags parameter"
86
+ end
87
+
88
+ if tags.is_a?(Array)
89
+ tags = tags.map {|t| t.strip}.join(',')
90
+ else
91
+ tags = tags.split(',').map {|t| t.strip}.join(',')
92
+ end
93
+ update_data = {"tag_list" => tags}
94
+
95
+ Tigre.put_connection("/samples/#{md5}/add_tags", update_data)
96
+ end
97
+
74
98
  end
75
99
  end
@@ -27,11 +27,10 @@ module Tigre
27
27
 
28
28
  # required
29
29
  # sha256 => String
30
- # options => Hash
31
- # :source_name => String
30
+ # params_hash => Hash
32
31
  def self.update(sha256, params_hash)
33
- if sha256 == ''
34
- raise ArguementError, "Missing url parameter"
32
+ if sha256 == '' || params_hash.empty?
33
+ raise ArguementError, "Missing url parameter or params_hash is empty"
35
34
  end
36
35
 
37
36
  update_data = params_hash.map { |k, v| {"url[#{k.to_s}]" => v.to_s} }
@@ -44,7 +43,7 @@ module Tigre
44
43
  # tags => String (comma seperated) => I.E 'foo,bar,baz'
45
44
  # tags => Array => ['foo', 'bar', 'baz']
46
45
  def self.add_tags(sha256, tags)
47
- if sha256 == '' || tags == ''
46
+ if sha256 == '' || tags == ''
48
47
  raise ArguementError, "Missing tags parameter"
49
48
  end
50
49
 
@@ -68,7 +67,7 @@ module Tigre
68
67
  end
69
68
 
70
69
  # required params
71
- # sha256 => String
70
+ # md5 => String
72
71
  def self.get_md5(md5)
73
72
  if md5 == ''
74
73
  raise ArguementError, "Missing md5 parameter"
@@ -1,5 +1,5 @@
1
1
  module Tigre
2
2
  module Client
3
- VERSION = "0.2.4"
3
+ VERSION = "0.2.5"
4
4
  end
5
5
  end
data/tigre-client.gemspec CHANGED
@@ -23,7 +23,6 @@ Gem::Specification.new do |s|
23
23
 
24
24
  s.add_development_dependency "rspec"
25
25
 
26
- s.add_dependency('curb', '~> 0.7.12')
27
26
  s.add_dependency('faraday', '~> 0.6.0')
28
27
 
29
28
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: tigre-client
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.2.4
5
+ version: 0.2.5
6
6
  platform: ruby
7
7
  authors:
8
8
  - Marcio Castilho
@@ -11,7 +11,7 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2011-04-11 00:00:00 -04:00
14
+ date: 2011-04-12 00:00:00 -04:00
15
15
  default_executable:
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
@@ -25,28 +25,17 @@ dependencies:
25
25
  version: "0"
26
26
  type: :development
27
27
  version_requirements: *id001
28
- - !ruby/object:Gem::Dependency
29
- name: curb
30
- prerelease: false
31
- requirement: &id002 !ruby/object:Gem::Requirement
32
- none: false
33
- requirements:
34
- - - ~>
35
- - !ruby/object:Gem::Version
36
- version: 0.7.12
37
- type: :runtime
38
- version_requirements: *id002
39
28
  - !ruby/object:Gem::Dependency
40
29
  name: faraday
41
30
  prerelease: false
42
- requirement: &id003 !ruby/object:Gem::Requirement
31
+ requirement: &id002 !ruby/object:Gem::Requirement
43
32
  none: false
44
33
  requirements:
45
34
  - - ~>
46
35
  - !ruby/object:Gem::Version
47
36
  version: 0.6.0
48
37
  type: :runtime
49
- version_requirements: *id003
38
+ version_requirements: *id002
50
39
  description: Tigre Client API Library
51
40
  email:
52
41
  - marcioc@sunbelt-software.com