Class: JobWorkflow::QueueAdapters::Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/job_workflow/queue_adapters/abstract.rb,
sig/generated/job_workflow/queue_adapters/abstract.rbs

Overview

rubocop:disable Naming/PredicateMethod

Direct Known Subclasses

NullAdapter, SolidQueueAdapter

Instance Method Summary collapse

Instance Method Details

#clear_queue(_queue_name) ⇒ Boolean

: (String) -> bool

Parameters:

  • (String)

Returns:

  • (Boolean)


71
72
73
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 71

def clear_queue(_queue_name)
  raise NotImplementedError, "#{self.class}#clear_queue must be implemented"
end

#fetch_job_contexts(_job_ids) ⇒ Array[Hash[String, untyped]]

: (Array) -> Array[Hash[String, untyped]]

Parameters:

  • (Array[String])

Returns:

  • (Array[Hash[String, untyped]])


86
87
88
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 86

def fetch_job_contexts(_job_ids)
  raise NotImplementedError, "#{self.class}#fetch_job_contexts must be implemented"
end

#fetch_job_statuses(job_ids) ⇒ Hash[String, untyped]

: (Array) -> Hash[String, untyped]

Parameters:

  • (Array[String])

Returns:

  • (Hash[String, untyped])


26
27
28
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 26

def fetch_job_statuses(job_ids)
  raise NotImplementedError, "#{self.class}#fetch_job_statuses must be implemented"
end

#fetch_root_workflow_job_page(job_class_name:, limit:, cursor:) ⇒ Hash[Symbol, untyped]

: (job_class_name: String, limit: Integer, cursor: String?) -> Hash[Symbol, untyped]

Parameters:

  • job_class_name: (String)
  • limit: (Integer)
  • cursor: (String, nil)

Returns:

  • (Hash[Symbol, untyped])


81
82
83
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 81

def fetch_root_workflow_job_page(job_class_name:, limit:, cursor:)
  raise NotImplementedError, "#{self.class}#fetch_root_workflow_job_page must be implemented"
end

#find_job(_job_id) ⇒ Hash[String, untyped]?

: (String) -> Hash[String, untyped]?

Parameters:

  • (String)

Returns:

  • (Hash[String, untyped], nil)


76
77
78
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 76

def find_job(_job_id)
  raise NotImplementedError, "#{self.class}#find_job must be implemented"
end

#initialize_adapter!void

This method returns an undefined value.

: () -> void



8
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 8

def initialize_adapter!; end

#job_status(job) ⇒ Symbol

: (untyped) -> Symbol

Parameters:

  • (Object)

Returns:

  • (Symbol)


31
32
33
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 31

def job_status(job)
  raise NotImplementedError, "#{self.class}#job_status must be implemented"
end

#pause_queue(_queue_name) ⇒ Boolean

: (String) -> bool

Parameters:

  • (String)

Returns:

  • (Boolean)


41
42
43
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 41

def pause_queue(_queue_name)
  raise NotImplementedError, "#{self.class}#pause_queue must be implemented"
end

#paused_queuesArray[String]

: () -> Array

Returns:

  • (Array[String])


56
57
58
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 56

def paused_queues
  raise NotImplementedError, "#{self.class}#paused_queues must be implemented"
end

#persist_job_context(_job) ⇒ void

This method returns an undefined value.

: (_JobInterface) -> void

Parameters:

  • (_JobInterface)


96
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 96

def persist_job_context(_job); end

#queue_latency(_queue_name) ⇒ Integer?

: (String) -> Integer?

Parameters:

  • (String)

Returns:

  • (Integer, nil)


61
62
63
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 61

def queue_latency(_queue_name)
  raise NotImplementedError, "#{self.class}#queue_latency must be implemented"
end

#queue_paused?(_queue_name) ⇒ Boolean

: (String) -> bool

Parameters:

  • (String)

Returns:

  • (Boolean)


51
52
53
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 51

def queue_paused?(_queue_name)
  raise NotImplementedError, "#{self.class}#queue_paused? must be implemented"
end

#queue_size(_queue_name) ⇒ Integer

: (String) -> Integer

Parameters:

  • (String)

Returns:

  • (Integer)


66
67
68
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 66

def queue_size(_queue_name)
  raise NotImplementedError, "#{self.class}#queue_size must be implemented"
end

#reschedule_job(_job, _wait) ⇒ Boolean

: (_JobInterface, Numeric) -> bool

Parameters:

  • (_JobInterface)
  • (Numeric)

Returns:

  • (Boolean)


91
92
93
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 91

def reschedule_job(_job, _wait)
  false
end

#resume_queue(_queue_name) ⇒ Boolean

: (String) -> bool

Parameters:

  • (String)

Returns:

  • (Boolean)


46
47
48
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 46

def resume_queue(_queue_name)
  raise NotImplementedError, "#{self.class}#resume_queue must be implemented"
end

#semaphore_available?Boolean

: () -> bool

Returns:

  • (Boolean)


11
12
13
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 11

def semaphore_available?
  raise NotImplementedError, "#{self.class}#semaphore_available? must be implemented"
end

#semaphore_signal(semaphore) ⇒ Boolean

: (Semaphore) -> bool

Parameters:

Returns:

  • (Boolean)


21
22
23
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 21

def semaphore_signal(semaphore)
  raise NotImplementedError, "#{self.class}#semaphore_signal must be implemented"
end

#semaphore_wait(semaphore) ⇒ Boolean

: (Semaphore) -> bool

Parameters:

Returns:

  • (Boolean)


16
17
18
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 16

def semaphore_wait(semaphore)
  raise NotImplementedError, "#{self.class}#semaphore_wait must be implemented"
end

#supports_concurrency_limits?Boolean

: () -> bool

Returns:

  • (Boolean)


36
37
38
# File 'lib/job_workflow/queue_adapters/abstract.rb', line 36

def supports_concurrency_limits?
  raise NotImplementedError, "#{self.class}#supports_concurrency_limits? must be implemented"
end