Class: AcidicJob::Serializers::WorkerSerializer

Inherits:
ActiveJob::Serializers::ObjectSerializer
  • Object
show all
Defined in:
lib/acidic_job/serializers/worker_serializer.rb

Instance Method Summary collapse

Instance Method Details

#deserialize(hash) ⇒ Object



16
17
18
19
# File 'lib/acidic_job/serializers/worker_serializer.rb', line 16

def deserialize(hash)
  worker_class = hash["job_class"].constantize
  worker_class.new(*hash["arguments"])
end

#serialize(worker) ⇒ Object



9
10
11
12
13
14
# File 'lib/acidic_job/serializers/worker_serializer.rb', line 9

def serialize(worker)
  super(
    "job_class" => worker.class.name,
    "arguments" => worker.arguments,
  )
end

#serialize?(argument) ⇒ Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/acidic_job/serializers/worker_serializer.rb', line 21

def serialize?(argument)
  defined?(::Sidekiq) && argument.class.include?(::Sidekiq::Worker)
end