Class: Sidekiq::SortedSet
- Inherits:
-
Object
- Object
- Sidekiq::SortedSet
- Includes:
- Enumerable
- Defined in:
- lib/sidekiq/api.rb
Overview
Base class for all sorted sets within Sidekiq.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Redis key of the set.
-
#Name ⇒ Object
readonly
Redis key of the set.
Instance Method Summary collapse
-
#as_json(options = nil) ⇒ Object
private
:nodoc:.
-
#clear ⇒ Boolean
(also: #💣)
Always true.
-
#initialize(name) ⇒ SortedSet
constructor
private
:nodoc:.
-
#scan(match, count = 100) {|each| ... } ⇒ Object
Scan through each element of the sorted set, yielding each to the supplied block.
-
#size ⇒ Object
real-time size of the set, will change.
Constructor Details
#initialize(name) ⇒ SortedSet
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
:nodoc:
615 616 617 618 |
# File 'lib/sidekiq/api.rb', line 615 def initialize(name) @name = name @_size = size end |
Instance Attribute Details
#name ⇒ Object (readonly)
Redis key of the set
611 612 613 |
# File 'lib/sidekiq/api.rb', line 611 def name @name end |
#Name ⇒ Object (readonly)
Redis key of the set
611 |
# File 'lib/sidekiq/api.rb', line 611 attr_reader :name |
Instance Method Details
#as_json(options = nil) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
:nodoc:
653 654 655 |
# File 'lib/sidekiq/api.rb', line 653 def as_json( = nil) {name: name} # 5336 end |
#clear ⇒ Boolean Also known as: 💣
Returns always true.
643 644 645 646 647 648 |
# File 'lib/sidekiq/api.rb', line 643 def clear Sidekiq.redis do |conn| conn.unlink(name) end true end |
#scan(match, count = 100) {|each| ... } ⇒ Object
Scan through each element of the sorted set, yielding each to the supplied block. Please see Redis’s <a href=“redis.io/commands/scan/”>SCAN documentation</a> for implementation details.
631 632 633 634 635 636 637 638 639 640 |
# File 'lib/sidekiq/api.rb', line 631 def scan(match, count = 100) return to_enum(:scan, match, count) unless block_given? match = "*#{match}*" unless match.include?("*") Sidekiq.redis do |conn| conn.zscan(name, match: match, count: count) do |entry, score| yield SortedEntry.new(self, score, entry) end end end |