32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
# File 'lib/html_to_pdf_conversion.rb', line 32
def convert(document_url, options = {})
if document_url.nil?
raise PDFlayer::MissingArgumentException.new 'document_url'
return
end
query = options.dup
md5 = Digest::MD5.new
md5.update document_url + @secret_key
secret_key = md5.hexdigest
query.access_key = @access_key
query.secret_key = secret_key
query.document_url = URI.escape(document_url)
req = ConvertRequest.new(query)
req_dto = req.to_dh
begin
res = self.class.get('/convert', req_dto)
res.inspect
if options.export.nil?
return res.parsed_response
else
begin
File.open(options.export, 'a+') do |file|
file.write(res.body)
result = {
success: true,
info: "The PDF file has been saved to your local file system",
file_name: options.export
}
return result
end
end
end
rescue => e
puts e.inspect
return
ensure
end
end
|