Class: RedisStream::Group

Inherits:
Object
  • Object
show all
Defined in:
lib/redis_stream/group.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, stream:) ⇒ Object

Returns RedisStream::Group.

Parameters:



8
9
10
11
12
13
# File 'lib/redis_stream/group.rb', line 8

def initialize(name:, stream:)
  @name = name
  @stream = stream

  create_group
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



3
4
5
# File 'lib/redis_stream/group.rb', line 3

def name
  @name
end

#streamObject (readonly)

Returns the value of attribute stream.



3
4
5
# File 'lib/redis_stream/group.rb', line 3

def stream
  @stream
end

Instance Method Details

#consumer(name) ⇒ RedisStream::Consumer

Parameters:

  • name (String)

    Consumer name

Returns:



17
18
19
# File 'lib/redis_stream/group.rb', line 17

def consumer(name)
  RedisStream::Consumer.new(name: name, group: self, stream: stream)
end

#reset(id = "0") ⇒ Object

Resets group’s next id on the stream



22
23
24
25
# File 'lib/redis_stream/group.rb', line 22

def reset(id = "0")
  Redis.current.xgroup(:setid, stream.name, name, id)
  self
end