signatureio 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,17 +5,17 @@ module Signatureio
5
5
  #
6
6
  def self.create(attrs={})
7
7
  response = Signatureio.request.post "documents.json", attrs
8
- response.body.to_ostruct_recursive
8
+ RecursiveOpenStruct.new(response.body, :recurse_over_arrays => true)
9
9
  end
10
10
 
11
11
  def self.retrieve(id=nil)
12
12
  response = Signatureio.request.get "documents/#{id}.json"
13
- response.body.to_ostruct_recursive
13
+ RecursiveOpenStruct.new(response.body, :recurse_over_arrays => true)
14
14
  end
15
15
 
16
16
  def self.all
17
17
  response = Signatureio.request.get "documents.json"
18
- response.body.to_ostruct_recursive
18
+ RecursiveOpenStruct.new(response.body, :recurse_over_arrays => true)
19
19
  end
20
20
  end
21
21
  end
@@ -1,3 +1,3 @@
1
1
  module Signatureio
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/signatureio.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  require "faraday"
2
2
  require "faraday_middleware"
3
- require "signatureio/extensions/try"
4
- require "signatureio/extensions/recursive_openstruct"
3
+ require "recursive-open-struct"
5
4
  require "signatureio/version"
6
5
  require "signatureio/document"
7
6
 
data/signatureio.gemspec CHANGED
@@ -14,6 +14,7 @@ Gem::Specification.new do |gem|
14
14
 
15
15
  gem.add_dependency "faraday"
16
16
  gem.add_dependency "faraday_middleware"
17
+ gem.add_dependency "recursive-open-struct"
17
18
 
18
19
  gem.add_development_dependency "pry"
19
20
  gem.add_development_dependency "rake"
@@ -1,5 +1,5 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe Signatureio do
4
- it { Signatureio::VERSION.should eq "0.0.2" }
4
+ it { Signatureio::VERSION.should eq "0.0.3" }
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: signatureio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -43,6 +43,22 @@ dependencies:
43
43
  - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: recursive-open-struct
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
46
62
  - !ruby/object:Gem::Dependency
47
63
  name: pry
48
64
  requirement: !ruby/object:Gem::Requirement
@@ -106,8 +122,6 @@ files:
106
122
  - Rakefile
107
123
  - lib/signatureio.rb
108
124
  - lib/signatureio/document.rb
109
- - lib/signatureio/extensions/recursive_openstruct.rb
110
- - lib/signatureio/extensions/try.rb
111
125
  - lib/signatureio/version.rb
112
126
  - signatureio.gemspec
113
127
  - spec/signatureio/document_spec.rb
@@ -128,7 +142,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
128
142
  version: '0'
129
143
  segments:
130
144
  - 0
131
- hash: -190219823189497612
145
+ hash: -3720145876798221900
132
146
  required_rubygems_version: !ruby/object:Gem::Requirement
133
147
  none: false
134
148
  requirements:
@@ -137,7 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
137
151
  version: '0'
138
152
  segments:
139
153
  - 0
140
- hash: -190219823189497612
154
+ hash: -3720145876798221900
141
155
  requirements: []
142
156
  rubyforge_project:
143
157
  rubygems_version: 1.8.23
@@ -1,28 +0,0 @@
1
- # https://gist.github.com/2710460
2
- class Hash
3
- # options:
4
- # :exclude => [keys] - keys need to be symbols
5
- def to_ostruct_recursive(options = {})
6
- convert_to_ostruct_recursive(self, options)
7
- end
8
-
9
- def with_sym_keys
10
- self.inject({}) { |memo, (k,v)| memo[k.to_sym] = v; memo }
11
- end
12
-
13
- private
14
-
15
- def convert_to_ostruct_recursive(obj, options)
16
- result = obj
17
- if result.is_a? Hash
18
- result = result.dup.with_sym_keys
19
- result.each do |key, val|
20
- result[key] = convert_to_ostruct_recursive(val, options) unless options[:exclude].try(:include?, key)
21
- end
22
- result = OpenStruct.new result
23
- elsif result.is_a? Array
24
- result = result.map { |r| convert_to_ostruct_recursive(r, options) }
25
- end
26
- return result
27
- end
28
- end
@@ -1,57 +0,0 @@
1
- class Object
2
- # Invokes the method identified by the symbol +method+, passing it any arguments
3
- # and/or the block specified, just like the regular Ruby <tt>Object#send</tt> does.
4
- #
5
- # *Unlike* that method however, a +NoMethodError+ exception will *not* be raised
6
- # and +nil+ will be returned instead, if the receiving object is a +nil+ object or NilClass.
7
- #
8
- # If try is called without a method to call, it will yield any given block with the object.
9
- #
10
- # Please also note that +try+ is defined on +Object+, therefore it won't work with
11
- # subclasses of +BasicObject+. For example, using try with +SimpleDelegator+ will
12
- # delegate +try+ to target instead of calling it on delegator itself.
13
- #
14
- # ==== Examples
15
- #
16
- # Without +try+
17
- # @person && @person.name
18
- # or
19
- # @person ? @person.name : nil
20
- #
21
- # With +try+
22
- # @person.try(:name)
23
- #
24
- # +try+ also accepts arguments and/or a block, for the method it is trying
25
- # Person.try(:find, 1)
26
- # @people.try(:collect) {|p| p.name}
27
- #
28
- # Without a method argument try will yield to the block unless the receiver is nil.
29
- # @person.try { |p| "#{p.first_name} #{p.last_name}" }
30
- #--
31
- # +try+ behaves like +Object#send+, unless called on +NilClass+.
32
- def try(*a, &b)
33
- if a.empty? && block_given?
34
- yield self
35
- else
36
- __send__(*a, &b)
37
- end
38
- end
39
- end
40
-
41
- class NilClass
42
- # Calling +try+ on +nil+ always returns +nil+.
43
- # It becomes specially helpful when navigating through associations that may return +nil+.
44
- #
45
- # === Examples
46
- #
47
- # nil.try(:name) # => nil
48
- #
49
- # Without +try+
50
- # @person && !@person.children.blank? && @person.children.first.name
51
- #
52
- # With +try+
53
- # @person.try(:children).try(:first).try(:name)
54
- def try(*args)
55
- nil
56
- end
57
- end