Class: Pinot::ClientConfig
- Inherits:
-
Object
- Object
- Pinot::ClientConfig
- Defined in:
- lib/pinot/config.rb
Instance Attribute Summary collapse
-
#broker_list ⇒ Object
Returns the value of attribute broker_list.
-
#controller_config ⇒ Object
Returns the value of attribute controller_config.
-
#extra_http_header ⇒ Object
Returns the value of attribute extra_http_header.
-
#grpc_config ⇒ Object
Returns the value of attribute grpc_config.
-
#http_timeout ⇒ Object
Returns the value of attribute http_timeout.
-
#logger ⇒ Object
Returns the value of attribute logger.
-
#query_timeout_ms ⇒ Object
Returns the value of attribute query_timeout_ms.
-
#tls_config ⇒ Object
Returns the value of attribute tls_config.
-
#use_multistage_engine ⇒ Object
Returns the value of attribute use_multistage_engine.
-
#zookeeper_config ⇒ Object
Returns the value of attribute zookeeper_config.
Instance Method Summary collapse
-
#initialize(broker_list: [], http_timeout: nil, query_timeout_ms: nil, extra_http_header: {}, use_multistage_engine: false, controller_config: nil, logger: nil, tls_config: nil, grpc_config: nil, zookeeper_config: nil) ⇒ ClientConfig
constructor
A new instance of ClientConfig.
- #validate! ⇒ Object
Constructor Details
#initialize(broker_list: [], http_timeout: nil, query_timeout_ms: nil, extra_http_header: {}, use_multistage_engine: false, controller_config: nil, logger: nil, tls_config: nil, grpc_config: nil, zookeeper_config: nil) ⇒ ClientConfig
Returns a new instance of ClientConfig.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/pinot/config.rb', line 27 def initialize( broker_list: [], http_timeout: nil, query_timeout_ms: nil, extra_http_header: {}, use_multistage_engine: false, controller_config: nil, logger: nil, tls_config: nil, grpc_config: nil, zookeeper_config: nil ) @broker_list = broker_list @http_timeout = http_timeout @query_timeout_ms = query_timeout_ms @extra_http_header = extra_http_header @use_multistage_engine = use_multistage_engine @controller_config = controller_config @logger = logger @tls_config = tls_config @grpc_config = grpc_config @zookeeper_config = zookeeper_config @query_timeout_ms = query_timeout_ms end |
Instance Attribute Details
#broker_list ⇒ Object
Returns the value of attribute broker_list.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def broker_list @broker_list end |
#controller_config ⇒ Object
Returns the value of attribute controller_config.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def controller_config @controller_config end |
#extra_http_header ⇒ Object
Returns the value of attribute extra_http_header.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def extra_http_header @extra_http_header end |
#grpc_config ⇒ Object
Returns the value of attribute grpc_config.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def grpc_config @grpc_config end |
#http_timeout ⇒ Object
Returns the value of attribute http_timeout.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def http_timeout @http_timeout end |
#logger ⇒ Object
Returns the value of attribute logger.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def logger @logger end |
#query_timeout_ms ⇒ Object
Returns the value of attribute query_timeout_ms.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def query_timeout_ms @query_timeout_ms end |
#tls_config ⇒ Object
Returns the value of attribute tls_config.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def tls_config @tls_config end |
#use_multistage_engine ⇒ Object
Returns the value of attribute use_multistage_engine.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def use_multistage_engine @use_multistage_engine end |
#zookeeper_config ⇒ Object
Returns the value of attribute zookeeper_config.
23 24 25 |
# File 'lib/pinot/config.rb', line 23 def zookeeper_config @zookeeper_config end |
Instance Method Details
#validate! ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/pinot/config.rb', line 52 def validate! sources = [ !broker_list.empty?, !controller_config.nil?, !zookeeper_config.nil?, !grpc_config.nil? ].count(true) if sources == 0 raise ConfigurationError, "ClientConfig requires at least one of: broker_list, controller_config, zookeeper_config, or grpc_config" end if !http_timeout.nil? && http_timeout <= 0 raise ConfigurationError, "http_timeout must be positive, got: #{http_timeout}" end if !query_timeout_ms.nil? && query_timeout_ms <= 0 raise ConfigurationError, "query_timeout_ms must be positive, got: #{query_timeout_ms}" end self end |