funktor 0.4.0 → 0.4.4
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 14aab17eb93983bb955499f188016259228524db65da3ac42355b16fc9dcc6fc
|
4
|
+
data.tar.gz: f144426a8f28880f50d538c1ccff935f1df06257d948106c17d10d051584934e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 49849e8195b4724d6471035ebc914556dfee9173016532117e2e5d512196d3016eee51171aaeea55a92ec1cae35699c72d740bf3c4093be8374447eba2ef54b4
|
7
|
+
data.tar.gz: daff2109c7cbaa42075f154b375a1263d5afe5ad5d74fb20169cbe051bb53e81dcb0a4328f012642358e5c9467f4dfe0d4e74315ce2d2f5e594db4e3af2b7009
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
funktor (0.
|
4
|
+
funktor (0.4.4)
|
5
5
|
activesupport
|
6
6
|
aws-sdk-sqs (~> 1.37)
|
7
7
|
thor
|
@@ -21,14 +21,14 @@ GEM
|
|
21
21
|
addressable (2.7.0)
|
22
22
|
public_suffix (>= 2.0.2, < 5.0)
|
23
23
|
aws-eventstream (1.1.1)
|
24
|
-
aws-partitions (1.
|
25
|
-
aws-sdk-core (3.
|
24
|
+
aws-partitions (1.482.0)
|
25
|
+
aws-sdk-core (3.119.0)
|
26
26
|
aws-eventstream (~> 1, >= 1.0.2)
|
27
27
|
aws-partitions (~> 1, >= 1.239.0)
|
28
28
|
aws-sigv4 (~> 1.1)
|
29
29
|
jmespath (~> 1.0)
|
30
|
-
aws-sdk-sqs (1.
|
31
|
-
aws-sdk-core (~> 3, >= 3.
|
30
|
+
aws-sdk-sqs (1.42.0)
|
31
|
+
aws-sdk-core (~> 3, >= 3.119.0)
|
32
32
|
aws-sigv4 (~> 1.1)
|
33
33
|
aws-sigv4 (1.2.4)
|
34
34
|
aws-eventstream (~> 1, >= 1.0.2)
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'active_job'
|
4
|
+
require "funktor/worker/funktor_options"
|
4
5
|
|
5
6
|
module ActiveJob
|
6
7
|
module QueueAdapters
|
@@ -15,17 +16,22 @@ module ActiveJob
|
|
15
16
|
"worker" => JobWrapper.to_s,
|
16
17
|
"wrapped" => job.class,
|
17
18
|
"queue" => job.class.work_queue,
|
18
|
-
"
|
19
|
+
"delay" => 0,
|
20
|
+
"worker_params" => job.serialize
|
19
21
|
})
|
20
22
|
end
|
21
23
|
|
22
24
|
def enqueue_at(job, timestamp) # :nodoc:
|
25
|
+
delay = (Time.at(timestamp).utc - Time.now.utc).round
|
26
|
+
if delay < 0
|
27
|
+
delay = 0
|
28
|
+
end
|
23
29
|
job.provider_job_id = Funktor.job_pusher.push({
|
24
30
|
"worker" => JobWrapper.to_s,
|
25
31
|
"wrapped" => job.class,
|
26
32
|
"queue" => job.class.work_queue,
|
27
|
-
"
|
28
|
-
"
|
33
|
+
"delay" => delay,
|
34
|
+
"worker_params" => job.serialize
|
29
35
|
})
|
30
36
|
end
|
31
37
|
|
@@ -33,7 +39,9 @@ module ActiveJob
|
|
33
39
|
include Funktor::Worker
|
34
40
|
|
35
41
|
def perform(job_data)
|
36
|
-
|
42
|
+
puts "job_data = #{job_data.class}"
|
43
|
+
puts job_data
|
44
|
+
Base.execute job_data
|
37
45
|
end
|
38
46
|
end
|
39
47
|
end
|
data/lib/funktor/job.rb
CHANGED
@@ -38,7 +38,7 @@ module Funktor
|
|
38
38
|
# TODO - In Funktor Pro we need to override this method (or do something else) so that
|
39
39
|
# we can schedule jobs farther in the future than 15 minutes. We do this here in case a
|
40
40
|
# retry sequence goes too long.
|
41
|
-
jdelay = job_data["delay"]
|
41
|
+
jdelay = job_data["delay"] || 0
|
42
42
|
return jdelay < 900 ? jdelay : 900
|
43
43
|
end
|
44
44
|
|
data/lib/funktor/rails.rb
CHANGED
data/lib/funktor/version.rb
CHANGED