Class: Svix::ClickhouseConfig
- Inherits:
-
Object
- Object
- Svix::ClickhouseConfig
- Defined in:
- lib/svix/models/clickhouse_config.rb
Direct Known Subclasses
StreamSinkInConfig::Clickhouse, StreamSinkOutConfig::Clickhouse
Instance Attribute Summary collapse
-
#database ⇒ Object
The Clickhouse database to connect to.
-
#password ⇒ Object
Password to access Clickhouse.
-
#table_name ⇒ Object
The Clickhouse table to write to.
-
#url ⇒ Object
The HTTP URL of the ClickHouse server (e.g. ‘my_clickhouse:8443`).
-
#username ⇒ Object
Username to access Clickhouse.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(attributes = {}) ⇒ ClickhouseConfig
constructor
A new instance of ClickhouseConfig.
- #serialize ⇒ Object
-
#to_json ⇒ Object
Serializes the object to a json string.
Constructor Details
#initialize(attributes = {}) ⇒ ClickhouseConfig
Returns a new instance of ClickhouseConfig.
21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/svix/models/clickhouse_config.rb', line 21 def initialize(attributes = {}) unless attributes.is_a?(Hash) fail(ArgumentError, "The input argument (attributes) must be a hash in `Svix::ClickhouseConfig` new method") end attributes.each do |k, v| unless ALL_FIELD.include?(k.to_s) fail(ArgumentError, "The field #{k} is not part of Svix::ClickhouseConfig") end instance_variable_set("@#{k}", v) instance_variable_set("@__#{k}_is_defined", true) end end |
Instance Attribute Details
#database ⇒ Object
The Clickhouse database to connect to
8 9 10 |
# File 'lib/svix/models/clickhouse_config.rb', line 8 def database @database end |
#password ⇒ Object
Password to access Clickhouse
10 11 12 |
# File 'lib/svix/models/clickhouse_config.rb', line 10 def password @password end |
#table_name ⇒ Object
The Clickhouse table to write to
12 13 14 |
# File 'lib/svix/models/clickhouse_config.rb', line 12 def table_name @table_name end |
#url ⇒ Object
The HTTP URL of the ClickHouse server (e.g. ‘my_clickhouse:8443`).
14 15 16 |
# File 'lib/svix/models/clickhouse_config.rb', line 14 def url @url end |
#username ⇒ Object
Username to access Clickhouse
16 17 18 |
# File 'lib/svix/models/clickhouse_config.rb', line 16 def username @username end |
Class Method Details
.deserialize(attributes = {}) ⇒ Object
36 37 38 39 40 41 42 43 44 45 |
# File 'lib/svix/models/clickhouse_config.rb', line 36 def self.deserialize(attributes = {}) attributes = attributes.transform_keys(&:to_s) attrs = Hash.new attrs["database"] = attributes["database"] attrs["password"] = attributes["password"] attrs["table_name"] = attributes["tableName"] attrs["url"] = attributes["url"] attrs["username"] = attributes["username"] new(attrs) end |
Instance Method Details
#serialize ⇒ Object
47 48 49 50 51 52 53 54 55 |
# File 'lib/svix/models/clickhouse_config.rb', line 47 def serialize out = Hash.new out["database"] = Svix::serialize_primitive(@database) if @database out["password"] = Svix::serialize_primitive(@password) if @password out["tableName"] = Svix::serialize_primitive(@table_name) if @table_name out["url"] = Svix::serialize_primitive(@url) if @url out["username"] = Svix::serialize_primitive(@username) if @username out end |
#to_json ⇒ Object
Serializes the object to a json string
59 60 61 |
# File 'lib/svix/models/clickhouse_config.rb', line 59 def to_json JSON.dump(serialize) end |