pinky 0.1.2-java → 0.1.3-java

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -13,7 +13,6 @@ gem 'json'
13
13
  platform :jruby do
14
14
  # energizer
15
15
  gem 'hot_bunnies'
16
- gem 'mailbox'
17
16
  end
18
17
 
19
18
  group :test, :development do
@@ -12,11 +12,8 @@ GEM
12
12
  git (>= 1.2.5)
13
13
  rake
14
14
  rdoc
15
- jretlang (0.3.0)
16
15
  json (1.7.5)
17
16
  json (1.7.5-java)
18
- mailbox (0.2.7)
19
- jretlang
20
17
  multi_json (1.3.6)
21
18
  multi_xml (0.5.1)
22
19
  rake (0.9.2.2)
@@ -42,7 +39,6 @@ DEPENDENCIES
42
39
  httparty
43
40
  jeweler (~> 1.8.4)
44
41
  json
45
- mailbox
46
42
  rdoc (~> 3.12)
47
43
  rspec (>= 2.11.0)
48
44
  timecop
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.1.3
@@ -3,6 +3,5 @@ require 'httparty'
3
3
  require 'date'
4
4
 
5
5
  require 'hot_bunnies'
6
- require 'mailbox'
7
6
 
8
7
  Dir[File.join(File.dirname(__FILE__), 'pinky', '**', '*.rb')].sort.each { |f| require f }
@@ -1,15 +1,16 @@
1
1
  module Pinky
2
2
  module EnergizerBunny
3
3
  class Subscription
4
- include Mailbox
5
- mailbox_thread_pool_size 1
4
+ import java.util.concurrent.Executors
6
5
 
7
6
  def initialize queue, subscription_opts, logger, handle_message
8
7
  @queue, @subscription_opts, @logger, @handle_message = queue, subscription_opts, logger, handle_message
8
+ @subscription_opts[:executor] = executor unless @subscription_opts[:executor]
9
9
  listen!
10
10
  end
11
11
 
12
12
  def close
13
+ close_executor
13
14
  return if @subscription.nil?
14
15
  @subscription.shutdown!
15
16
  @subscription = nil
@@ -23,7 +24,6 @@ module Pinky
23
24
  self
24
25
  end
25
26
 
26
- mailslot :exception => :log_error
27
27
  def handle_message_on_other_thread headers, msg
28
28
  @handle_message.call headers.properties.headers, msg
29
29
  headers.ack
@@ -32,6 +32,20 @@ module Pinky
32
32
  def log_error e
33
33
  @logger.error "An error has occured on another thread: #{e}#{$/}#{e.backtrace}"
34
34
  end
35
+
36
+ def thread_pool_size
37
+ @thread_pool_size ||= (@subscription_opts.delete(:thread_pool_size) || 1)
38
+ end
39
+
40
+ def executor
41
+ @executor ||= Executors.new_fixed_thread_pool(thread_pool_size)
42
+ end
43
+
44
+ def close_executor
45
+ return unless @executor
46
+ @executor.shutdown_now
47
+ @executor = nil
48
+ end
35
49
  end
36
50
  end
37
51
  end
@@ -5,12 +5,12 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "pinky"
8
- s.version = "0.1.2"
8
+ s.version = "0.1.3"
9
9
  s.platform = "java"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.authors = ["Joel Friedman"]
13
- s.date = "2012-12-06"
13
+ s.date = "2012-12-07"
14
14
  s.description = "Cache your api objects in member easier, with associations."
15
15
  s.email = "asher.friedman@gmail.com"
16
16
  s.extra_rdoc_files = [
@@ -56,7 +56,6 @@ Gem::Specification.new do |s|
56
56
  s.add_runtime_dependency(%q<httparty>, [">= 0"])
57
57
  s.add_runtime_dependency(%q<json>, [">= 0"])
58
58
  s.add_runtime_dependency(%q<hot_bunnies>, [">= 0"])
59
- s.add_runtime_dependency(%q<mailbox>, [">= 0"])
60
59
  s.add_development_dependency(%q<timecop>, [">= 0"])
61
60
  s.add_development_dependency(%q<rspec>, [">= 2.11.0"])
62
61
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
@@ -66,7 +65,6 @@ Gem::Specification.new do |s|
66
65
  s.add_dependency(%q<httparty>, [">= 0"])
67
66
  s.add_dependency(%q<json>, [">= 0"])
68
67
  s.add_dependency(%q<hot_bunnies>, [">= 0"])
69
- s.add_dependency(%q<mailbox>, [">= 0"])
70
68
  s.add_dependency(%q<timecop>, [">= 0"])
71
69
  s.add_dependency(%q<rspec>, [">= 2.11.0"])
72
70
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
@@ -77,7 +75,6 @@ Gem::Specification.new do |s|
77
75
  s.add_dependency(%q<httparty>, [">= 0"])
78
76
  s.add_dependency(%q<json>, [">= 0"])
79
77
  s.add_dependency(%q<hot_bunnies>, [">= 0"])
80
- s.add_dependency(%q<mailbox>, [">= 0"])
81
78
  s.add_dependency(%q<timecop>, [">= 0"])
82
79
  s.add_dependency(%q<rspec>, [">= 2.11.0"])
83
80
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
metadata CHANGED
@@ -2,14 +2,14 @@
2
2
  name: pinky
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.2
5
+ version: 0.1.3
6
6
  platform: java
7
7
  authors:
8
8
  - Joel Friedman
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-06 00:00:00.000000000 Z
12
+ date: 2012-12-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
@@ -65,24 +65,6 @@ dependencies:
65
65
  none: false
66
66
  prerelease: false
67
67
  type: :runtime
68
- - !ruby/object:Gem::Dependency
69
- name: mailbox
70
- version_requirements: !ruby/object:Gem::Requirement
71
- requirements:
72
- - - ! '>='
73
- - !ruby/object:Gem::Version
74
- version: !binary |-
75
- MA==
76
- none: false
77
- requirement: !ruby/object:Gem::Requirement
78
- requirements:
79
- - - ! '>='
80
- - !ruby/object:Gem::Version
81
- version: !binary |-
82
- MA==
83
- none: false
84
- prerelease: false
85
- type: :runtime
86
68
  - !ruby/object:Gem::Dependency
87
69
  name: timecop
88
70
  version_requirements: !ruby/object:Gem::Requirement