em-midori 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/em-midori.rb +54 -3
  3. metadata +65 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b3b06892944df09fa7f0a611757f7f65deee7444
4
- data.tar.gz: cdb2bf0f1e9a8193f88a4af0dde5a16f19817864
3
+ metadata.gz: eb81fd76473c796773e61264d1d37f14c79b5f7b
4
+ data.tar.gz: e5761f2e6c2878b3cdc79bae3481ca145fb2dcaa
5
5
  SHA512:
6
- metadata.gz: b50579fcee98f4b626ad53974ac0cdb0060f9f133cab95a70c63c01ce191f3019129f4f0e6ba0a388024b7e8d778107874d4163594a03e96c331c60d444c907d
7
- data.tar.gz: 2ebe9a8933df4dcc30f04ed363946d00b77bce1ead441ad4d11cded2343e5f1d4ff1ef818b6e007a0a2c6998eb770fec30d075323fdd62d3e06742f5262187eb
6
+ metadata.gz: 9141f3d86ae38c1ff5f31b0e21dddc0fb408a650fbe00a8e9ffb316067f3082da365ac8d839b5e39b97ec3525dfd83a3df8f5a0ff8f861152e817a0ad6871afd
7
+ data.tar.gz: 82d2e5c6c719f27f0a7ecf3e5bc4379681b5e271ea81d2c0d9381bdba6651fb214e69d3e19f57edfd21753492a1291e73bfaa23e718068d291a381206217b0eb
@@ -1,5 +1,56 @@
1
- # encoding: utf-8
1
+ require 'eventmachine'
2
+ require 'fiber'
2
3
 
3
- module EMMidori
4
+ module Midori
5
+ def self.run(api=(Midori::API), ip=nil, port=nil)
6
+ ip ||= '127.0.0.1'
7
+ port ||= 8081
8
+ EventMachine.run {
9
+ route = api.new
10
+ puts "Midori Server Running on #{ip} at #{port}"
11
+ EventMachine.start_server ip, port, Midori::Server
12
+ }
13
+ end
14
+ end
4
15
 
5
- end
16
+ module Midori::Server
17
+ def receive_data(data)
18
+ port, ip = Socket.unpack_sockaddr_in(get_peername)
19
+ puts "from #{ip}:#{port} comes a message:"
20
+ #puts data
21
+ send_data 'Hello World'
22
+ close_connection_after_writing
23
+ end
24
+ end
25
+
26
+ class Midori::API
27
+ def self.get(route)
28
+ yield
29
+ end
30
+
31
+ def self.post(route)
32
+ yield
33
+ end
34
+
35
+ def self.put(route)
36
+ yield
37
+ end
38
+
39
+ def self.delete(route)
40
+ yield
41
+ end
42
+
43
+ def self.options(route)
44
+ yield
45
+ end
46
+
47
+ def self.link(route)
48
+ yield
49
+ end
50
+
51
+ def self.unlink(route)
52
+ yield
53
+ end
54
+ end
55
+
56
+ # Midori.run(Midori::API, '0.0.0.0', 8080)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: em-midori
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - HeckPsi Lab
@@ -9,7 +9,69 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2016-09-09 00:00:00.000000000 Z
12
- dependencies: []
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: eventmachine
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.2'
20
+ - - ">"
21
+ - !ruby/object:Gem::Version
22
+ version: 1.2.0.0
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '1.2'
30
+ - - ">"
31
+ - !ruby/object:Gem::Version
32
+ version: 1.2.0.0
33
+ - !ruby/object:Gem::Dependency
34
+ name: bundler
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.12'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.12'
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '11.2'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '11.2'
61
+ - !ruby/object:Gem::Dependency
62
+ name: rspec
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '3.0'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '3.0'
13
75
  description: An EventMachine Based Web Framework on Ruby
14
76
  email: business@heckpsi.com
15
77
  executables: []
@@ -29,7 +91,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
29
91
  requirements:
30
92
  - - ">="
31
93
  - !ruby/object:Gem::Version
32
- version: 2.3.0
94
+ version: 2.0.0
33
95
  required_rubygems_version: !ruby/object:Gem::Requirement
34
96
  requirements:
35
97
  - - ">="