rocketjob 6.0.0.rc3 → 6.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +26 -0
  3. data/lib/rocket_job/batch/categories.rb +24 -20
  4. data/lib/rocket_job/batch/io.rb +128 -128
  5. data/lib/rocket_job/batch/worker.rb +14 -12
  6. data/lib/rocket_job/category/base.rb +10 -7
  7. data/lib/rocket_job/category/input.rb +61 -1
  8. data/lib/rocket_job/category/output.rb +9 -0
  9. data/lib/rocket_job/dirmon_entry.rb +1 -1
  10. data/lib/rocket_job/jobs/conversion_job.rb +21 -17
  11. data/lib/rocket_job/jobs/dirmon_job.rb +24 -35
  12. data/lib/rocket_job/jobs/housekeeping_job.rb +4 -5
  13. data/lib/rocket_job/jobs/on_demand_batch_job.rb +7 -5
  14. data/lib/rocket_job/jobs/on_demand_job.rb +2 -2
  15. data/lib/rocket_job/jobs/upload_file_job.rb +4 -0
  16. data/lib/rocket_job/plugins/cron.rb +60 -20
  17. data/lib/rocket_job/plugins/job/persistence.rb +36 -0
  18. data/lib/rocket_job/plugins/restart.rb +3 -110
  19. data/lib/rocket_job/plugins/state_machine.rb +2 -2
  20. data/lib/rocket_job/plugins/throttle_dependent_jobs.rb +1 -2
  21. data/lib/rocket_job/sliced/bzip2_output_slice.rb +18 -19
  22. data/lib/rocket_job/sliced/compressed_slice.rb +3 -6
  23. data/lib/rocket_job/sliced/encrypted_bzip2_output_slice.rb +49 -0
  24. data/lib/rocket_job/sliced/encrypted_slice.rb +4 -6
  25. data/lib/rocket_job/sliced/input.rb +42 -54
  26. data/lib/rocket_job/sliced/slice.rb +7 -3
  27. data/lib/rocket_job/sliced/slices.rb +12 -9
  28. data/lib/rocket_job/sliced/writer/input.rb +46 -18
  29. data/lib/rocket_job/sliced.rb +1 -19
  30. data/lib/rocket_job/version.rb +1 -1
  31. data/lib/rocketjob.rb +2 -2
  32. metadata +8 -10
  33. data/lib/rocket_job/batch/tabular/input.rb +0 -133
  34. data/lib/rocket_job/batch/tabular/output.rb +0 -67
  35. data/lib/rocket_job/batch/tabular.rb +0 -58
@@ -1,58 +0,0 @@
1
- module RocketJob
2
- module Batch
3
- # Format output results.
4
- #
5
- # Takes Batch::Results, Batch::Result, Hash, Array, or String and renders it for output.
6
- #
7
- # Example:
8
- #
9
- # tabular = Tabular.new(
10
- # main: IOStreams::Tabular.new(columns: main_file_headers, format: tabular_output_format),
11
- # exceptions: IOStreams::Tabular.new(columns: exception_file_headers, format: tabular_output_format)
12
- # )
13
- #
14
- # tabular.render(row)
15
- #
16
- # @deprecated
17
- class Tabular
18
- autoload :Input, "rocket_job/batch/tabular/input"
19
- autoload :Output, "rocket_job/batch/tabular/output"
20
-
21
- def initialize(map)
22
- @map = map
23
- end
24
-
25
- def [](category = :main)
26
- @map[category] || raise("No tabular map defined for category: #{category.inspect}")
27
- end
28
-
29
- # Iterate over responses and format using Tabular
30
- def render(row, category = :main)
31
- if row.is_a?(Batch::Results)
32
- results = Batch::Results.new
33
- row.each { |result| results << render(result) }
34
- results
35
- elsif row.is_a?(Batch::Result)
36
- row.value = self[row.category].render(row.value)
37
- row
38
- elsif row.blank?
39
- nil
40
- else
41
- self[category].render(row)
42
- end
43
- end
44
-
45
- def render_header(category = :main)
46
- self[category].render_header
47
- end
48
-
49
- def requires_header?(category = :main)
50
- self[category].requires_header?
51
- end
52
-
53
- def header?(category = :main)
54
- self[category].header?
55
- end
56
- end
57
- end
58
- end