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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dadf7f4edae36e424da051b09b3218005a8a76d0
4
- data.tar.gz: a7c801c1f652a48ab8087a37f8a397ed0dfe22bb
3
+ metadata.gz: f5e44f21f3f224d881f0e527edcca623115d21a9
4
+ data.tar.gz: b492e6898f5aeff68c34824e8a5291990f1051ef
5
5
  SHA512:
6
- metadata.gz: 5ba07ad9567b87ec098e4758102d6d67f1b04b2ad309309aefacdef0e257bf6dd284142f9404313832c68d074447f4f8f972923516fe1da1da1eb009808ee67f
7
- data.tar.gz: b79b4459430e9d52d4be9da0ccc7ced8d682491df903a014a8602a4b3756b671882ea5c0cbec1992683ae3fb4e35ce22e0d6e62c3dd91f0c821e601aec46d70e
6
+ metadata.gz: b730cef7d21b35154300ae056036822dabc6e9b8eb6194abaf5b0b84da9db051c2dc58d87eeb1b3f75c782688ed6401126be267800c7a5364bd507efb09ed0df
7
+ data.tar.gz: 353d2081407fefb809af82a2c902c7cbe510a8bd70917a616c0158ad38090f347d0779a69c6de0475c5dc6737039bbffe1bcab879673970ed151979a6dfa2ec2
@@ -1,3 +1,3 @@
1
1
  module PDFService
2
- VERSION = '0.0.2'.freeze
2
+ VERSION = '0.0.3'.freeze
3
3
  end
@@ -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.freeze
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
- url = params[:url].to_s
17
- begin
18
- url = URI.parse(url.to_s)
16
+ [200, {'Content-Type' => 'text/plain'}, ["PDFService #{PDFService::VERSION}"]]
17
+ end
19
18
 
20
- unless VALID_SCHEMES.include?(url.scheme)
21
- return ErrorResponse("Invalid url scheme #{url.scheme}://. Valid schemes is #{VALID_SCHEMES}")
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.2
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-10-30 00:00:00.000000000 Z
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