rack_dwsregistry 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4e08cabd802d37d59078ba269fcae3ef9084970d
4
+ data.tar.gz: f1e6307c4eaab00ba047c3dbdc9e6ca4351522ca
5
+ SHA512:
6
+ metadata.gz: 686ef337b1fe4398c4bf2eba5ddf7785ff77c2f958b1fe53d43bdaa46352cb4dca8f89181f0fc8d249bb799cad99423cbaceda90bd8f684b649b6df039879c7b
7
+ data.tar.gz: 21d316a4a6f7086b8d2d17a3dd05427227d4c22860ae7cad325826c2340e3221a71b34f44fc8784677cdfc24b53a0b890369cdde96a8631c67e7a91751e6ca3a
checksums.yaml.gz.sig ADDED
Binary file
data.tar.gz.sig ADDED
Binary file
@@ -0,0 +1,86 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: rack_dwsregistry.rb
4
+
5
+
6
+ require 'json'
7
+ require 'app-routes'
8
+ require 'dws-registry'
9
+
10
+
11
+ class RackDwsRegistry
12
+ include AppRoutes
13
+
14
+
15
+ def initialize(filename='registry.xml')
16
+
17
+ super() # required for app-routes initialize method to exectue
18
+ @reg = DWSRegistry.new(filename)
19
+
20
+ end
21
+
22
+ def call(env)
23
+
24
+ @env = env
25
+ request = env['REQUEST_URI'][/https?:\/\/[^\/]+(.*)/,1]
26
+
27
+ req = Rack::Request.new(env)
28
+
29
+ default_routes(env, req.params)
30
+ content, content_type = run_route(request, env['REQUEST_METHOD'])
31
+
32
+ error = $!
33
+
34
+ page_content, status_code = if error then
35
+ [error, 500]
36
+ elsif content.nil? then
37
+ ["404: page not found", 404]
38
+ else
39
+ [content, 200]
40
+ end
41
+
42
+ content_type ||= 'text/html'
43
+
44
+ [status_code, {"Content-Type" => content_type}, [page_content]]
45
+
46
+ end
47
+
48
+
49
+ protected
50
+
51
+ def default_routes(env, params={})
52
+
53
+ get '/hello' do |package,job|
54
+ Time.now.to_s + ': hello'
55
+ end
56
+
57
+ get /^\/(.*)\?/ do |key|
58
+
59
+ val = params['v']
60
+
61
+ begin
62
+ e = @reg.set_key(key, val)
63
+ rescue
64
+ [{set_key: ($!)}.to_json, 'application/json']
65
+ end
66
+
67
+ [e.xml, 'application/xml']
68
+
69
+ end
70
+
71
+ get /^\/(.*)$/ do |key|
72
+
73
+ e = @reg.get_key(key)
74
+
75
+ if e then
76
+ [e.xml, 'application/xml']
77
+ else
78
+ [{get_key: 'key not found'}.to_json, 'application/json']
79
+ end
80
+
81
+ end
82
+
83
+ end
84
+
85
+ end
86
+
metadata ADDED
@@ -0,0 +1,107 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rack_dwsregistry
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE2MDQyNTExMTIyN1oXDTE3MDQyNTExMTIyN1owSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAL/zj/dl6ncLNAeBnrjw6mQHruuKXvcTo5RDKKTN5wZeWIwGgYA4LQ/lV/5j
19
+ kHuQGy83ATBhjxb4sBbOcQKbBLUmHu5lYyUGGtgiuVIIfrMGU1Ae6yyMAJ79UKZl
20
+ RXd5T2kCfZO82cMPAjgJWWzMxtdGUGtXt7B8572kiihFkv7Ts+7K0x+SzE6p5Bld
21
+ /vDHRfgGYK2UVSTnpvFBANqUNVoKPGrMGld3sqBjgE7deqn/McpcAUtlXd5uRxLz
22
+ +M+PThnqzZhvktz49c+BQflHMT5LbfEQaaRwlQk0M7gOfkLZZ4gSsjuUk/SSDmnd
23
+ 5PLn7OMQAIAJOabt2paFjwBDVgsCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQU3m8Kj1uMoxhB09FpAcoz5cMbeywwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEApNT63c5i
27
+ u6af96xbOwKUx8ezmpA/ANw9ija8PuB6UWcrwL4V5XQZZvCNQSc/11wrkaDzXQId
28
+ yi0Sj+qWHWpE37qoXoGPhfefv25LHWdzYy/0sDuwcozuKx2nzd7IISjOJWsfuZFw
29
+ kCtkxwIJVsaf7KrcpgmwfnOx3ZzKxMribhBA1Qin1k8hbJS19QLnIEauYwsXdqDo
30
+ 0q7AyA/azxLdl1SdLsDiWC4T+kyYNt2qDR2+e/XBrbYNFUu4UFQlxUC4fjcE8mQe
31
+ 9vQ5imvzK3l3JOAiHt6LLu2qJG5lTlmz1ku//St+TtMJDGc6ODmuEUkDv0pK9lSV
32
+ /uKXP19xM99uGQ==
33
+ -----END CERTIFICATE-----
34
+ date: 2016-04-25 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: app-routes
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '0.1'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 0.1.18
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '0.1'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 0.1.18
56
+ - !ruby/object:Gem::Dependency
57
+ name: dws-registry
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '0.3'
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: 0.3.3
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: '0.3'
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: 0.3.3
76
+ description:
77
+ email: james@r0bertson.co.uk
78
+ executables: []
79
+ extensions: []
80
+ extra_rdoc_files: []
81
+ files:
82
+ - lib/rack_dwsregistry.rb
83
+ homepage: https://github.com/jrobertson/rack_dwsregistry
84
+ licenses:
85
+ - MIT
86
+ metadata: {}
87
+ post_install_message:
88
+ rdoc_options: []
89
+ require_paths:
90
+ - lib
91
+ required_ruby_version: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ required_rubygems_version: !ruby/object:Gem::Requirement
97
+ requirements:
98
+ - - ">="
99
+ - !ruby/object:Gem::Version
100
+ version: '0'
101
+ requirements: []
102
+ rubyforge_project:
103
+ rubygems_version: 2.4.8
104
+ signing_key:
105
+ specification_version: 4
106
+ summary: rack_dwsregistry
107
+ test_files: []
metadata.gz.sig ADDED
@@ -0,0 +1,3 @@
1
+ ���O$~�2e�Ȯ�
2
+ �˥~���K��*����2އK�2�n+P%fŒ��;�+�ޖ�u8���ͻm�z�L��� ���e��p�&��� �*C��g
3
+ ��6HQ7�x�a4k��n�