Class: Hivehook::Resources::StreamConsumerService
- Inherits:
-
BaseService
- Object
- BaseService
- Hivehook::Resources::StreamConsumerService
- Defined in:
- lib/hivehook/resources/stream_consumer_service.rb
Constant Summary collapse
- FRAGMENT =
"id streamId name cursorSequence createdAt updatedAt"
Instance Method Summary collapse
- #advance_cursor(id, sequence) ⇒ Object
- #create(input) ⇒ Object
- #delete(id) ⇒ Object
- #get(id) ⇒ Object
- #list(stream_id, options = {}) ⇒ Object
Methods inherited from BaseService
Constructor Details
This class inherits a constructor from Hivehook::Resources::BaseService
Instance Method Details
#advance_cursor(id, sequence) ⇒ Object
34 35 36 37 |
# File 'lib/hivehook/resources/stream_consumer_service.rb', line 34 def advance_cursor(id, sequence) query = "mutation($id: UUID!, $sequence: Int!) { advanceConsumerCursor(id: $id, sequence: $sequence) { #{FRAGMENT} } }" @transport.execute(query, { "id" => id, "sequence" => sequence })["advanceConsumerCursor"] end |
#create(input) ⇒ Object
24 25 26 27 |
# File 'lib/hivehook/resources/stream_consumer_service.rb', line 24 def create(input) query = "mutation($input: CreateStreamConsumerInput!) { createStreamConsumer(input: $input) { #{FRAGMENT} } }" @transport.execute(query, { "input" => input })["createStreamConsumer"] end |
#delete(id) ⇒ Object
29 30 31 32 |
# File 'lib/hivehook/resources/stream_consumer_service.rb', line 29 def delete(id) query = "mutation($id: UUID!) { deleteStreamConsumer(id: $id) }" @transport.execute(query, { "id" => id })["deleteStreamConsumer"] end |
#get(id) ⇒ Object
19 20 21 22 |
# File 'lib/hivehook/resources/stream_consumer_service.rb', line 19 def get(id) query = "query($id: UUID!) { streamConsumer(id: $id) { #{FRAGMENT} } }" @transport.execute(query, { "id" => id })["streamConsumer"] end |
#list(stream_id, options = {}) ⇒ Object
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/hivehook/resources/stream_consumer_service.rb', line 8 def list(stream_id, = {}) query = "query($streamId: UUID!, $search: String, $limit: Int, $offset: Int, $after: String, $first: Int) { streamConsumers(streamId: $streamId, search: $search, limit: $limit, offset: $offset, after: $after, first: $first) { nodes { #{FRAGMENT} } pageInfo { total limit offset endCursor hasNextPage } } }" vars = { "streamId" => stream_id }.merge(build_variables(, %w[search limit offset after first])) @transport.execute(query, vars)["streamConsumers"] end |