Class: SDM::Elastic

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, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, password: nil, port: nil, port_override: nil, proxy_cluster_id: nil, secret_store_id: nil, subdomain: nil, tags: nil, tls_required: nil, username: nil) ⇒ Elastic

Returns a new instance of Elastic.



6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
# File 'lib/models/porcelain.rb', line 6230

def initialize(
  bind_interface: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  password: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  tls_required: nil,
  username: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @password = password == nil ? "" : password
  @port = port == nil ? 0 : port
  @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
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @tls_required = tls_required == nil ? false : tls_required
  @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 and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.



6200
6201
6202
# File 'lib/models/porcelain.rb', line 6200

def bind_interface
  @bind_interface
end

#egress_filterObject

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



6202
6203
6204
# File 'lib/models/porcelain.rb', line 6202

def egress_filter
  @egress_filter
end

#healthyObject

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



6204
6205
6206
# File 'lib/models/porcelain.rb', line 6204

def healthy
  @healthy
end

#hostnameObject

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



6206
6207
6208
# File 'lib/models/porcelain.rb', line 6206

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



6208
6209
6210
# File 'lib/models/porcelain.rb', line 6208

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



6210
6211
6212
# File 'lib/models/porcelain.rb', line 6210

def name
  @name
end

#passwordObject

The password to authenticate with.



6212
6213
6214
# File 'lib/models/porcelain.rb', line 6212

def password
  @password
end

#portObject

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



6214
6215
6216
# File 'lib/models/porcelain.rb', line 6214

def port
  @port
end

#port_overrideObject

The local port used by clients to connect to this resource. It is automatically generated if not provided on create and may be re-generated on update by specifying a value of -1.



6216
6217
6218
# File 'lib/models/porcelain.rb', line 6216

def port_override
  @port_override
end

#proxy_cluster_idObject

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



6218
6219
6220
# File 'lib/models/porcelain.rb', line 6218

def proxy_cluster_id
  @proxy_cluster_id
end

#secret_store_idObject

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



6220
6221
6222
# File 'lib/models/porcelain.rb', line 6220

def secret_store_id
  @secret_store_id
end

#subdomainObject

DNS subdomain through which this resource may be accessed on clients. (e.g. "app-prod1" allows the resource to be accessed at "app-prod1.your-org-name.sdm-proxy-domain"). Only applicable to HTTP-based resources or resources using virtual networking mode.



6222
6223
6224
# File 'lib/models/porcelain.rb', line 6222

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



6224
6225
6226
# File 'lib/models/porcelain.rb', line 6224

def tags
  @tags
end

#tls_requiredObject

If set, TLS must be used to connect to this resource.



6226
6227
6228
# File 'lib/models/porcelain.rb', line 6226

def tls_required
  @tls_required
end

#usernameObject

The username to authenticate with.



6228
6229
6230
# File 'lib/models/porcelain.rb', line 6228

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



6264
6265
6266
6267
6268
6269
6270
# File 'lib/models/porcelain.rb', line 6264

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