pdf-service 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/pdf_service/version.rb +1 -1
- data/lib/pdf_service/web_app.rb +18 -12
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f5e44f21f3f224d881f0e527edcca623115d21a9
|
4
|
+
data.tar.gz: b492e6898f5aeff68c34824e8a5291990f1051ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b730cef7d21b35154300ae056036822dabc6e9b8eb6194abaf5b0b84da9db051c2dc58d87eeb1b3f75c782688ed6401126be267800c7a5364bd507efb09ed0df
|
7
|
+
data.tar.gz: 353d2081407fefb809af82a2c902c7cbe510a8bd70917a616c0158ad38090f347d0779a69c6de0475c5dc6737039bbffe1bcab879673970ed151979a6dfa2ec2
|
data/lib/pdf_service/version.rb
CHANGED
data/lib/pdf_service/web_app.rb
CHANGED
@@ -6,30 +6,36 @@ module PDFService
|
|
6
6
|
class WebApp < Sinatra::Base
|
7
7
|
def initialize(pdf_service:)
|
8
8
|
super()
|
9
|
-
@pdf_service = pdf_service
|
9
|
+
@pdf_service = pdf_service
|
10
10
|
end
|
11
11
|
|
12
12
|
attr_reader :pdf_service
|
13
13
|
VALID_SCHEMES = %w(http https).freeze
|
14
14
|
|
15
15
|
get '/' do
|
16
|
-
|
17
|
-
|
18
|
-
url = URI.parse(url.to_s)
|
16
|
+
[200, {'Content-Type' => 'text/plain'}, ["PDFService #{PDFService::VERSION}"]]
|
17
|
+
end
|
19
18
|
|
20
|
-
|
21
|
-
|
19
|
+
|
20
|
+
post('/render') {
|
21
|
+
unless !!params[:data] ^ !!params[:url]
|
22
|
+
return ErrorResponse("one of the params :url and :data needs to be present", status: 400)
|
23
|
+
end
|
24
|
+
begin
|
25
|
+
if params[:data]
|
26
|
+
PDFResponse(@pdf_service.render(params[:data]))
|
27
|
+
elsif url = params[:url].to_s
|
28
|
+
url = URI.parse(url.to_s)
|
29
|
+
|
30
|
+
unless VALID_SCHEMES.include?(url.scheme)
|
31
|
+
return ErrorResponse("Invalid url scheme #{url.scheme}://. Valid schemes is #{VALID_SCHEMES}", status: 400)
|
32
|
+
end
|
33
|
+
PDFResponse(pdf_service.render_url(url))
|
22
34
|
end
|
23
|
-
PDFResponse(pdf_service.render_url(url))
|
24
35
|
rescue => ex
|
25
36
|
STDERR.puts(ex.inspect)
|
26
37
|
ErrorResponse('Internal Server Error')
|
27
38
|
end
|
28
|
-
end
|
29
|
-
|
30
|
-
|
31
|
-
post('/') {
|
32
|
-
PDFResponse(@pdf_service.render(request.body.read))
|
33
39
|
}
|
34
40
|
|
35
41
|
def ErrorResponse(message, status: 500)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pdf-service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ruby Coder
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-11-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sinatra
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.4'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rack-test
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0.6'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0.6'
|
27
41
|
description: Much longer explanation of the example!
|
28
42
|
email:
|
29
43
|
- rubycoder@example.com
|