Class: SDM::ClickHouseHTTP

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, id: nil, name: nil, password: nil, port_override: nil, proxy_cluster_id: nil, secret_store_id: nil, tags: nil, url: nil, username: nil) ⇒ ClickHouseHTTP



4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
# File 'lib/models/porcelain.rb', line 4541

def initialize(
  bind_interface: nil,
  database: nil,
  egress_filter: nil,
  healthy: nil,
  id: nil,
  name: nil,
  password: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  secret_store_id: nil,
  tags: nil,
  url: nil,
  username: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @database = database == nil ? "" : database
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @password = password == nil ? "" : password
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @url = url == nil ? "" : url
  @username = username == nil ? "" : username
end

Instance Attribute Details

#bind_interfaceObject

The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.



4515
4516
4517
# File 'lib/models/porcelain.rb', line 4515

def bind_interface
  @bind_interface
end

#databaseObject

The initial database to connect to. This setting does not by itself prevent switching to another database after connecting.



4517
4518
4519
# File 'lib/models/porcelain.rb', line 4517

def database
  @database
end

#egress_filterObject

A filter applied to the routing logic to pin datasource to nodes.



4519
4520
4521
# File 'lib/models/porcelain.rb', line 4519

def egress_filter
  @egress_filter
end

#healthyObject

True if the datasource is reachable and the credentials are valid.



4521
4522
4523
# File 'lib/models/porcelain.rb', line 4521

def healthy
  @healthy
end

#idObject

Unique identifier of the Resource.



4523
4524
4525
# File 'lib/models/porcelain.rb', line 4523

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



4525
4526
4527
# File 'lib/models/porcelain.rb', line 4525

def name
  @name
end

#passwordObject

The password to authenticate with.



4527
4528
4529
# File 'lib/models/porcelain.rb', line 4527

def password
  @password
end

#port_overrideObject

The local port used by clients to connect to this resource.



4529
4530
4531
# File 'lib/models/porcelain.rb', line 4529

def port_override
  @port_override
end

#proxy_cluster_idObject

ID of the proxy cluster for this resource, if any.



4531
4532
4533
# File 'lib/models/porcelain.rb', line 4531

def proxy_cluster_id
  @proxy_cluster_id
end

#secret_store_idObject

ID of the secret store containing credentials for this resource, if any.



4533
4534
4535
# File 'lib/models/porcelain.rb', line 4533

def secret_store_id
  @secret_store_id
end

#tagsObject

Tags is a map of key, value pairs.



4535
4536
4537
# File 'lib/models/porcelain.rb', line 4535

def tags
  @tags
end

#urlObject

The URL to dial to initiate a connection from the egress node to this resource.



4537
4538
4539
# File 'lib/models/porcelain.rb', line 4537

def url
  @url
end

#usernameObject

The username to authenticate with.



4539
4540
4541
# File 'lib/models/porcelain.rb', line 4539

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



4571
4572
4573
4574
4575
4576
4577
# File 'lib/models/porcelain.rb', line 4571

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end