edem_redirect 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ce6d0e31f0b23e816525415845419907d99dde89
4
+ data.tar.gz: b4408840bf75219969b4a49e46ee94dea5354216
5
+ SHA512:
6
+ metadata.gz: 5cbac5c6aa948a40b67ad8cc4b94c7af6622018734808d811396c592697f424b57c5893d189cf15c56b33ba8c0decea35215cfdd05551cfa1f67618f0eb6430b
7
+ data.tar.gz: 183977314cc4e082cbd9e93ec52aca00f713e9ca4c94717f957448205a68ed85fbc743ef8af5268c459d825dca573ef082f28055d053da8a4bccf777e6a466eb
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EdemRedirect
4
+ module Builders
5
+ class Url
6
+ require 'jwt'
7
+
8
+ def initialize(**args)
9
+ @path = args[:path]
10
+ @host = args[:host]
11
+ @uid = args[:user_uid]
12
+ end
13
+
14
+ def call
15
+ url = URI(ENV['ROUTER_REDIRECT_PATH'])
16
+ url.query = URI.encode_www_form encode_params
17
+ url.to_s
18
+ end
19
+
20
+ private
21
+
22
+ def encode_params
23
+ {
24
+ token: JWT.encode(request_params, nil, 'none')
25
+ }
26
+ end
27
+
28
+ def request_params
29
+ {
30
+ path: @path,
31
+ host: @host,
32
+ user_uid: @uid
33
+ }
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EdemRedirect
4
+ class Decoder
5
+ def initialize(token)
6
+ @token = token
7
+ end
8
+
9
+ def call
10
+ JWT.decode @token, nil, false
11
+ end
12
+ end
13
+ end
metadata ADDED
@@ -0,0 +1,45 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: edem_redirect
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - ALex Panchenko
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-03-28 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Redirect gem
14
+ email: 1989alpan@gmail.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/edem_redirect/builders/url.rb
20
+ - lib/edem_redirect/decoder.rb
21
+ homepage: http://rubygems.org/gems/hola
22
+ licenses:
23
+ - MIT
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubyforge_project:
41
+ rubygems_version: 2.6.13
42
+ signing_key:
43
+ specification_version: 4
44
+ summary: Edem redirect
45
+ test_files: []