Class: NATS::JetStream::API::ConsumerConfig

Inherits:
Struct
  • Object
show all
Defined in:
lib/nats/io/js.rb

Overview

ConsumerConfig is the consumer configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(opts = {}) ⇒ ConsumerConfig

Returns a new instance of ConsumerConfig.



1240
1241
1242
1243
1244
1245
# File 'lib/nats/io/js.rb', line 1240

def initialize(opts={})
  # Filter unrecognized fields just in case.
  rem = opts.keys - members
  opts.delete_if { |k| rem.include?(k) }
  super(opts)
end

Instance Attribute Details

#ack_policyString

Returns:

  • (String)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#ack_waitInteger

Returns:

  • (Integer)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#backoffObject

Returns the value of attribute backoff

Returns:

  • (Object)

    the current value of backoff



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def backoff
  @backoff
end

#deliver_groupObject

Returns the value of attribute deliver_group

Returns:

  • (Object)

    the current value of deliver_group



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def deliver_group
  @deliver_group
end

#deliver_policyString

Returns:

  • (String)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#deliver_subjectObject

Returns the value of attribute deliver_subject

Returns:

  • (Object)

    the current value of deliver_subject



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def deliver_subject
  @deliver_subject
end

#descriptionObject

Returns the value of attribute description

Returns:

  • (Object)

    the current value of description



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def description
  @description
end

#durable_nameString

Returns:

  • (String)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#filter_subjectObject

Returns the value of attribute filter_subject

Returns:

  • (Object)

    the current value of filter_subject



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def filter_subject
  @filter_subject
end

#flow_controlObject

Returns the value of attribute flow_control

Returns:

  • (Object)

    the current value of flow_control



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def flow_control
  @flow_control
end

#headers_onlyObject

Returns the value of attribute headers_only

Returns:

  • (Object)

    the current value of headers_only



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def headers_only
  @headers_only
end

#idle_heartbeatObject

Returns the value of attribute idle_heartbeat

Returns:

  • (Object)

    the current value of idle_heartbeat



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def idle_heartbeat
  @idle_heartbeat
end

#inactive_thresholdObject

Returns the value of attribute inactive_threshold

Returns:

  • (Object)

    the current value of inactive_threshold



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def inactive_threshold
  @inactive_threshold
end

#max_ack_pendingInteger

Returns:

  • (Integer)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#max_batchObject

Returns the value of attribute max_batch

Returns:

  • (Object)

    the current value of max_batch



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def max_batch
  @max_batch
end

#max_deliverInteger

Returns:

  • (Integer)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#max_expiresObject

Returns the value of attribute max_expires

Returns:

  • (Object)

    the current value of max_expires



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def max_expires
  @max_expires
end

#max_waitingInteger

Returns:

  • (Integer)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#mem_storageObject

Returns the value of attribute mem_storage

Returns:

  • (Object)

    the current value of mem_storage



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def mem_storage
  @mem_storage
end

#nameObject

Returns the value of attribute name

Returns:

  • (Object)

    the current value of name



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def name
  @name
end

#num_replicasObject

Returns the value of attribute num_replicas

Returns:

  • (Object)

    the current value of num_replicas



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def num_replicas
  @num_replicas
end

#opt_start_seqObject

Returns the value of attribute opt_start_seq

Returns:

  • (Object)

    the current value of opt_start_seq



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def opt_start_seq
  @opt_start_seq
end

#opt_start_timeObject

Returns the value of attribute opt_start_time

Returns:

  • (Object)

    the current value of opt_start_time



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def opt_start_time
  @opt_start_time
end

#rate_limit_bpsObject

Returns the value of attribute rate_limit_bps

Returns:

  • (Object)

    the current value of rate_limit_bps



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def rate_limit_bps
  @rate_limit_bps
end

#replay_policyString

Returns:

  • (String)


1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
# File 'lib/nats/io/js.rb', line 1221

ConsumerConfig = Struct.new(:name, :durable_name, :description,
                            :deliver_policy, :opt_start_seq, :opt_start_time,
                            :ack_policy, :ack_wait, :max_deliver, :backoff,
                            :filter_subject, :replay_policy, :rate_limit_bps,
                            :sample_freq, :max_waiting, :max_ack_pending,
                            :flow_control, :idle_heartbeat, :headers_only,

                            # Pull based options
                            :max_batch, :max_expires,
                            # Push based consumers
                            :deliver_subject, :deliver_group,
                            # Ephemeral inactivity threshold
                            :inactive_threshold,
                            # Generally inherited by parent stream and other markers,
                            # now can be configured directly.
                            :num_replicas,
                            # Force memory storage
                            :mem_storage,
                            keyword_init: true) do
  def initialize(opts={})
    # Filter unrecognized fields just in case.
    rem = opts.keys - members
    opts.delete_if { |k| rem.include?(k) }
    super(opts)
  end

  def to_json(*args)
    config = self.to_h
    config.delete_if { |_k, v| v.nil? }
    config.to_json(*args)
  end
end

#sample_freqObject

Returns the value of attribute sample_freq

Returns:

  • (Object)

    the current value of sample_freq



1221
1222
1223
# File 'lib/nats/io/js.rb', line 1221

def sample_freq
  @sample_freq
end

Instance Method Details

#to_json(*args) ⇒ Object



1247
1248
1249
1250
1251
# File 'lib/nats/io/js.rb', line 1247

def to_json(*args)
  config = self.to_h
  config.delete_if { |_k, v| v.nil? }
  config.to_json(*args)
end