-
-
Notifications
You must be signed in to change notification settings - Fork 278
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: refactor redis_script into script
- Loading branch information
Showing
13 changed files
with
53 additions
and
80 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,46 @@ | ||
# frozen_string_literal: true | ||
|
||
require "sidekiq_unique_jobs/script/template" | ||
require "sidekiq_unique_jobs/script/lua_error" | ||
require "sidekiq_unique_jobs/script/script" | ||
require "sidekiq_unique_jobs/script/scripts" | ||
require "sidekiq_unique_jobs/script/config" | ||
require "sidekiq_unique_jobs/script/timing" | ||
require "sidekiq_unique_jobs/script/logging" | ||
require "sidekiq_unique_jobs/script/dsl" | ||
require "sidekiq_unique_jobs/script/client" | ||
|
||
module SidekiqUniqueJobs | ||
# Interface to dealing with .lua files | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
module Script | ||
include SidekiqUniqueJobs::RedisScript::DSL | ||
include SidekiqUniqueJobs::Script::DSL | ||
|
||
configure do |config| | ||
config.scripts_path = Pathname.new(__FILE__).dirname.join("lua") | ||
config.logger = Sidekiq.logger # TODO: This becomes a little weird | ||
end | ||
|
||
# | ||
# The current logger | ||
# | ||
# | ||
# @return [Logger] the configured logger | ||
# | ||
def self.logger | ||
config.logger | ||
end | ||
|
||
# | ||
# Set a new logger | ||
# | ||
# @param [Logger] other another logger | ||
# | ||
# @return [Logger] the new logger | ||
# | ||
def self.logger=(other) | ||
config.logger = other | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,12 @@ | ||
# frozen_string_literal: true | ||
# frozen_string_literal: true | ||
|
||
module SidekiqUniqueJobs | ||
module RedisScript | ||
module Script | ||
# Interface to dealing with .lua files | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
class Client | ||
include SidekiqUniqueJobs::RedisScript::Timing | ||
include SidekiqUniqueJobs::Script::Timing | ||
|
||
# | ||
# @!attribute [r] logger | ||
|
@@ -47,7 +47,7 @@ def execute(script_name, conn, keys: [], argv: []) | |
|
||
logger.debug("Executed #{script_name}.lua in #{elapsed}ms") | ||
result | ||
rescue ::Redis::CommandError => ex | ||
rescue ::RedisClient::CommandError => ex | ||
handle_error(script_name, conn, ex) do | ||
execute(script_name, conn, keys: keys, argv: argv) | ||
end | ||
|
@@ -58,7 +58,7 @@ def execute(script_name, conn, keys: [], argv: []) | |
# | ||
# Handle errors to allow retrying errors that need retrying | ||
# | ||
# @param [Redis::CommandError] ex exception to handle | ||
# @param [RedisClient::CommandError] ex exception to handle | ||
# | ||
# @return [void] | ||
# | ||
|
@@ -84,7 +84,7 @@ def handle_noscript(script_name) | |
|
||
def handle_busy(conn) | ||
scripts.kill(conn) | ||
rescue ::Redis::CommandError => ex | ||
rescue ::RedisClient::CommandError => ex | ||
logger.warn(ex) | ||
ensure | ||
yield | ||
|
4 changes: 2 additions & 2 deletions
4
...idekiq_unique_jobs/redis_script/config.rb → lib/sidekiq_unique_jobs/script/config.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
# frozen_string_literal: true | ||
|
||
module SidekiqUniqueJobs | ||
module RedisScript | ||
module Script | ||
# Interface to dealing with .lua files | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
|
@@ -21,7 +21,7 @@ def self.included(base) | |
# | ||
module ClassMethods | ||
def execute(file_name, conn, keys: [], argv: []) | ||
SidekiqUniqueJobs::RedisScript::Client | ||
SidekiqUniqueJobs::Script::Client | ||
.new(config) | ||
.execute(file_name, conn, keys: keys, argv: argv) | ||
end | ||
|
@@ -47,7 +47,7 @@ def configure(options = {}) | |
# The current configuration (See: {.configure} on how to configure) | ||
# | ||
# | ||
# @return [RedisScript::Config] the gem configuration | ||
# @return [Script::Config] the gem configuration | ||
# | ||
def config | ||
MUTEX.synchronize do | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
# frozen_string_literal: true | ||
|
||
module SidekiqUniqueJobs | ||
module RedisScript | ||
module Script | ||
# Utility module for reducing the number of uses of logger. | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
|
@@ -13,12 +13,12 @@ def self.included(base) | |
# | ||
# A convenience method for using the configured gem logger | ||
# | ||
# @see RedisScript#.logger | ||
# @see Script#.logger | ||
# | ||
# @return [Logger] | ||
# | ||
def logger | ||
SidekiqUniqueJobs::RedisScript.logger | ||
SidekiqUniqueJobs::Script.logger | ||
end | ||
|
||
# | ||
|
2 changes: 1 addition & 1 deletion
2
...kiq_unique_jobs/redis_script/lua_error.rb → lib/sidekiq_unique_jobs/script/lua_error.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
...idekiq_unique_jobs/redis_script/script.rb → lib/sidekiq_unique_jobs/script/script.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
# frozen_string_literal: true | ||
|
||
module SidekiqUniqueJobs | ||
module RedisScript | ||
module Script | ||
# Interface to dealing with .lua files | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
|
2 changes: 1 addition & 1 deletion
2
...dekiq_unique_jobs/redis_script/scripts.rb → lib/sidekiq_unique_jobs/script/scripts.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
# frozen_string_literal: true | ||
|
||
module SidekiqUniqueJobs | ||
module RedisScript | ||
module Script | ||
# Interface to dealing with .lua files | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,7 +4,7 @@ module SidekiqUniqueJobs | |
# Interface to dealing with .lua files | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
module RedisScript | ||
module Script | ||
# | ||
# Class Template provides LUA script partial template rendering | ||
# | ||
|
2 changes: 1 addition & 1 deletion
2
...idekiq_unique_jobs/redis_script/timing.rb → lib/sidekiq_unique_jobs/script/timing.rb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
# frozen_string_literal: true | ||
|
||
module SidekiqUniqueJobs | ||
module RedisScript | ||
module Script | ||
# Handles timing> of things | ||
# | ||
# @author Mikael Henriksson <[email protected]> | ||
|