ruby_universign 1.3.1 → 1.4.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/universign.rb +1 -2
- data/lib/universign/client.rb +0 -10
- data/lib/universign/document.rb +0 -22
- data/lib/universign/error.rb +31 -11
- data/lib/universign/safeguard.rb +5 -5
- data/lib/universign/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b39566328cf7e2edb2c55e4c22139129f91adb7cdfeb5120d5c7f40b98b73db
|
4
|
+
data.tar.gz: b87ec0c9ad5888959c2e42f2d16425777da5d68aae108e5970a498fef4345416
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 973c59f15e06122b52d812ec50bcbeb993db6b145f8435aedca5c72f33bdd0f0bbb13d5308460fc51bb9f4079dd6c7073e8a6728020ded5257502918bd69498c
|
7
|
+
data.tar.gz: acd708d77ab30e7dc2f5b6645ced38f2e4c9210fed1041fe7e809d58b16abd186b65fd487b5fa0a1ce8f9d071eac817fbd76369e1b62c95c624e31442320640b
|
data/CHANGELOG.md
CHANGED
data/lib/universign.rb
CHANGED
@@ -10,11 +10,10 @@ require 'universign/transaction'
|
|
10
10
|
require 'universign/signature_field'
|
11
11
|
require 'universign/signer_infos'
|
12
12
|
require 'universign/transaction_signer'
|
13
|
+
require 'universign/error'
|
13
14
|
require 'universign/client'
|
14
15
|
require 'universign/document'
|
15
16
|
require 'universign/configuration'
|
16
|
-
require 'universign/error'
|
17
17
|
|
18
18
|
module Universign
|
19
|
-
include Error
|
20
19
|
end
|
data/lib/universign/client.rb
CHANGED
@@ -22,15 +22,5 @@ module Universign
|
|
22
22
|
super(method, *args, &block)
|
23
23
|
end
|
24
24
|
end
|
25
|
-
|
26
|
-
# _ _
|
27
|
-
# _____ _____ ___ _ __ | |_(_) ___ _ __ ___
|
28
|
-
# / _ \ \/ / __/ _ \ '_ \| __| |/ _ \| '_ \/ __|
|
29
|
-
# | __/> < (_| __/ |_) | |_| | (_) | | | \__ \
|
30
|
-
# \___/_/\_\___\___| .__/ \__|_|\___/|_| |_|___/
|
31
|
-
# |_|
|
32
|
-
class InvalidCredentials < StandardError; end
|
33
|
-
class ErrorWhenSigningPDF < StandardError; end
|
34
|
-
class UnknownException < StandardError; end
|
35
25
|
end
|
36
26
|
end
|
data/lib/universign/document.rb
CHANGED
@@ -103,27 +103,5 @@ module Universign
|
|
103
103
|
@meta_data = data
|
104
104
|
params['metaData'] = data
|
105
105
|
end
|
106
|
-
|
107
|
-
# _ _
|
108
|
-
# _____ _____ ___ _ __ | |_(_) ___ _ __ ___
|
109
|
-
# / _ \ \/ / __/ _ \ '_ \| __| |/ _ \| '_ \/ __|
|
110
|
-
# | __/> < (_| __/ |_) | |_| | (_) | | | \__ \
|
111
|
-
# \___/_/\_\___\___| .__/ \__|_|\___/|_| |_|___/
|
112
|
-
# |_|
|
113
|
-
class UnknownDocument < StandardError; end
|
114
|
-
class NotSigned < StandardError; end
|
115
|
-
class MissingDocument < StandardError; end
|
116
|
-
class MetaDataMustBeAHash < StandardError; end
|
117
|
-
class DocumentURLInvalid < StandardError
|
118
|
-
attr_accessor :url
|
119
|
-
|
120
|
-
def initialize(url)
|
121
|
-
@url = url
|
122
|
-
end
|
123
|
-
|
124
|
-
def to_s
|
125
|
-
"Can't find document at '#{@url}''"
|
126
|
-
end
|
127
|
-
end
|
128
106
|
end
|
129
107
|
end
|
data/lib/universign/error.rb
CHANGED
@@ -1,14 +1,34 @@
|
|
1
1
|
module Universign
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
2
|
+
class Error < ::StandardError
|
3
|
+
def self.match_class(code)
|
4
|
+
{
|
5
|
+
73002 => Universign::ErrorWhenSigningPDF, # An error occured when signing the PDF document
|
6
|
+
73010 => Universign::InvalidCredentials, # The login and/or password are invalid.
|
7
|
+
73025 => Universign::UnknownDocument, # The used transaction id or custom id is invalid
|
8
|
+
73027 => Universign::DocumentNotSigned
|
9
|
+
}.fetch(code, nil)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
class NotEnoughTokens < Error; end
|
14
|
+
|
15
|
+
class ErrorWhenSigningPDF < Error; end
|
16
|
+
class InvalidCredentials < Error; end
|
17
|
+
class UnknownException < Error; end
|
18
|
+
|
19
|
+
class UnknownDocument < Error; end
|
20
|
+
class DocumentNotSigned < Error; end
|
21
|
+
class MissingDocument < Error; end
|
22
|
+
class MetaDataMustBeAHash < Error; end
|
23
|
+
class DocumentURLInvalid < Error
|
24
|
+
attr_accessor :url
|
25
|
+
|
26
|
+
def initialize(url)
|
27
|
+
@url = url
|
28
|
+
end
|
29
|
+
|
30
|
+
def to_s
|
31
|
+
"Can't find document at '#{@url}'"
|
32
|
+
end
|
13
33
|
end
|
14
34
|
end
|
data/lib/universign/safeguard.rb
CHANGED
@@ -16,27 +16,27 @@ module Universign
|
|
16
16
|
raise ex
|
17
17
|
end
|
18
18
|
|
19
|
-
known_exception = Universign::
|
19
|
+
known_exception = Universign::Error.match_class(ex.faultCode)
|
20
20
|
|
21
21
|
if known_exception
|
22
22
|
raise known_exception
|
23
23
|
elsif ex.faultString.include?('Error on document download for this URL')
|
24
24
|
url = ex.faultString.match(/<(.+)>/)[1] rescue 'unknown URL'
|
25
|
-
raise Universign::
|
25
|
+
raise Universign::DocumentURLInvalid.new(url)
|
26
26
|
elsif ex.faultString.include?('Invalid document URL')
|
27
27
|
url = ex.faultString.match(/<(.+)>/)[1] rescue 'unknown URL'
|
28
|
-
raise Universign::
|
28
|
+
raise Universign::DocumentURLInvalid.new(url)
|
29
29
|
elsif ex.faultString.include?('Not enough tokens')
|
30
30
|
raise Universign::NotEnoughTokens
|
31
31
|
elsif ex.faultString.include?('ID is unknown')
|
32
|
-
raise Universign::
|
32
|
+
raise Universign::UnknownDocument
|
33
33
|
else
|
34
34
|
handle_exception(ex, callback)
|
35
35
|
end
|
36
36
|
|
37
37
|
rescue RuntimeError => ex
|
38
38
|
if ex.message.include?('Authorization failed')
|
39
|
-
raise Universign::
|
39
|
+
raise Universign::InvalidCredentials
|
40
40
|
end
|
41
41
|
raise ex
|
42
42
|
end
|
data/lib/universign/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_universign
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nicolas Besnard
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2021-02-15 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: activesupport
|