comsat 0.0.7 → 0.0.8

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/comsat/client.rb CHANGED
@@ -21,18 +21,20 @@ module Comsat
21
21
 
22
22
  def notify(route, msg={})
23
23
  message = msg.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
24
+
25
+ start = Time.now
26
+ Comsat.log(:fn => :notify, :route => "#{route}", :at => :start)
27
+ notify_route = @@routes.detect {|r| r.name == route } if message
28
+
24
29
  if notify_route.event_type
25
- event = notify_route
30
+ event = notify_route.event_type
26
31
  elsif message[:message_type]
27
32
  event = message[:message_type]
28
33
  else
29
34
  event = "notice"
30
35
  end
31
36
 
32
- start = Time.now
33
- Comsat.log(:fn => :notify, :route => "#{route}", :at => :start)
34
- notify_route = @@routes.detect {|r| r.name == route } if message
35
- notify_route.services.each do |svc|
37
+ notify_route.services[event].each do |svc|
36
38
  Comsat.log(:fn => :notify, :service => "#{svc.class.to_s.downcase}", :event => event)
37
39
  svc.send("send_#{event}".to_sym, message)
38
40
  end
data/lib/comsat/route.rb CHANGED
@@ -9,8 +9,7 @@ module Comsat
9
9
  @services = {
10
10
  "notice" => [],
11
11
  "alert" => [],
12
- "resolve" => [],
13
- "all" => []
12
+ "resolve" => []
14
13
  }
15
14
 
16
15
  urls.each do |url|
@@ -18,7 +17,9 @@ module Comsat
18
17
  if svc.respond_to?("send_#{@event_type}")
19
18
  @services[@event_type] << svc
20
19
  else
21
- @services["all"] << svc
20
+ @services.keys.each do |k|
21
+ @services[k] << svc
22
+ end
22
23
  end
23
24
  end
24
25
  end
@@ -1,3 +1,3 @@
1
1
  module Comsat
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
data/spec/client_spec.rb CHANGED
@@ -27,11 +27,11 @@ describe Comsat::Client do
27
27
  end
28
28
 
29
29
  it "should have one service initiated on the event_type 'notice'" do
30
- subject.routes.first.services["notice"].length.should == 1
30
+ subject.routes.first.services["notice"].compact.length.should == 1
31
31
  end
32
32
 
33
33
  it "should have a campfire service initiated" do
34
- subject.routes.first.services["notice"].first.class.should == Comsat::Campfire
34
+ subject.routes.first.services["notice"].compact.first.class.should == Comsat::Campfire
35
35
  end
36
36
 
37
37
  it "should provide an event type" do
@@ -53,7 +53,9 @@ describe Comsat::Client do
53
53
  end
54
54
 
55
55
  it "should have one service initiated on all event_types" do
56
- subject.routes.first.services["all"].length.should == 1
56
+ subject.routes.first.services["notice"].compact.length.should == 1
57
+ subject.routes.first.services["alert"].compact.length.should == 1
58
+ subject.routes.first.services["resolve"].compact.length.should == 1
57
59
  end
58
60
  end
59
61
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: comsat
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-04-18 00:00:00.000000000 Z
13
+ date: 2012-04-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rest-client
17
- requirement: &70239639975100 !ruby/object:Gem::Requirement
17
+ requirement: &70200113020040 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70239639975100
25
+ version_requirements: *70200113020040
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: scrolls
28
- requirement: &70239639974440 !ruby/object:Gem::Requirement
28
+ requirement: &70200113019260 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *70239639974440
36
+ version_requirements: *70200113019260
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: rake
39
- requirement: &70239639972620 !ruby/object:Gem::Requirement
39
+ requirement: &70200113017660 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *70239639972620
47
+ version_requirements: *70200113017660
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: rspec
50
- requirement: &70239639971220 !ruby/object:Gem::Requirement
50
+ requirement: &70200113008300 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,7 +55,7 @@ dependencies:
55
55
  version: '0'
56
56
  type: :development
57
57
  prerelease: false
58
- version_requirements: *70239639971220
58
+ version_requirements: *70200113008300
59
59
  description: Notifications as a Gem
60
60
  email:
61
61
  - ops@heroku.com