stomping_ground 0.5 → 0.6
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.
- data/lib/stomping_ground/server.rb +16 -7
- data/lib/stomping_ground/version.rb +1 -1
- metadata +12 -12
@@ -1,10 +1,13 @@
|
|
1
|
+
require 'eventmachine'
|
2
|
+
require 'openssl'
|
3
|
+
|
1
4
|
module StompingGround
|
2
5
|
|
3
6
|
module Stomp
|
4
7
|
|
5
8
|
attr_writer :message_body
|
6
9
|
attr_writer :queue_name
|
7
|
-
attr_writer :
|
10
|
+
attr_writer :sent_message_dir
|
8
11
|
|
9
12
|
def post_init
|
10
13
|
end
|
@@ -35,9 +38,9 @@ module StompingGround
|
|
35
38
|
send_data "\0"
|
36
39
|
close_connection
|
37
40
|
when "SEND"
|
38
|
-
filename =
|
39
|
-
|
40
|
-
file.write(frame)
|
41
|
+
filename = sent_message_filename_for(frame)
|
42
|
+
if filename
|
43
|
+
File.open(filename, "w") { |file| file.write(frame) }
|
41
44
|
end
|
42
45
|
end
|
43
46
|
end
|
@@ -47,6 +50,12 @@ module StompingGround
|
|
47
50
|
|
48
51
|
private
|
49
52
|
|
53
|
+
def sent_message_filename_for(frame)
|
54
|
+
return nil if !@sent_message_dir
|
55
|
+
md5 = OpenSSL::Digest::MD5.new(frame)
|
56
|
+
"#{@sent_message_dir}/#{md5}.msg"
|
57
|
+
end
|
58
|
+
|
50
59
|
def parse(frame)
|
51
60
|
frame_info = {}
|
52
61
|
data_array = frame.split("\n").reverse
|
@@ -71,9 +80,9 @@ module StompingGround
|
|
71
80
|
def start(options={})
|
72
81
|
EventMachine.run {
|
73
82
|
EventMachine.start_server @host, @port, StompingGround::Stomp do |server|
|
74
|
-
server.message_body
|
75
|
-
server.queue_name
|
76
|
-
server.
|
83
|
+
server.message_body = options[:message]
|
84
|
+
server.queue_name = options[:queue_name]
|
85
|
+
server.sent_message_dir = options[:sent_message_dir]
|
77
86
|
end
|
78
87
|
}
|
79
88
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stomping_ground
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.6'
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-30 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: onstomp
|
16
|
-
requirement: &
|
16
|
+
requirement: &2164706660 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2164706660
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &2164706200 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2164706200
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: json
|
38
|
-
requirement: &
|
38
|
+
requirement: &2164705720 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2164705720
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
|
-
requirement: &
|
49
|
+
requirement: &2164705160 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2164705160
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: eventmachine
|
60
|
-
requirement: &
|
60
|
+
requirement: &2164704320 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2164704320
|
69
69
|
description:
|
70
70
|
email:
|
71
71
|
executables: []
|