echochamber 1.0.1

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.
Files changed (122) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +4 -0
  3. data/.rspec +2 -0
  4. data/Gemfile +3 -0
  5. data/Gemfile.lock +79 -0
  6. data/LICENSE +21 -0
  7. data/LICENSE.txt +22 -0
  8. data/README.md +87 -0
  9. data/Rakefile +12 -0
  10. data/doc/Echochamber.html +131 -0
  11. data/doc/Echochamber/Agreement.html +529 -0
  12. data/doc/Echochamber/Agreement/UrlFileInfo.html +263 -0
  13. data/doc/Echochamber/Client.html +4161 -0
  14. data/doc/Echochamber/CounterSignerInfo.html +265 -0
  15. data/doc/Echochamber/Credentials.html +330 -0
  16. data/doc/Echochamber/Credentials/CredentialsError.html +123 -0
  17. data/doc/Echochamber/Fileinfo.html +303 -0
  18. data/doc/Echochamber/InvalidParameterError.html +123 -0
  19. data/doc/Echochamber/ParameterError.html +123 -0
  20. data/doc/Echochamber/PhoneInfo.html +279 -0
  21. data/doc/Echochamber/Recipient.html +309 -0
  22. data/doc/Echochamber/RecipientSecurityOption.html +294 -0
  23. data/doc/Echochamber/Reminder.html +277 -0
  24. data/doc/Echochamber/Request.html +4167 -0
  25. data/doc/Echochamber/Request/Failure.html +123 -0
  26. data/doc/Echochamber/RequiredParameterError.html +123 -0
  27. data/doc/Echochamber/UrlFileInfo.html +295 -0
  28. data/doc/Echochamber/User.html +420 -0
  29. data/doc/Echochamber/Validatable.html +355 -0
  30. data/doc/Echochamber/Validator.html +180 -0
  31. data/doc/Echochamber/Widget.html +654 -0
  32. data/doc/Echochamber/WidgetCompletionInfo.html +309 -0
  33. data/doc/Echochamber/WidgetPersonalization.html +326 -0
  34. data/doc/Echochamber/WidgetSecurityOption.html +359 -0
  35. data/doc/Echochamber/WidgetSignerSecurityOption.html +296 -0
  36. data/doc/Echochamber/WidgetStatus.html +314 -0
  37. data/doc/Echochamber/WidgetVaultingInfo.html +265 -0
  38. data/doc/_index.html +338 -0
  39. data/doc/class_list.html +54 -0
  40. data/doc/css/common.css +1 -0
  41. data/doc/css/full_list.css +57 -0
  42. data/doc/css/style.css +339 -0
  43. data/doc/file.README.html +157 -0
  44. data/doc/file_list.html +56 -0
  45. data/doc/frames.html +26 -0
  46. data/doc/index.html +157 -0
  47. data/doc/js/app.js +219 -0
  48. data/doc/js/full_list.js +178 -0
  49. data/doc/js/jquery.js +4 -0
  50. data/doc/method_list.html +581 -0
  51. data/doc/top-level-namespace.html +112 -0
  52. data/echochamber.gemspec +35 -0
  53. data/features/support/env.rb +8 -0
  54. data/fixtures/agreement.pdf +0 -0
  55. data/fixtures/vcr_cassettes/agreement_combined_pdf.yml +1465 -0
  56. data/fixtures/vcr_cassettes/agreement_document_file.yml +1465 -0
  57. data/fixtures/vcr_cassettes/agreement_documents.yml +42 -0
  58. data/fixtures/vcr_cassettes/agreement_form_data.yml +44 -0
  59. data/fixtures/vcr_cassettes/agreement_info.yml +50 -0
  60. data/fixtures/vcr_cassettes/agreement_signing_urls.yml +42 -0
  61. data/fixtures/vcr_cassettes/audit_trail_pdf.yml +1643 -0
  62. data/fixtures/vcr_cassettes/cancel_agreement.yml +46 -0
  63. data/fixtures/vcr_cassettes/create_agreement.yml +50 -0
  64. data/fixtures/vcr_cassettes/create_reminder.yml +47 -0
  65. data/fixtures/vcr_cassettes/create_transient_document.yml +716 -0
  66. data/fixtures/vcr_cassettes/create_user.yml +50 -0
  67. data/fixtures/vcr_cassettes/create_widget.yml +48 -0
  68. data/fixtures/vcr_cassettes/get_agreements.yml +46 -0
  69. data/fixtures/vcr_cassettes/get_library_document.yml +45 -0
  70. data/fixtures/vcr_cassettes/get_library_document_data.yml +1191 -0
  71. data/fixtures/vcr_cassettes/get_library_document_file.yml +42 -0
  72. data/fixtures/vcr_cassettes/get_library_documents.yml +47 -0
  73. data/fixtures/vcr_cassettes/get_token.yml +44 -0
  74. data/fixtures/vcr_cassettes/get_user.yml +46 -0
  75. data/fixtures/vcr_cassettes/get_users.yml +43 -0
  76. data/fixtures/vcr_cassettes/get_widget.yml +49 -0
  77. data/fixtures/vcr_cassettes/get_widget_document_file.yml +2682 -0
  78. data/fixtures/vcr_cassettes/get_widget_documents.yml +44 -0
  79. data/fixtures/vcr_cassettes/get_widgets.yml +50 -0
  80. data/fixtures/vcr_cassettes/library_combined_document.yml +2197 -0
  81. data/fixtures/vcr_cassettes/library_document_audit_trail.yml +1570 -0
  82. data/fixtures/vcr_cassettes/personalize_widget.yml +47 -0
  83. data/fixtures/vcr_cassettes/update_widget_status.yml +46 -0
  84. data/lib/echochamber.rb +10 -0
  85. data/lib/echochamber/agreement.rb +32 -0
  86. data/lib/echochamber/agreement/client.rb +118 -0
  87. data/lib/echochamber/agreement/fileinfo.rb +20 -0
  88. data/lib/echochamber/agreement/phone_info.rb +19 -0
  89. data/lib/echochamber/agreement/recipient.rb +23 -0
  90. data/lib/echochamber/agreement/recipient_security_option.rb +20 -0
  91. data/lib/echochamber/agreement/request.rb +142 -0
  92. data/lib/echochamber/agreement/url_file_info.rb +18 -0
  93. data/lib/echochamber/client.rb +82 -0
  94. data/lib/echochamber/credentials.rb +33 -0
  95. data/lib/echochamber/library_documents/client.rb +83 -0
  96. data/lib/echochamber/library_documents/request.rb +78 -0
  97. data/lib/echochamber/reminder.rb +17 -0
  98. data/lib/echochamber/request.rb +141 -0
  99. data/lib/echochamber/user.rb +29 -0
  100. data/lib/echochamber/validatable.rb +54 -0
  101. data/lib/echochamber/version.rb +3 -0
  102. data/lib/echochamber/widget.rb +42 -0
  103. data/lib/echochamber/widget/client.rb +127 -0
  104. data/lib/echochamber/widget/counter_signer_info.rb +19 -0
  105. data/lib/echochamber/widget/request.rb +135 -0
  106. data/lib/echochamber/widget/widget_completion_info.rb +19 -0
  107. data/lib/echochamber/widget/widget_personalization.rb +21 -0
  108. data/lib/echochamber/widget/widget_security_option.rb +22 -0
  109. data/lib/echochamber/widget/widget_signer_security_option.rb +18 -0
  110. data/lib/echochamber/widget/widget_status.rb +20 -0
  111. data/lib/echochamber/widget/widget_vaulting_info.rb +16 -0
  112. data/spec/lib/agreement/client_spec.rb +157 -0
  113. data/spec/lib/client_spec.rb +78 -0
  114. data/spec/lib/library_documents/client_spec.rb +71 -0
  115. data/spec/lib/request_spec.rb +18 -0
  116. data/spec/lib/shared_client.rb +22 -0
  117. data/spec/lib/user_spec.rb +6 -0
  118. data/spec/lib/validatable_spec.rb +110 -0
  119. data/spec/lib/version_spec.rb +7 -0
  120. data/spec/lib/widget/client_spec.rb +154 -0
  121. data/spec/spec_helper.rb +21 -0
  122. metadata +344 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 5cf659753a718f8e0d1592fa4ea2280532c0c797
4
+ data.tar.gz: 39083288b4fba685d320218d4cde7fc7ffadaa0b
5
+ SHA512:
6
+ metadata.gz: a44b50187653066e2a57fe185c6b320416e5a6486eeaa33bd1e18e739056681513a02aebdbc0f38811691c0ec5c80761906f969fcbfb65c82ffee94f1a8d5c34
7
+ data.tar.gz: c72c1d6103bd3e1e8fbe23c5476dfa6673611801f074b9e85aeeae3a43f70d310f49a4d4416396e4112c24e1f1f8a01e02f853e7687d853c92ee3e021a3642e2
@@ -0,0 +1,4 @@
1
+ *swp
2
+ .yardoc
3
+ .yardoc/*
4
+ .DS_Store
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format d
2
+ --color
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
@@ -0,0 +1,79 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ echochamber (1.0.0)
5
+ faraday
6
+ json
7
+ rest-client
8
+
9
+ GEM
10
+ remote: https://rubygems.org/
11
+ specs:
12
+ activesupport (4.1.0)
13
+ i18n (~> 0.6, >= 0.6.9)
14
+ json (~> 1.7, >= 1.7.7)
15
+ minitest (~> 5.1)
16
+ thread_safe (~> 0.1)
17
+ tzinfo (~> 1.1)
18
+ addressable (2.3.6)
19
+ coderay (1.1.0)
20
+ crack (0.4.2)
21
+ safe_yaml (~> 1.0.0)
22
+ diff-lcs (1.2.5)
23
+ factory_girl (4.4.0)
24
+ activesupport (>= 3.0.0)
25
+ faraday (0.9.0)
26
+ multipart-post (>= 1.2, < 3)
27
+ highline (1.6.21)
28
+ hitch (1.0.2)
29
+ highline (>= 1.6.2)
30
+ i18n (0.6.11)
31
+ json (1.8.1)
32
+ method_source (0.8.2)
33
+ mime-types (1.25.1)
34
+ minitest (5.3.3)
35
+ multipart-post (2.0.0)
36
+ pry (0.10.0)
37
+ coderay (~> 1.1.0)
38
+ method_source (~> 0.8.1)
39
+ slop (~> 3.4)
40
+ rake (10.3.2)
41
+ rest-client (1.6.7)
42
+ mime-types (>= 1.16)
43
+ rspec (3.0.0)
44
+ rspec-core (~> 3.0.0)
45
+ rspec-expectations (~> 3.0.0)
46
+ rspec-mocks (~> 3.0.0)
47
+ rspec-core (3.0.3)
48
+ rspec-support (~> 3.0.0)
49
+ rspec-expectations (3.0.3)
50
+ diff-lcs (>= 1.2.0, < 2.0)
51
+ rspec-support (~> 3.0.0)
52
+ rspec-mocks (3.0.3)
53
+ rspec-support (~> 3.0.0)
54
+ rspec-support (3.0.3)
55
+ safe_yaml (1.0.1)
56
+ slop (3.6.0)
57
+ thread_safe (0.3.3)
58
+ tzinfo (1.1.0)
59
+ thread_safe (~> 0.1)
60
+ vcr (2.8.0)
61
+ webmock (1.17.4)
62
+ addressable (>= 2.2.7)
63
+ crack (>= 0.3.2)
64
+ yard (0.8.7.4)
65
+
66
+ PLATFORMS
67
+ ruby
68
+
69
+ DEPENDENCIES
70
+ bundler (~> 1.6)
71
+ echochamber!
72
+ factory_girl
73
+ hitch
74
+ pry
75
+ rake
76
+ rspec
77
+ vcr
78
+ webmock
79
+ yard
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2014 Cath Thomas
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 C. Thomas
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,87 @@
1
+ echochamber
2
+ ===========
3
+
4
+ Ruby Gem to consume Adobe's EchoSign e-signature service - REST service v2
5
+
6
+
7
+ ## Installation
8
+
9
+ ```
10
+ gem install echochamber
11
+ ```
12
+
13
+ ## Documentation
14
+
15
+ The bulk of the API is on the [Echochamber::Client class](http://rdoc.info/github/kayagoban/echochamber/frames/Echochamber/Client)
16
+
17
+ You can read Echochamber's full [API Documentation](http://rdoc.info/github/kayagoban/echochamber/frames)
18
+
19
+ It also wouldn't hurt to read Adobe's [Echosign API documentation](https://secure.echosign.com/public/docs/restapi/v2)
20
+
21
+ ## Usage
22
+
23
+ #### Initializing a client
24
+
25
+ ```
26
+ require 'echochamber'
27
+
28
+ credentials = Echochamber::Credentials.new(app_id, app_secret, api_key, email, password)
29
+
30
+ client = Echochamber::Client.new(credentials)
31
+ ```
32
+
33
+ #### Setting up a new agreement from a URL
34
+
35
+ ```
36
+ url_file_params = {
37
+ url: 'http://somedomain.com/contract.pdf',
38
+ mimeType: 'application/pdf',
39
+ name: 'contract.pdf'
40
+ }
41
+
42
+ file_info_params = {
43
+ documentURL: Echochamber::UrlFileInfo.new(url_file_params)
44
+ }
45
+
46
+ recipient_params = {
47
+ role: 'SIGNER', email: 'superguy@whatsit.com'
48
+ }
49
+
50
+ agreement_info_params = {
51
+ fileInfos: [ Echochamber::Fileinfo.new(file_info_params) ],
52
+ recipients: [ Echochamber::Recipient.new(recipient_params)],
53
+ signatureFlow: "SENDER_SIGNS_LAST",
54
+ signatureType: "ESIGN",
55
+ name: "Rumplestiltskin Contract"
56
+ }
57
+
58
+ agreement = Echochamber::Agreement.new(sender_id, sender_email, agreement_info)
59
+
60
+ agreement_id = client.create_agreement(agreement)
61
+ ```
62
+
63
+ #### Cancelling a pending agreement
64
+ ```
65
+ result = client.cancel_agreement(agreement_id, true, 'Because...blah blah.')
66
+ ```
67
+
68
+ #### Creating a user
69
+ ```
70
+ user_params = {
71
+ firstName: 'JohnQ',
72
+ lastName: 'Public',
73
+ email: 'publius@comcast.net',
74
+ password: 'kN12oK9p!3',
75
+ title: 'Hedge Wizard'
76
+ }
77
+
78
+ user = Echochamber::User.new(user_params)
79
+
80
+ user_id = client.create_user(user)
81
+ ```
82
+
83
+ #### Sending a transient document for later referral
84
+ ```
85
+ tran_doc_id = client.create_transient_document(file_name, mime_type, File.new('myfile.pdf'))
86
+ ```
87
+
@@ -0,0 +1,12 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ require 'rspec/core/rake_task'
4
+ require 'bundler/gem_tasks'
5
+
6
+ # Default directory to look in is `/specs`
7
+ # Run with `rake spec`
8
+ RSpec::Core::RakeTask.new(:spec) do |task|
9
+ task.rspec_opts = ['--color', '--format', 'documentation', '--fail-fast']
10
+ end
11
+
12
+ task :default => :spec
@@ -0,0 +1,131 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Module: Echochamber
8
+
9
+ &mdash; Documentation by YARD 0.8.7.4
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ hasFrames = window.top.frames.main ? true : false;
19
+ relpath = '';
20
+ framesUrl = "frames.html#!Echochamber.html";
21
+ </script>
22
+
23
+
24
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
25
+
26
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
27
+
28
+
29
+ </head>
30
+ <body>
31
+ <div id="header">
32
+ <div id="menu">
33
+
34
+ <a href="_index.html">Index (E)</a> &raquo;
35
+
36
+
37
+ <span class="title">Echochamber</span>
38
+
39
+
40
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
+ </div>
42
+
43
+ <div id="search">
44
+
45
+ <a class="full_list_link" id="class_list_link"
46
+ href="class_list.html">
47
+ Class List
48
+ </a>
49
+
50
+ <a class="full_list_link" id="method_list_link"
51
+ href="method_list.html">
52
+ Method List
53
+ </a>
54
+
55
+ <a class="full_list_link" id="file_list_link"
56
+ href="file_list.html">
57
+ File List
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
63
+
64
+ <iframe id="search_frame"></iframe>
65
+
66
+ <div id="content"><h1>Module: Echochamber
67
+
68
+
69
+
70
+ </h1>
71
+
72
+ <dl class="box">
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+ <dt class="r1 last">Defined in:</dt>
82
+ <dd class="r1 last">lib/echochamber/user.rb<span class="defines">,<br />
83
+ lib/echochamber/client.rb,<br /> lib/echochamber/widget.rb,<br /> lib/echochamber/version.rb,<br /> lib/echochamber/reminder.rb,<br /> lib/echochamber/agreement.rb,<br /> lib/echochamber/validatable.rb,<br /> lib/echochamber/credentials.rb,<br /> lib/echochamber/widget/client.rb,<br /> lib/echochamber/agreement/client.rb,<br /> lib/echochamber/agreement/fileinfo.rb,<br /> lib/echochamber/agreement/recipient.rb,<br /> lib/echochamber/agreement/phone_info.rb,<br /> lib/echochamber/widget/widget_status.rb,<br /> lib/echochamber/agreement/url_file_info.rb,<br /> lib/echochamber/library_documents/client.rb,<br /> lib/echochamber/widget/counter_signer_info.rb,<br /> lib/echochamber/widget/widget_vaulting_info.rb,<br /> lib/echochamber/widget/widget_security_option.rb,<br /> lib/echochamber/widget/widget_personalization.rb,<br /> lib/echochamber/widget/widget_completion_info.rb,<br /> lib/echochamber/agreement/recipient_security_option.rb,<br /> lib/echochamber/widget/widget_signer_security_option.rb</span>
84
+ </dd>
85
+
86
+ </dl>
87
+ <div class="clear"></div>
88
+
89
+ <h2>Defined Under Namespace</h2>
90
+ <p class="children">
91
+
92
+
93
+ <strong class="modules">Modules:</strong> <span class='object_link'><a href="Echochamber/Request.html" title="Echochamber::Request (module)">Request</a></span>, <span class='object_link'><a href="Echochamber/Validatable.html" title="Echochamber::Validatable (module)">Validatable</a></span>
94
+
95
+
96
+
97
+ <strong class="classes">Classes:</strong> <span class='object_link'><a href="Echochamber/Agreement.html" title="Echochamber::Agreement (class)">Agreement</a></span>, <span class='object_link'><a href="Echochamber/Client.html" title="Echochamber::Client (class)">Client</a></span>, <span class='object_link'><a href="Echochamber/CounterSignerInfo.html" title="Echochamber::CounterSignerInfo (class)">CounterSignerInfo</a></span>, <span class='object_link'><a href="Echochamber/Credentials.html" title="Echochamber::Credentials (class)">Credentials</a></span>, <span class='object_link'><a href="Echochamber/Fileinfo.html" title="Echochamber::Fileinfo (class)">Fileinfo</a></span>, <span class='object_link'><a href="Echochamber/ParameterError.html" title="Echochamber::ParameterError (class)">ParameterError</a></span>, <span class='object_link'><a href="Echochamber/PhoneInfo.html" title="Echochamber::PhoneInfo (class)">PhoneInfo</a></span>, <span class='object_link'><a href="Echochamber/Recipient.html" title="Echochamber::Recipient (class)">Recipient</a></span>, <span class='object_link'><a href="Echochamber/RecipientSecurityOption.html" title="Echochamber::RecipientSecurityOption (class)">RecipientSecurityOption</a></span>, <span class='object_link'><a href="Echochamber/Reminder.html" title="Echochamber::Reminder (class)">Reminder</a></span>, <span class='object_link'><a href="Echochamber/RequiredParameterError.html" title="Echochamber::RequiredParameterError (class)">RequiredParameterError</a></span>, <span class='object_link'><a href="Echochamber/UrlFileInfo.html" title="Echochamber::UrlFileInfo (class)">UrlFileInfo</a></span>, <span class='object_link'><a href="Echochamber/User.html" title="Echochamber::User (class)">User</a></span>, <span class='object_link'><a href="Echochamber/Widget.html" title="Echochamber::Widget (class)">Widget</a></span>, <span class='object_link'><a href="Echochamber/WidgetCompletionInfo.html" title="Echochamber::WidgetCompletionInfo (class)">WidgetCompletionInfo</a></span>, <span class='object_link'><a href="Echochamber/WidgetPersonalization.html" title="Echochamber::WidgetPersonalization (class)">WidgetPersonalization</a></span>, <span class='object_link'><a href="Echochamber/WidgetSecurityOption.html" title="Echochamber::WidgetSecurityOption (class)">WidgetSecurityOption</a></span>, <span class='object_link'><a href="Echochamber/WidgetSignerSecurityOption.html" title="Echochamber::WidgetSignerSecurityOption (class)">WidgetSignerSecurityOption</a></span>, <span class='object_link'><a href="Echochamber/WidgetStatus.html" title="Echochamber::WidgetStatus (class)">WidgetStatus</a></span>, <span class='object_link'><a href="Echochamber/WidgetVaultingInfo.html" title="Echochamber::WidgetVaultingInfo (class)">WidgetVaultingInfo</a></span>
98
+
99
+
100
+ </p>
101
+
102
+ <h2>Constant Summary</h2>
103
+
104
+ <dl class="constants">
105
+
106
+ <dt id="VERSION-constant" class="">VERSION =
107
+
108
+ </dt>
109
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>1.0.0</span><span class='tstring_end'>&quot;</span></span></pre></dd>
110
+
111
+ </dl>
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+ </div>
123
+
124
+ <div id="footer">
125
+ Generated on Thu Aug 21 05:14:33 2014 by
126
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
127
+ 0.8.7.4 (ruby-2.0.0).
128
+ </div>
129
+
130
+ </body>
131
+ </html>
@@ -0,0 +1,529 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>
7
+ Class: Echochamber::Agreement
8
+
9
+ &mdash; Documentation by YARD 0.8.7.4
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
14
+
15
+ <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
16
+
17
+ <script type="text/javascript" charset="utf-8">
18
+ hasFrames = window.top.frames.main ? true : false;
19
+ relpath = '../';
20
+ framesUrl = "../frames.html#!Echochamber/Agreement.html";
21
+ </script>
22
+
23
+
24
+ <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
25
+
26
+ <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
27
+
28
+
29
+ </head>
30
+ <body>
31
+ <div id="header">
32
+ <div id="menu">
33
+
34
+ <a href="../_index.html">Index (A)</a> &raquo;
35
+ <span class='title'><span class='object_link'><a href="../Echochamber.html" title="Echochamber (module)">Echochamber</a></span></span>
36
+ &raquo;
37
+ <span class="title">Agreement</span>
38
+
39
+
40
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
+ </div>
42
+
43
+ <div id="search">
44
+
45
+ <a class="full_list_link" id="class_list_link"
46
+ href="../class_list.html">
47
+ Class List
48
+ </a>
49
+
50
+ <a class="full_list_link" id="method_list_link"
51
+ href="../method_list.html">
52
+ Method List
53
+ </a>
54
+
55
+ <a class="full_list_link" id="file_list_link"
56
+ href="../file_list.html">
57
+ File List
58
+ </a>
59
+
60
+ </div>
61
+ <div class="clear"></div>
62
+ </div>
63
+
64
+ <iframe id="search_frame"></iframe>
65
+
66
+ <div id="content"><h1>Class: Echochamber::Agreement
67
+
68
+
69
+
70
+ </h1>
71
+
72
+ <dl class="box">
73
+
74
+ <dt class="r1">Inherits:</dt>
75
+ <dd class="r1">
76
+ <span class="inheritName">Hash</span>
77
+
78
+ <ul class="fullTree">
79
+ <li>Object</li>
80
+
81
+ <li class="next">Hash</li>
82
+
83
+ <li class="next">Echochamber::Agreement</li>
84
+
85
+ </ul>
86
+ <a href="#" class="inheritanceTree">show all</a>
87
+
88
+ </dd>
89
+
90
+
91
+
92
+
93
+
94
+
95
+ <dt class="r2">Includes:</dt>
96
+ <dd class="r2"><span class='object_link'><a href="Validatable.html" title="Echochamber::Validatable (module)">Validatable</a></span></dd>
97
+
98
+
99
+
100
+
101
+
102
+ <dt class="r1 last">Defined in:</dt>
103
+ <dd class="r1 last">lib/echochamber/agreement.rb</dd>
104
+
105
+ </dl>
106
+ <div class="clear"></div>
107
+
108
+
109
+
110
+
111
+
112
+ <h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
113
+ <ul class="summary">
114
+
115
+ <li class="public ">
116
+ <span class="summary_signature">
117
+
118
+ <a href="#user_email-instance_method" title="#user_email (instance method)">- (Object) <strong>user_email</strong> </a>
119
+
120
+
121
+
122
+ </span>
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+ <span class="summary_desc"><div class='inline'>
136
+ <p>Returns the value of attribute user_email.</p>
137
+ </div></span>
138
+
139
+ </li>
140
+
141
+
142
+ <li class="public ">
143
+ <span class="summary_signature">
144
+
145
+ <a href="#user_id-instance_method" title="#user_id (instance method)">- (Object) <strong>user_id</strong> </a>
146
+
147
+
148
+
149
+ </span>
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+ <span class="summary_desc"><div class='inline'>
163
+ <p>Returns the value of attribute user_id.</p>
164
+ </div></span>
165
+
166
+ </li>
167
+
168
+
169
+ </ul>
170
+
171
+
172
+
173
+
174
+
175
+ <h2>
176
+ Instance Method Summary
177
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
178
+ </h2>
179
+
180
+ <ul class="summary">
181
+
182
+ <li class="public ">
183
+ <span class="summary_signature">
184
+
185
+ <a href="#initialize-instance_method" title="#initialize (instance method)">- (Echochamber::Agreement) <strong>initialize</strong>(user_id = nil, user_email = nil, params) </a>
186
+
187
+
188
+
189
+ </span>
190
+
191
+
192
+ <span class="note title constructor">constructor</span>
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+ <span class="summary_desc"><div class='inline'>
202
+ <p>Creates an agreement object for submission.</p>
203
+ </div></span>
204
+
205
+ </li>
206
+
207
+
208
+ </ul>
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+ <h3 class="inherited">Methods included from <span class='object_link'><a href="Validatable.html" title="Echochamber::Validatable (module)">Validatable</a></span></h3>
221
+ <p class="inherited"><span class='object_link'><a href="Validatable.html#require_exactly_one-instance_method" title="Echochamber::Validatable#require_exactly_one (method)">#require_exactly_one</a></span>, <span class='object_link'><a href="Validatable.html#require_keys-instance_method" title="Echochamber::Validatable#require_keys (method)">#require_keys</a></span>, <span class='object_link'><a href="Validatable.html#validate_field-instance_method" title="Echochamber::Validatable#validate_field (method)">#validate_field</a></span></p>
222
+
223
+ <div id="constructor_details" class="method_details_list">
224
+ <h2>Constructor Details</h2>
225
+
226
+ <div class="method_details first">
227
+ <h3 class="signature first" id="initialize-instance_method">
228
+
229
+ - (<tt><span class='object_link'><a href="" title="Echochamber::Agreement (class)">Echochamber::Agreement</a></span></tt>) <strong>initialize</strong>(user_id = nil, user_email = nil, params)
230
+
231
+
232
+
233
+
234
+
235
+ </h3><div class="docstring">
236
+ <div class="discussion">
237
+
238
+ <p>Creates an agreement object for submission</p>
239
+
240
+
241
+ </div>
242
+ </div>
243
+ <div class="tags">
244
+ <p class="tag_title">Parameters:</p>
245
+ <ul class="param">
246
+
247
+ <li>
248
+
249
+ <span class='name'>user_id</span>
250
+
251
+
252
+ <span class='type'>(<tt>String</tt>)</span>
253
+
254
+
255
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
256
+
257
+
258
+ &mdash;
259
+ <div class='inline'>
260
+ <p>ID of the user whom this agreement is made for</p>
261
+ </div>
262
+
263
+ </li>
264
+
265
+ <li>
266
+
267
+ <span class='name'>user_email</span>
268
+
269
+
270
+ <span class='type'>(<tt>String</tt>)</span>
271
+
272
+
273
+ <em class="default">(defaults to: <tt>nil</tt>)</em>
274
+
275
+
276
+ &mdash;
277
+ <div class='inline'>
278
+ <p>Email of the user whom this agreement is made for</p>
279
+ </div>
280
+
281
+ </li>
282
+
283
+ <li>
284
+
285
+ <span class='name'>params</span>
286
+
287
+
288
+ <span class='type'>(<tt>Hash</tt>)</span>
289
+
290
+
291
+
292
+ &mdash;
293
+ <div class='inline'>
294
+ <p>SYMBOL-referenced Hash containing:</p>
295
+ </div>
296
+
297
+ </li>
298
+
299
+ </ul>
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+ <p class="tag_title">Options Hash (<tt>params</tt>):</p>
309
+ <ul class="option">
310
+
311
+ <li>
312
+ <span class="name">:fileInfos</span>
313
+ <span class="type">(<tt>Array</tt>)</span>
314
+ <span class="default">
315
+
316
+ </span>
317
+
318
+ &mdash; <div class='inline'>
319
+ <p>A list of one or more files (or references to files) that will be sent out
320
+ for signature. If more than one file is provided, they will be combined
321
+ into one PDF before being sent out. Note: Only one of the four parameters
322
+ in every FileInfo object must be specified. Populate the array with
323
+ instances of <span class='object_link'><a href="Fileinfo.html" title="Echochamber::Fileinfo (class)">Echochamber::Fileinfo</a></span> (REQUIRED)</p>
324
+ </div>
325
+
326
+ </li>
327
+
328
+ <li>
329
+ <span class="name">:recipients</span>
330
+ <span class="type">(<tt>Array</tt>)</span>
331
+ <span class="default">
332
+
333
+ </span>
334
+
335
+ &mdash; <div class='inline'>
336
+ <p>A list of one or more recipients. For regular (non-MegaSign) documents,
337
+ there is no limit on the number of electronic signatures in a single
338
+ document. Written signatures are limited to four per document. This limit
339
+ includes the sender if the sender&#39;s signature is also required.
340
+ Populate the array with instances of <span class='object_link'><a href="Recipient.html" title="Echochamber::Recipient (class)">Echochamber::Recipient</a></span> (REQUIRED)</p>
341
+ </div>
342
+
343
+ </li>
344
+
345
+ <li>
346
+ <span class="name">:signatureFlow</span>
347
+ <span class="type">(<tt>String</tt>)</span>
348
+ <span class="default">
349
+
350
+ </span>
351
+
352
+ &mdash; <div class='inline'>
353
+ <p>[&#39;SENDER_SIGNATURE_NOT_REQUIRED&#39; or &#39;SENDER_SIGNS_LAST&#39; or
354
+ &#39;SENDER_SIGNS_FIRST&#39; or &#39;SEQUENTIAL&#39; or
355
+ &#39;PARALLEL&#39;]: Selects the workflow you would like to use - whether
356
+ the sender needs to sign before the recipient, after the recipient, or not
357
+ at all. The possible values for this variable are
358
+ SENDER_SIGNATURE_NOT_REQUIRED, SENDER_SIGNS_LAST, SENDER_SIGNS_FIRST,
359
+ SEQUENTIAL or PARALLEL. (REQUIRED)</p>
360
+ </div>
361
+
362
+ </li>
363
+
364
+ <li>
365
+ <span class="name">:signatureType</span>
366
+ <span class="type">(<tt>String</tt>)</span>
367
+ <span class="default">
368
+
369
+ </span>
370
+
371
+ &mdash; <div class='inline'>
372
+ <p>[&#39;ESIGN&#39; or &#39;WRITTEN&#39;]: Specifies the type of signature you
373
+ would like to request - written or eSignature. The possible values are
374
+ ESIGN or WRITTEN (REQUIRED)</p>
375
+ </div>
376
+
377
+ </li>
378
+
379
+ <li>
380
+ <span class="name">:name</span>
381
+ <span class="type">(<tt>String</tt>)</span>
382
+ <span class="default">
383
+
384
+ </span>
385
+
386
+ &mdash; <div class='inline'>
387
+ <p>The name of the agreement that will be used to identify it, in emails and
388
+ on the website. (REQUIRED)</p>
389
+ </div>
390
+
391
+ </li>
392
+
393
+ </ul>
394
+
395
+
396
+
397
+ </div><table class="source_code">
398
+ <tr>
399
+ <td>
400
+ <pre class="lines">
401
+
402
+
403
+ 23
404
+ 24
405
+ 25
406
+ 26
407
+ 27
408
+ 28
409
+ 29</pre>
410
+ </td>
411
+ <td>
412
+ <pre class="code"><span class="info file"># File 'lib/echochamber/agreement.rb', line 23</span>
413
+
414
+ <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='id identifier rubyid_user_id'>user_id</span><span class='op'>=</span><span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_user_email'>user_email</span><span class='op'>=</span><span class='kw'>nil</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
415
+ <span class='ivar'>@user_id</span> <span class='op'>=</span> <span class='id identifier rubyid_user_id'>user_id</span>
416
+ <span class='ivar'>@user_email</span> <span class='op'>=</span> <span class='id identifier rubyid_user_email'>user_email</span>
417
+ <span class='comment'>#TODO (cthomas) barf if user_id or user_email are blank
418
+ </span> <span class='id identifier rubyid_require_keys'>require_keys</span><span class='lparen'>(</span><span class='lbracket'>[</span><span class='symbol'>:signatureType</span><span class='comma'>,</span> <span class='symbol'>:recipients</span><span class='comma'>,</span> <span class='symbol'>:signatureFlow</span><span class='comma'>,</span> <span class='symbol'>:fileInfos</span><span class='comma'>,</span> <span class='symbol'>:name</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_params'>params</span><span class='rparen'>)</span>
419
+ <span class='id identifier rubyid_merge!'>merge!</span><span class='lparen'>(</span><span class='lbrace'>{</span> <span class='label'>documentCreationInfo:</span> <span class='id identifier rubyid_params'>params</span> <span class='rbrace'>}</span><span class='rparen'>)</span>
420
+ <span class='kw'>end</span></pre>
421
+ </td>
422
+ </tr>
423
+ </table>
424
+ </div>
425
+
426
+ </div>
427
+
428
+ <div id="instance_attr_details" class="attr_details">
429
+ <h2>Instance Attribute Details</h2>
430
+
431
+
432
+ <span id="user_email=-instance_method"></span>
433
+ <div class="method_details first">
434
+ <h3 class="signature first" id="user_email-instance_method">
435
+
436
+ - (<tt>Object</tt>) <strong>user_email</strong>
437
+
438
+
439
+
440
+
441
+
442
+ </h3><div class="docstring">
443
+ <div class="discussion">
444
+
445
+ <p>Returns the value of attribute user_email</p>
446
+
447
+
448
+ </div>
449
+ </div>
450
+ <div class="tags">
451
+
452
+
453
+ </div><table class="source_code">
454
+ <tr>
455
+ <td>
456
+ <pre class="lines">
457
+
458
+
459
+ 10
460
+ 11
461
+ 12</pre>
462
+ </td>
463
+ <td>
464
+ <pre class="code"><span class="info file"># File 'lib/echochamber/agreement.rb', line 10</span>
465
+
466
+ <span class='kw'>def</span> <span class='id identifier rubyid_user_email'>user_email</span>
467
+ <span class='ivar'>@user_email</span>
468
+ <span class='kw'>end</span></pre>
469
+ </td>
470
+ </tr>
471
+ </table>
472
+ </div>
473
+
474
+
475
+ <span id="user_id=-instance_method"></span>
476
+ <div class="method_details ">
477
+ <h3 class="signature " id="user_id-instance_method">
478
+
479
+ - (<tt>Object</tt>) <strong>user_id</strong>
480
+
481
+
482
+
483
+
484
+
485
+ </h3><div class="docstring">
486
+ <div class="discussion">
487
+
488
+ <p>Returns the value of attribute user_id</p>
489
+
490
+
491
+ </div>
492
+ </div>
493
+ <div class="tags">
494
+
495
+
496
+ </div><table class="source_code">
497
+ <tr>
498
+ <td>
499
+ <pre class="lines">
500
+
501
+
502
+ 10
503
+ 11
504
+ 12</pre>
505
+ </td>
506
+ <td>
507
+ <pre class="code"><span class="info file"># File 'lib/echochamber/agreement.rb', line 10</span>
508
+
509
+ <span class='kw'>def</span> <span class='id identifier rubyid_user_id'>user_id</span>
510
+ <span class='ivar'>@user_id</span>
511
+ <span class='kw'>end</span></pre>
512
+ </td>
513
+ </tr>
514
+ </table>
515
+ </div>
516
+
517
+ </div>
518
+
519
+
520
+ </div>
521
+
522
+ <div id="footer">
523
+ Generated on Thu Aug 21 05:14:34 2014 by
524
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
525
+ 0.8.7.4 (ruby-2.0.0).
526
+ </div>
527
+
528
+ </body>
529
+ </html>