Class: Sidekiq::EncryptedArgs::ServerMiddleware

Inherits:
Object
  • Object
show all
Defined in:
lib/sidekiq/encrypted_args/server_middleware.rb

Overview

Sidekiq server middleware for decrypting arguments on jobs that have encrypted args.

Instance Method Summary collapse

Instance Method Details

#call(worker, job, queue) ⇒ Object

Wrap the server process to decrypt incoming arguments



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/sidekiq/encrypted_args/server_middleware.rb', line 8

def call(worker, job, queue)
  encrypted_args = job["encrypted_args"]
  if encrypted_args
    encrypted_args = backward_compatible_encrypted_args(encrypted_args, worker.class, job)
    job_args = job["args"]
    encrypted_args.each do |position|
      value = job_args[position]
      job_args[position] = EncryptedArgs.decrypt(value)
    end
  end

  yield
end