rabbit_jobs 0.1.1 → 0.1.2

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.
@@ -16,17 +16,20 @@ module RabbitJobs
16
16
  end
17
17
 
18
18
  def publish_to(routing_key, klass, *params)
19
- raise ArgumentError unless klass && routing_key && klass.is_a?(Class) && (routing_key.is_a?(Symbol) || routing_key.is_a?(String))
20
-
21
- job = klass.new(*params)
22
- job.opts = {'created_at' => Time.now.to_i}
19
+ raise ArgumentError unless klass && (klass.is_a?(Class) || klass.is_a?(String))
20
+ raise ArgumentError unless routing_key && (routing_key.is_a?(Symbol) || routing_key.is_a?(String))
23
21
 
24
22
  exchange = bunny.exchange(RJ.config[:exchange], RJ.config[:exchange_params])
25
23
  queue = bunny.queue(RJ.config.queue_name(routing_key), RJ.config[:queues][routing_key.to_s])
26
24
  queue.bind(exchange)
27
25
 
28
- exchange.publish(job.payload, Configuration::DEFAULT_MESSAGE_PARAMS.merge({key: routing_key.to_s}))
29
- # b.stop
26
+ payload = {
27
+ 'class' => klass.to_s,
28
+ 'opts' => {'created_at' => Time.now.to_i},
29
+ 'params' => params
30
+ }.to_json
31
+
32
+ exchange.publish(payload, Configuration::DEFAULT_MESSAGE_PARAMS.merge({key: routing_key.to_s}))
30
33
  end
31
34
 
32
35
  def purge_queue(*routing_keys)
@@ -38,7 +41,6 @@ module RabbitJobs
38
41
  messages_count += queue.status[:message_count]
39
42
  queue.purge
40
43
  end
41
- # b.stop
42
44
  return messages_count
43
45
  end
44
46
 
@@ -64,8 +64,8 @@ module RabbitJobs
64
64
  params = args.is_a?(Hash) ? [args] : Array(args)
65
65
  queue = config['queue'] || config[:queue] || RabbitJobs.config.routing_keys.first
66
66
 
67
- RJ.logger.info "publishing #{config}"
68
- RabbitJobs.publish_to(queue, klass_name.constantize, nil, *params)
67
+ RJ.logger.info "publishing #{config} at #{Time.now}"
68
+ RabbitJobs.publish_to(queue, klass_name, *params)
69
69
  rescue
70
70
  RJ.logger.warn "Failed to publish #{klass_name}:\n #{$!}\n params = #{params.inspect}"
71
71
  end
@@ -1,3 +1,3 @@
1
1
  module RabbitJobs
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -43,7 +43,10 @@ module RabbitJobs
43
43
 
44
44
  connection.close {
45
45
  File.delete(self.pidfile) if self.pidfile
46
- EM.stop { exit! }
46
+ EM.stop {
47
+ exit!
48
+ RJ.logger.close
49
+ }
47
50
  }
48
51
  end
49
52
  }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rabbit_jobs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-03-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: amqp
16
- requirement: &70149529326900 !ruby/object:Gem::Requirement
16
+ requirement: &70147448525540 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0.9'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70149529326900
24
+ version_requirements: *70147448525540
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bunny
27
- requirement: &70149529326400 !ruby/object:Gem::Requirement
27
+ requirement: &70147448525040 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0.7'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70149529326400
35
+ version_requirements: *70147448525040
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70149529326020 !ruby/object:Gem::Requirement
38
+ requirement: &70147448524660 !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: :runtime
45
45
  prerelease: false
46
- version_requirements: *70149529326020
46
+ version_requirements: *70147448524660
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rufus-scheduler
49
- requirement: &70149529325480 !ruby/object:Gem::Requirement
49
+ requirement: &70147448524120 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '2.0'
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70149529325480
57
+ version_requirements: *70147448524120
58
58
  description: Background jobs on RabbitMQ
59
59
  email:
60
60
  - lazureykis@gmail.com