nut 1.1.0 → 1.2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2874b58315b705be099b8b9da8ff696994df0cd6
4
- data.tar.gz: ea95d1b9adcb54b33a6ce4e6b5e379471a9c96c5
3
+ metadata.gz: 9a735347aacab5f841d7e7002bb1974e4e1d392b
4
+ data.tar.gz: 85d2efe284e74dd48a85f246320ac5b54804000f
5
5
  SHA512:
6
- metadata.gz: e4dde8c5cdd60bc7fea8789efc11129dddc3759ec339b209620d5e267839b62df3b7b2c23500c740b95b2d33f43373d7d3d37d2dfe434f4502e929bf7f730cd2
7
- data.tar.gz: 00dfe351ef2919bc747e8b37c1ec6b7237f721603576594bac9d5ab3fd28dce10170476e69119a1d9d3bd097cfbc545dce8ceaabc3e3ceaadfc135f78103ea80
6
+ metadata.gz: 110e11a0fa8ce38b7a99b4340ad134acab2329edb46c6c44f1b525cf42141f194af1d7e2813beee607956102d13e21f4ae4578045c96b3babe574ffac58d2692
7
+ data.tar.gz: e8e4033f1ea84ae38bd174c8a7f162668864a9f9818e3c20b1b12ed50dbb75db73c36e187756ca983da0a5482e671e22b382d1925f9f620c119227b8bbb30e85
data/README.md CHANGED
@@ -26,6 +26,29 @@ gem install -V nut
26
26
  Nut is a miniature pure-Ruby implementation of a reactive HTTP Server.
27
27
  Relying on [RxIO](https://rubygems.org/gems/rxio), Nut is simple to use, fast and lightweight.
28
28
 
29
+ ### Creating a Service
30
+
31
+ Creating a service is as simple as:
32
+
33
+ ```ruby
34
+ # Create Nut Server
35
+ n = Nut::Service.new YourRequestHandler
36
+ ```
37
+
38
+ The service can be made to listen on a specific address / port:
39
+
40
+ ```ruby
41
+ # Create Nut Server
42
+ n = Nut::Service.new 'localhost', 4444, YourRequestHandler
43
+ ```
44
+
45
+ Finally, the service can also be made to serve HTTPS instead of HTTP:
46
+
47
+ ```ruby
48
+ # Create Nut Server
49
+ n = Nut::Service.new 'localhost', 4444, { cert: 'cert.pem', pkey: 'private.key' }, YourRequestHandler
50
+ ```
51
+
29
52
  ### Request Handler
30
53
  Nut uses a request_handler module to service client requests. This module is to be implemented by the user.
31
54
  The request_handler module requires only one method: _handle_, which takes two Hashes as arguments: _request_ and _response_.
data/lib/nut/handler.rb CHANGED
@@ -176,6 +176,9 @@ module Nut
176
176
 
177
177
  # Respond to Client
178
178
  serve_response client, response
179
+
180
+ # Drop
181
+ client[:drop] = true
179
182
  end
180
183
 
181
184
  # Serve Response:
data/lib/nut/service.rb CHANGED
@@ -26,11 +26,12 @@ module Nut
26
26
  # Builds a *Service* set to listen for incoming connections @ _addr_ on _port_.
27
27
  # @param [String] addr
28
28
  # @param [Fixnum] port
29
+ # @param [Hash] ssl_params
29
30
  # @param [Module] request_handler
30
- def initialize addr = DEFAULT_ADDR, port = DEFAULT_PORT, request_handler
31
+ def initialize addr = DEFAULT_ADDR, port = DEFAULT_PORT, ssl_params = nil, request_handler
31
32
 
32
33
  # Super
33
- super addr, port, Handler
34
+ super addr, port, Handler, ssl_params
34
35
 
35
36
  # Set Request Handler
36
37
  @request_handler = request_handler
data/lib/nut/version.rb CHANGED
@@ -5,5 +5,5 @@
5
5
  module Nut
6
6
 
7
7
  # Version
8
- VERSION = '1.1.0'
8
+ VERSION = '1.2.0'
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nut
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eresse