backgroundrb-rails3 1.1

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.
Files changed (126) hide show
  1. data/.autotest +17 -0
  2. data/ChangeLog +50 -0
  3. data/Gemfile +11 -0
  4. data/LICENSE +4 -0
  5. data/MIT-LICENSE +20 -0
  6. data/README +22 -0
  7. data/Rakefile +128 -0
  8. data/TODO.org +5 -0
  9. data/app/controller/backgroundrb_status_controller.rb +6 -0
  10. data/backgroundrb-rails3.gemspec +219 -0
  11. data/config/backgroundrb.yml +11 -0
  12. data/doc/Rakefile +5 -0
  13. data/doc/config.yaml +2 -0
  14. data/doc/content/advanced/advanced.txt +76 -0
  15. data/doc/content/advanced/advanced.yaml +4 -0
  16. data/doc/content/bugs/bugs.txt +20 -0
  17. data/doc/content/bugs/bugs.yaml +5 -0
  18. data/doc/content/community/community.txt +36 -0
  19. data/doc/content/community/community.yaml +5 -0
  20. data/doc/content/content.txt +168 -0
  21. data/doc/content/content.yaml +5 -0
  22. data/doc/content/faq/faq.txt +41 -0
  23. data/doc/content/faq/faq.yaml +5 -0
  24. data/doc/content/rails/rails.txt +182 -0
  25. data/doc/content/rails/rails.yaml +5 -0
  26. data/doc/content/scheduling/scheduling.txt +166 -0
  27. data/doc/content/scheduling/scheduling.yaml +5 -0
  28. data/doc/content/workers/workers.txt +178 -0
  29. data/doc/content/workers/workers.yaml +5 -0
  30. data/doc/layouts/default/default.erb +56 -0
  31. data/doc/layouts/default/default.yaml +4 -0
  32. data/doc/lib/default.rb +7 -0
  33. data/doc/output/Assets/BG-Ad-Top.png +0 -0
  34. data/doc/output/Assets/BG-Body.png +0 -0
  35. data/doc/output/Assets/BG-Feed.png +0 -0
  36. data/doc/output/Assets/BG-Menu-Hover.png +0 -0
  37. data/doc/output/Assets/BG-Menu.png +0 -0
  38. data/doc/output/Assets/BG-Sidebar-Bottom.png +0 -0
  39. data/doc/output/Assets/Button-Feed.png +0 -0
  40. data/doc/output/images/bg-ad-top.png +0 -0
  41. data/doc/output/images/bg-body.png +0 -0
  42. data/doc/output/images/bg-feed.gif +0 -0
  43. data/doc/output/images/bg-footer.jpg +0 -0
  44. data/doc/output/images/bg-header.jpg +0 -0
  45. data/doc/output/images/bg-menu-hover.png +0 -0
  46. data/doc/output/images/bg-menu.png +0 -0
  47. data/doc/output/images/bg-sidebar-bottom.gif +0 -0
  48. data/doc/output/images/button-feed.png +0 -0
  49. data/doc/output/images/icon-comment.png +0 -0
  50. data/doc/output/images/more_icon.gif +0 -0
  51. data/doc/output/style.css +299 -0
  52. data/doc/page_defaults.yaml +13 -0
  53. data/doc/tasks/default.rake +3 -0
  54. data/doc/templates/default/default.txt +1 -0
  55. data/doc/templates/default/default.yaml +4 -0
  56. data/examples/backgroundrb.yml +25 -0
  57. data/examples/foo_controller.rb +48 -0
  58. data/examples/god_worker.rb +7 -0
  59. data/examples/worker_tests/god_worker_test.rb +8 -0
  60. data/examples/workers/error_worker.rb +17 -0
  61. data/examples/workers/foo_worker.rb +38 -0
  62. data/examples/workers/god_worker.rb +7 -0
  63. data/examples/workers/model_worker.rb +13 -0
  64. data/examples/workers/renewal_worker.rb +11 -0
  65. data/examples/workers/rss_worker.rb +26 -0
  66. data/examples/workers/server_worker.rb +31 -0
  67. data/examples/workers/world_worker.rb +12 -0
  68. data/examples/workers/xmpp_worker.rb +7 -0
  69. data/init.rb +7 -0
  70. data/install.rb +1 -0
  71. data/know_issues.org +5 -0
  72. data/lib/backgroundrb.rb +1 -0
  73. data/lib/backgroundrb/bdrb_client_helper.rb +8 -0
  74. data/lib/backgroundrb/bdrb_cluster_connection.rb +156 -0
  75. data/lib/backgroundrb/bdrb_config.rb +43 -0
  76. data/lib/backgroundrb/bdrb_conn_error.rb +29 -0
  77. data/lib/backgroundrb/bdrb_connection.rb +179 -0
  78. data/lib/backgroundrb/bdrb_job_queue.rb +79 -0
  79. data/lib/backgroundrb/bdrb_result.rb +19 -0
  80. data/lib/backgroundrb/bdrb_start_stop.rb +146 -0
  81. data/lib/backgroundrb/rails_worker_proxy.rb +181 -0
  82. data/lib/backgroundrb/railtie.rb +48 -0
  83. data/lib/generators/backgroundrb/bdrb_migration/USAGE +12 -0
  84. data/lib/generators/backgroundrb/bdrb_migration/bdrb_migration_generator.rb +15 -0
  85. data/lib/generators/backgroundrb/bdrb_migration/templates/migration.rb +27 -0
  86. data/lib/generators/backgroundrb/worker/USAGE +16 -0
  87. data/lib/generators/backgroundrb/worker/templates/unit_test.rb +12 -0
  88. data/lib/generators/backgroundrb/worker/templates/worker.rb +7 -0
  89. data/lib/generators/backgroundrb/worker/worker_generator.rb +14 -0
  90. data/lib/tasks/backgroundrb_tasks.rake +103 -0
  91. data/release_notes.org +48 -0
  92. data/release_points.org +46 -0
  93. data/script/backgroundrb +52 -0
  94. data/script/bdrb_test_helper.rb +99 -0
  95. data/script/load_worker_env.rb +31 -0
  96. data/script/monitrc +25 -0
  97. data/server/backgroundrb_server.rb +12 -0
  98. data/server/lib/bdrb_result_storage.rb +62 -0
  99. data/server/lib/bdrb_server_helper.rb +24 -0
  100. data/server/lib/bdrb_thread_pool.rb +127 -0
  101. data/server/lib/cron_trigger.rb +197 -0
  102. data/server/lib/invalid_dump_error.rb +4 -0
  103. data/server/lib/log_worker.rb +25 -0
  104. data/server/lib/master_proxy.rb +140 -0
  105. data/server/lib/master_worker.rb +187 -0
  106. data/server/lib/meta_worker.rb +432 -0
  107. data/server/lib/trigger.rb +34 -0
  108. data/test/bdrb_client_test_helper.rb +5 -0
  109. data/test/bdrb_test_helper.rb +35 -0
  110. data/test/client/backgroundrb.yml +17 -0
  111. data/test/client/test_bdrb_client_helper.rb +13 -0
  112. data/test/client/test_bdrb_cluster_connection.rb +162 -0
  113. data/test/client/test_bdrb_config.rb +20 -0
  114. data/test/client/test_bdrb_connection.rb +29 -0
  115. data/test/client/test_bdrb_job_queue.rb +63 -0
  116. data/test/client/test_worker_proxy.rb +130 -0
  117. data/test/server/test_cron_trigger.rb +281 -0
  118. data/test/server/test_master_proxy.rb +54 -0
  119. data/test/server/test_master_worker.rb +157 -0
  120. data/test/server/test_meta_worker.rb +281 -0
  121. data/test/server/test_result_storage.rb +14 -0
  122. data/test/socket_mocker.rb +34 -0
  123. data/test/workers/bar_worker.rb +10 -0
  124. data/test/workers/foo_worker.rb +10 -0
  125. data/uninstall.rb +1 -0
  126. metadata +345 -0
data/.autotest ADDED
@@ -0,0 +1,17 @@
1
+ class Autotest
2
+ def find_files
3
+ result = {}
4
+ Find.find '.' do |f|
5
+ Find.prune if @exceptions and f =~ @exceptions and test ?d, f
6
+
7
+ next if test ?d, f
8
+ next if f =~ /(swp|~|rej|orig|flymake)$/ # temporary/patch files
9
+ next if f =~ /\/\.?#/ # Emacs autosave/cvs merge files
10
+
11
+ filename = f.sub(/^\.\//, '')
12
+
13
+ result[filename] = File.stat(filename).mtime rescue next
14
+ end
15
+ return result
16
+ end
17
+ end
data/ChangeLog ADDED
@@ -0,0 +1,50 @@
1
+ 2008-09-07 hemant kumar <hemant@shire.com>
2
+
3
+ * Fix environment loading issues.
4
+
5
+ * Patch by Kieran P for disabling persistent job queue and its polling.
6
+
7
+ * Commit patch by P Baker, related to scheduling a persistent task at specified time. For example:
8
+ MiddleMan(:hello_worker).enq_some_task(:arg => "hello_world",
9
+ :job_key => "boy",:scheduled_at => (Time.now + 1.hour))
10
+
11
+ 2008-06-19 hemant kumar <hemant@shire.com>
12
+
13
+ * Make binary parser iterative and hence won't blow your stack
14
+
15
+ * Add run_concurrent
16
+
17
+ * Let parent sleep for a while when forking the bdrb master process.
18
+
19
+ * Fixed issue with fork. BackgrounDRb now uses fork and exec.
20
+
21
+ 2008-02-28 hemant kumar <hemant@shire>
22
+
23
+ * fixed some meory leaks.
24
+
25
+ * Implemented cleaner API for invoking tasks in workers
26
+
27
+ * Updated the documentation
28
+
29
+ 2008-02-25 hemant kumar <hemant@shire>
30
+
31
+ * Commited Patch by Alex which lets BackgrounDRb to have command line arguments and loading of specific environments
32
+ through command line argument.
33
+
34
+ 2008-02-14 hemant kumar <hemant@shire>
35
+
36
+ * Added TestCases for Cron Triggers, Meta Workers and stuff. We are heading towards proper code coverage with specs.
37
+
38
+ * Added preliminary support for starting a worker on demand through scheduler. What it means is, when you have a worker which is getting
39
+ scheduled very less frequently and you don't want the worker to persist, you can ask BackgrounDRb to restart the worker on each schedule.
40
+
41
+ * Fixed some unreported issues with writing data to socket between workers and stuff.
42
+
43
+ * Fixed issues with too many open connections, because connections were not getting closed. BackgrounDRb now opens only one connection, which is
44
+ reused throughout the lifecycle of rails application.
45
+
46
+ * Fixed all outstanding issues with Cron triggers, BackgrounDRb now explicitly depends on "chronic" gem.
47
+
48
+ * Removed Framework directory and BackgrounDRb now explicitly depends on packet gem.
49
+
50
+
data/Gemfile ADDED
@@ -0,0 +1,11 @@
1
+ source "http://rubygems.org"
2
+
3
+ gem 'chronic', '>= 0.2.3'
4
+ gem 'packet', '0.1.15'
5
+
6
+ group :development do
7
+ gem "shoulda", ">= 0"
8
+ gem "bundler", "~> 1.0.0"
9
+ gem "jeweler", "~> 1.5.1"
10
+ gem "rcov", ">= 0"
11
+ end
data/LICENSE ADDED
@@ -0,0 +1,4 @@
1
+ Copyright (c) 2007 Hemant Kumar ( mail [at] gnufied [dot] org )
2
+ Copyright (c) 2006 Ezra Zygmuntowicz and skaar[at]waste[dot]org
3
+
4
+ The Library is dual licensed under terms of Ruby License or MIT License.
data/MIT-LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2007 Hemant Kumar ( mail [at] gnufied [dot] org )
2
+ Copyright (c) 2006 Ezra Zygmuntowicz and skaar[at]waste[dot]org
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README ADDED
@@ -0,0 +1,22 @@
1
+ = BackgrounDRb
2
+
3
+ BackgrounDRb is a Ruby job server and scheduler. Its main intent is to be
4
+ used with Ruby on Rails applications for offloading long-running tasks.
5
+ Since a Rails application blocks while serving a request it is best to
6
+ move long-running tasks off into a background process that is divorced
7
+ from http request/response cycle.
8
+
9
+ This new release of BackgrounDRb is also modular and can be used without Rails so that any Ruby program or framework can use it.
10
+
11
+ Copyright (c) 2006 Ezra Zygmuntowicz,skaar[at]waste[dot]org,
12
+
13
+ Copyright (c) 2007 Hemant Kumar (gethemant [at] gmail.com )
14
+
15
+
16
+ == Usage
17
+
18
+ Install using bundler via rubygems by adding gem 'backgroundrb-rails3' to your Gemfile
19
+
20
+ and then look into http://backgroundrb.rubyforge.org for instructions (DISCLAIMER: documentation on rubyforge is for the Rails2 version of backgroundrb)
21
+
22
+ Something else here.
data/Rakefile ADDED
@@ -0,0 +1,128 @@
1
+ require 'rake'
2
+ require 'rubygems'
3
+ require 'rake/testtask'
4
+ require 'rake/rdoctask'
5
+ require 'spec/rake/spectask'
6
+ require 'rake/contrib/sshpublisher'
7
+
8
+ desc 'Default: run unit tests.'
9
+ task :default => :test
10
+
11
+ desc 'Test the backgroundrb plugin.'
12
+ Rake::TestTask.new(:test) do |t|
13
+ t.libs << 'lib'
14
+ t.pattern = 'test/**/test_*.rb'
15
+ t.verbose = true
16
+ end
17
+
18
+ desc "Run all specs"
19
+ Spec::Rake::SpecTask.new('specs') do |t|
20
+ t.spec_opts = ["--format", "specdoc"]
21
+ t.libs = ['lib', 'server/lib' ]
22
+ t.spec_files = FileList['specs/**/*_spec.rb']
23
+ end
24
+
25
+ desc "RCov"
26
+ task :rcov do
27
+ sh("rcov test/**/*.rb")
28
+ end
29
+
30
+ desc 'Generate documentation for the backgroundrb plugin.'
31
+ Rake::RDocTask.new(:rdoc) do |rdoc|
32
+ rdoc.rdoc_dir = 'doc/output/manual'
33
+ rdoc.title = 'Backgroundrb'
34
+ rdoc.options << '--line-numbers' << '--inline-source'
35
+ rdoc.rdoc_files.include('README')
36
+ rdoc.rdoc_files.include('LICENSE')
37
+ rdoc.rdoc_files.include('lib/*.rb')
38
+ rdoc.rdoc_files.include('lib/backgroundrb/*.rb')
39
+ rdoc.rdoc_files.include('server/*.rb')
40
+ rdoc.rdoc_files.include('server/lib/*.rb')
41
+ rdoc.template = 'jamis'
42
+ end
43
+
44
+ module Rake
45
+ class BackgrounDRbPublisher < SshDirPublisher
46
+ attr_reader :project, :proj_id, :user
47
+ def initialize(projname, user)
48
+ super(
49
+ "#{user}@rubyforge.org",
50
+ "/var/www/gforge-projects/backgroundrb",
51
+ "doc/output")
52
+ end
53
+ end
54
+ end
55
+
56
+ desc "Publish documentation to Rubyforge"
57
+ task :publish_rdoc => [:rdoc] do
58
+ user = ENV['RUBYFORGE_USER']
59
+ publisher = Rake::BackgrounDRbPublisher.new('backgroundrb', user)
60
+ publisher.upload
61
+ end
62
+
63
+ namespace :git do
64
+ def current_branch
65
+ branches = `git branch`
66
+ return branches.split("\n").detect {|x| x =~ /^\*/}.split(' ')[1]
67
+ end
68
+
69
+ desc "Push changes to central git repo"
70
+ task :push do
71
+ sh("git push origin master")
72
+ end
73
+
74
+ desc "update master branch"
75
+ task :up do
76
+ t_branch = current_branch
77
+ sh("git checkout master")
78
+ sh("git pull")
79
+ sh("git checkout #{t_branch}")
80
+ end
81
+
82
+ desc "rebase current branch to master"
83
+ task :rebase => [:up] do
84
+ sh("git rebase master")
85
+ end
86
+
87
+ desc "merge current branch to master"
88
+ task :merge => [:up] do
89
+ t_branch = current_branch
90
+ sh("git checkout master")
91
+ sh("git merge #{t_branch}")
92
+ sh("git checkout #{t_branch}")
93
+ end
94
+
95
+ desc "commot current branch"
96
+ task :commit => [:merge] do
97
+ t_branch = current_branch
98
+ sh("git checkout master")
99
+ sh("git push origin master")
100
+ sh("git checkout #{t_branch}")
101
+ end
102
+ end
103
+
104
+ require 'bundler'
105
+ begin
106
+ Bundler.setup(:default, :development)
107
+ rescue Bundler::BundlerError => e
108
+ $stderr.puts e.message
109
+ $stderr.puts "Run `bundle install` to install missing gems"
110
+ exit e.status_code
111
+ end
112
+
113
+ require 'jeweler'
114
+ Jeweler::Tasks.new do |gem|
115
+ gem.name = "backgroundrb-rails3"
116
+ gem.homepage = "http://github.com/mtylty/backgroundrb-rails3"
117
+ gem.license = "MIT"
118
+ gem.summary = %Q{BackgrounDRb is a Ruby job server and scheduler.}
119
+ gem.description = %Q{
120
+ BackgrounDRb is a Ruby job server and scheduler. Its main intent is to be used with Ruby on Rails applications for offloading long-running tasks.
121
+ Since a Rails application blocks while serving a request it is best to move long-running tasks off into a background process that is divorced from http request/response cycle.}
122
+ gem.email = "mtylty@gmail.com"
123
+ gem.authors = ["Matteo Latini"]
124
+ gem.version = "1.1"
125
+ gem.add_dependency 'chronic', '>= 0.2.3'
126
+ gem.add_dependency 'packet', '>= 0.1.15'
127
+ end
128
+ Jeweler::RubygemsDotOrgTasks.new
data/TODO.org ADDED
@@ -0,0 +1,5 @@
1
+ * Todo related with new version *
2
+ - write docs for new :schedule_at
3
+ - docs for disabling job queue checks
4
+ - more documentation for job queue
5
+ - Check for job table migration (need internet)
@@ -0,0 +1,6 @@
1
+ class BackgroundrbStatusController < ApplicationController
2
+ def index
3
+ status = MiddleMan.all_worker_info
4
+ render :text => status
5
+ end
6
+ end
@@ -0,0 +1,219 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{backgroundrb-rails3}
8
+ s.version = "1.1"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Matteo Latini"]
12
+ s.date = %q{2010-12-14}
13
+ s.description = %q{
14
+ BackgrounDRb is a Ruby job server and scheduler. Its main intent is to be used with Ruby on Rails applications for offloading long-running tasks.
15
+ Since a Rails application blocks while serving a request it is best to move long-running tasks off into a background process that is divorced from http request/response cycle.}
16
+ s.email = %q{mtylty@gmail.com}
17
+ s.extra_rdoc_files = [
18
+ "ChangeLog",
19
+ "LICENSE",
20
+ "README"
21
+ ]
22
+ s.files = [
23
+ ".autotest",
24
+ "ChangeLog",
25
+ "Gemfile",
26
+ "LICENSE",
27
+ "MIT-LICENSE",
28
+ "README",
29
+ "Rakefile",
30
+ "TODO.org",
31
+ "app/controller/backgroundrb_status_controller.rb",
32
+ "backgroundrb-rails3.gemspec",
33
+ "config/backgroundrb.yml",
34
+ "doc/Rakefile",
35
+ "doc/config.yaml",
36
+ "doc/content/advanced/advanced.txt",
37
+ "doc/content/advanced/advanced.yaml",
38
+ "doc/content/bugs/bugs.txt",
39
+ "doc/content/bugs/bugs.yaml",
40
+ "doc/content/community/community.txt",
41
+ "doc/content/community/community.yaml",
42
+ "doc/content/content.txt",
43
+ "doc/content/content.yaml",
44
+ "doc/content/faq/faq.txt",
45
+ "doc/content/faq/faq.yaml",
46
+ "doc/content/rails/rails.txt",
47
+ "doc/content/rails/rails.yaml",
48
+ "doc/content/scheduling/scheduling.txt",
49
+ "doc/content/scheduling/scheduling.yaml",
50
+ "doc/content/workers/workers.txt",
51
+ "doc/content/workers/workers.yaml",
52
+ "doc/layouts/default/default.erb",
53
+ "doc/layouts/default/default.yaml",
54
+ "doc/lib/default.rb",
55
+ "doc/output/Assets/BG-Ad-Top.png",
56
+ "doc/output/Assets/BG-Body.png",
57
+ "doc/output/Assets/BG-Feed.png",
58
+ "doc/output/Assets/BG-Menu-Hover.png",
59
+ "doc/output/Assets/BG-Menu.png",
60
+ "doc/output/Assets/BG-Sidebar-Bottom.png",
61
+ "doc/output/Assets/Button-Feed.png",
62
+ "doc/output/images/bg-ad-top.png",
63
+ "doc/output/images/bg-body.png",
64
+ "doc/output/images/bg-feed.gif",
65
+ "doc/output/images/bg-footer.jpg",
66
+ "doc/output/images/bg-header.jpg",
67
+ "doc/output/images/bg-menu-hover.png",
68
+ "doc/output/images/bg-menu.png",
69
+ "doc/output/images/bg-sidebar-bottom.gif",
70
+ "doc/output/images/button-feed.png",
71
+ "doc/output/images/icon-comment.png",
72
+ "doc/output/images/more_icon.gif",
73
+ "doc/output/style.css",
74
+ "doc/page_defaults.yaml",
75
+ "doc/tasks/default.rake",
76
+ "doc/templates/default/default.txt",
77
+ "doc/templates/default/default.yaml",
78
+ "examples/backgroundrb.yml",
79
+ "examples/foo_controller.rb",
80
+ "examples/god_worker.rb",
81
+ "examples/worker_tests/god_worker_test.rb",
82
+ "examples/workers/error_worker.rb",
83
+ "examples/workers/foo_worker.rb",
84
+ "examples/workers/god_worker.rb",
85
+ "examples/workers/model_worker.rb",
86
+ "examples/workers/renewal_worker.rb",
87
+ "examples/workers/rss_worker.rb",
88
+ "examples/workers/server_worker.rb",
89
+ "examples/workers/world_worker.rb",
90
+ "examples/workers/xmpp_worker.rb",
91
+ "init.rb",
92
+ "install.rb",
93
+ "know_issues.org",
94
+ "lib/backgroundrb.rb",
95
+ "lib/backgroundrb/bdrb_client_helper.rb",
96
+ "lib/backgroundrb/bdrb_cluster_connection.rb",
97
+ "lib/backgroundrb/bdrb_config.rb",
98
+ "lib/backgroundrb/bdrb_conn_error.rb",
99
+ "lib/backgroundrb/bdrb_connection.rb",
100
+ "lib/backgroundrb/bdrb_job_queue.rb",
101
+ "lib/backgroundrb/bdrb_result.rb",
102
+ "lib/backgroundrb/bdrb_start_stop.rb",
103
+ "lib/backgroundrb/rails_worker_proxy.rb",
104
+ "lib/backgroundrb/railtie.rb",
105
+ "lib/generators/backgroundrb/bdrb_migration/USAGE",
106
+ "lib/generators/backgroundrb/bdrb_migration/bdrb_migration_generator.rb",
107
+ "lib/generators/backgroundrb/bdrb_migration/templates/migration.rb",
108
+ "lib/generators/backgroundrb/worker/USAGE",
109
+ "lib/generators/backgroundrb/worker/templates/unit_test.rb",
110
+ "lib/generators/backgroundrb/worker/templates/worker.rb",
111
+ "lib/generators/backgroundrb/worker/worker_generator.rb",
112
+ "lib/tasks/backgroundrb_tasks.rake",
113
+ "release_notes.org",
114
+ "release_points.org",
115
+ "script/backgroundrb",
116
+ "script/bdrb_test_helper.rb",
117
+ "script/load_worker_env.rb",
118
+ "script/monitrc",
119
+ "server/backgroundrb_server.rb",
120
+ "server/lib/bdrb_result_storage.rb",
121
+ "server/lib/bdrb_server_helper.rb",
122
+ "server/lib/bdrb_thread_pool.rb",
123
+ "server/lib/cron_trigger.rb",
124
+ "server/lib/invalid_dump_error.rb",
125
+ "server/lib/log_worker.rb",
126
+ "server/lib/master_proxy.rb",
127
+ "server/lib/master_worker.rb",
128
+ "server/lib/meta_worker.rb",
129
+ "server/lib/trigger.rb",
130
+ "test/bdrb_client_test_helper.rb",
131
+ "test/bdrb_test_helper.rb",
132
+ "test/client/backgroundrb.yml",
133
+ "test/client/test_bdrb_client_helper.rb",
134
+ "test/client/test_bdrb_cluster_connection.rb",
135
+ "test/client/test_bdrb_config.rb",
136
+ "test/client/test_bdrb_connection.rb",
137
+ "test/client/test_bdrb_job_queue.rb",
138
+ "test/client/test_worker_proxy.rb",
139
+ "test/server/test_cron_trigger.rb",
140
+ "test/server/test_master_proxy.rb",
141
+ "test/server/test_master_worker.rb",
142
+ "test/server/test_meta_worker.rb",
143
+ "test/server/test_result_storage.rb",
144
+ "test/socket_mocker.rb",
145
+ "test/workers/bar_worker.rb",
146
+ "test/workers/foo_worker.rb",
147
+ "uninstall.rb"
148
+ ]
149
+ s.homepage = %q{http://github.com/mtylty/backgroundrb-rails3}
150
+ s.licenses = ["MIT"]
151
+ s.require_paths = ["lib"]
152
+ s.rubygems_version = %q{1.3.7}
153
+ s.summary = %q{BackgrounDRb is a Ruby job server and scheduler.}
154
+ s.test_files = [
155
+ "examples/foo_controller.rb",
156
+ "examples/god_worker.rb",
157
+ "examples/worker_tests/god_worker_test.rb",
158
+ "examples/workers/error_worker.rb",
159
+ "examples/workers/foo_worker.rb",
160
+ "examples/workers/god_worker.rb",
161
+ "examples/workers/model_worker.rb",
162
+ "examples/workers/renewal_worker.rb",
163
+ "examples/workers/rss_worker.rb",
164
+ "examples/workers/server_worker.rb",
165
+ "examples/workers/world_worker.rb",
166
+ "examples/workers/xmpp_worker.rb",
167
+ "test/bdrb_client_test_helper.rb",
168
+ "test/bdrb_test_helper.rb",
169
+ "test/client/test_bdrb_client_helper.rb",
170
+ "test/client/test_bdrb_cluster_connection.rb",
171
+ "test/client/test_bdrb_config.rb",
172
+ "test/client/test_bdrb_connection.rb",
173
+ "test/client/test_bdrb_job_queue.rb",
174
+ "test/client/test_worker_proxy.rb",
175
+ "test/server/test_cron_trigger.rb",
176
+ "test/server/test_master_proxy.rb",
177
+ "test/server/test_master_worker.rb",
178
+ "test/server/test_meta_worker.rb",
179
+ "test/server/test_result_storage.rb",
180
+ "test/socket_mocker.rb",
181
+ "test/workers/bar_worker.rb",
182
+ "test/workers/foo_worker.rb"
183
+ ]
184
+
185
+ if s.respond_to? :specification_version then
186
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
187
+ s.specification_version = 3
188
+
189
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
190
+ s.add_runtime_dependency(%q<chronic>, [">= 0.2.3"])
191
+ s.add_runtime_dependency(%q<packet>, ["= 0.1.15"])
192
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
193
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
194
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
195
+ s.add_development_dependency(%q<rcov>, [">= 0"])
196
+ s.add_runtime_dependency(%q<chronic>, [">= 0.2.3"])
197
+ s.add_runtime_dependency(%q<packet>, [">= 0.1.15"])
198
+ else
199
+ s.add_dependency(%q<chronic>, [">= 0.2.3"])
200
+ s.add_dependency(%q<packet>, ["= 0.1.15"])
201
+ s.add_dependency(%q<shoulda>, [">= 0"])
202
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
203
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
204
+ s.add_dependency(%q<rcov>, [">= 0"])
205
+ s.add_dependency(%q<chronic>, [">= 0.2.3"])
206
+ s.add_dependency(%q<packet>, [">= 0.1.15"])
207
+ end
208
+ else
209
+ s.add_dependency(%q<chronic>, [">= 0.2.3"])
210
+ s.add_dependency(%q<packet>, ["= 0.1.15"])
211
+ s.add_dependency(%q<shoulda>, [">= 0"])
212
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
213
+ s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
214
+ s.add_dependency(%q<rcov>, [">= 0"])
215
+ s.add_dependency(%q<chronic>, [">= 0.2.3"])
216
+ s.add_dependency(%q<packet>, [">= 0.1.15"])
217
+ end
218
+ end
219
+