Class: GroupDocs::Signature::Contact
- Inherits:
-
Api::Entity
- Object
- Api::Entity
- GroupDocs::Signature::Contact
- Defined in:
- lib/groupdocs/signature/contact.rb
Constant Summary collapse
- INTEGRATION_PROVIDERS =
{ :local => 0, :groupdocs => 1, :google => 2, }
Instance Attribute Summary collapse
- #email ⇒ Object
- #firstName ⇒ Object
- #id ⇒ Object
- #lastName ⇒ Object
- #nickname ⇒ Object
- #provider ⇒ Object
Class Method Summary collapse
-
.add_integration!(integration, access = {}) ⇒ Object
Adds contact integration.
-
.get!(options = {}, access = {}) ⇒ Array<GroupDocs::Signature::Contact>
Returns a list of all contacts.
-
.import!(contacts, access = {}) ⇒ Object
Imports array of contacts.
Instance Method Summary collapse
-
#add!(access = {}) ⇒ Object
Adds contact.
-
#delete!(access = {}) ⇒ Object
Deletes contact.
-
#update!(access = {}) ⇒ Object
Updates contact.
Methods inherited from Api::Entity
#initialize, #inspect, #to_hash
Methods included from Api::Helpers::Accessor
Constructor Details
This class inherits a constructor from GroupDocs::Api::Entity
Instance Attribute Details
#email ⇒ Object
116 117 118 |
# File 'lib/groupdocs/signature/contact.rb', line 116 def email @email end |
#firstName ⇒ Object
110 111 112 |
# File 'lib/groupdocs/signature/contact.rb', line 110 def firstName @firstName end |
#id ⇒ Object
108 109 110 |
# File 'lib/groupdocs/signature/contact.rb', line 108 def id @id end |
#lastName ⇒ Object
112 113 114 |
# File 'lib/groupdocs/signature/contact.rb', line 112 def lastName @lastName end |
#nickname ⇒ Object
114 115 116 |
# File 'lib/groupdocs/signature/contact.rb', line 114 def nickname @nickname end |
#provider ⇒ Object
118 119 120 |
# File 'lib/groupdocs/signature/contact.rb', line 118 def provider @provider end |
Class Method Details
.add_integration!(integration, access = {}) ⇒ Object
Adds contact integration.
91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/groupdocs/signature/contact.rb', line 91 def self.add_integration!(integration, access = {}) payload = { :provider => INTEGRATION_PROVIDERS[integration[:provider]], :refreshToken => integration[:refresh_token], :accessToken => integration[:access_token], :accessTokenExpiration => integration[:access_token_expiration], } Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = '/signature/{{client_id}}/integration' request[:request_body] = payload end.execute! end |
.get!(options = {}, access = {}) ⇒ Array<GroupDocs::Signature::Contact>
Returns a list of all contacts.
24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/groupdocs/signature/contact.rb', line 24 def self.get!( = {}, access = {}) api = Api::Request.new do |request| request[:access] = access request[:method] = :GET request[:path] = '/signature/{{client_id}}/contacts' end api.add_params() json = api.execute! json[:contacts].map do |contact| new(contact) end end |
.import!(contacts, access = {}) ⇒ Object
Imports array of contacts.
57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/groupdocs/signature/contact.rb', line 57 def self.import!(contacts, access = {}) contacts.is_a?(Array) or raise ArgumentError, "Contacts should be array, received: #{contacts.inspect}" contacts.each do |contact| contact.is_a?(GroupDocs::Signature::Contact) or raise ArgumentError, "Contact should be GroupDocs::Signature::Contact, received: #{contact.inspect}" end Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = '/signature/{{client_id}}/contacts' request[:request_body] = contacts.map { |contact| contact.to_hash } end.execute! end |
Instance Method Details
#add!(access = {}) ⇒ Object
Adds contact.
138 139 140 141 142 143 144 145 146 147 |
# File 'lib/groupdocs/signature/contact.rb', line 138 def add!(access = {}) json = Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = '/signature/{{client_id}}/contact' request[:request_body] = to_hash end.execute! self.id = json[:contact][:id] end |
#delete!(access = {}) ⇒ Object
Deletes contact.
172 173 174 175 176 177 178 |
# File 'lib/groupdocs/signature/contact.rb', line 172 def delete!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :DELETE request[:path] = "/signature/{{client_id}}/contacts/#{id}" end.execute! end |
#update!(access = {}) ⇒ Object
Updates contact.
156 157 158 159 160 161 162 163 |
# File 'lib/groupdocs/signature/contact.rb', line 156 def update!(access = {}) Api::Request.new do |request| request[:access] = access request[:method] = :POST request[:path] = "/signature/{{client_id}}/contacts/#{id}" request[:request_body] = to_hash end.execute! end |