Class: SDM::SQLServer

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(allow_deprecated_encryption: nil, bind_interface: nil, database: nil, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, override_database: nil, password: nil, port: nil, port_override: nil, proxy_cluster_id: nil, schema: nil, secret_store_id: nil, subdomain: nil, tags: nil, username: nil) ⇒ SQLServer

Returns a new instance of SQLServer.



16520
16521
16522
16523
16524
16525
16526
16527
16528
16529
16530
16531
16532
16533
16534
16535
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
16546
16547
16548
16549
16550
16551
16552
16553
16554
16555
16556
16557
16558
# File 'lib/models/porcelain.rb', line 16520

def initialize(
  allow_deprecated_encryption: nil,
  bind_interface: nil,
  database: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  override_database: nil,
  password: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  schema: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  username: nil
)
  @allow_deprecated_encryption = allow_deprecated_encryption == nil ? false : allow_deprecated_encryption
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @database = database == nil ? "" : database
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @override_database = override_database == nil ? false : override_database
  @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
  @schema = schema == nil ? "" : schema
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
  @username = username == nil ? "" : username
end

Instance Attribute Details

#allow_deprecated_encryption ⇒ Object

Whether to allow deprecated encryption protocols to be used for this resource. For example, TLS 1.0.



16484
16485
16486
# File 'lib/models/porcelain.rb', line 16484

def allow_deprecated_encryption
  @allow_deprecated_encryption
end

#bind_interface ⇒ Object

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.



16486
16487
16488
# File 'lib/models/porcelain.rb', line 16486

def bind_interface
  @bind_interface
end

#database ⇒ Object

The database for healthchecks, and used for clients if Override Default Database is true.



16488
16489
16490
# File 'lib/models/porcelain.rb', line 16488

def database
  @database
end

#egress_filter ⇒ Object

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



16490
16491
16492
# File 'lib/models/porcelain.rb', line 16490

def egress_filter
  @egress_filter
end

#healthy ⇒ Object

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



16492
16493
16494
# File 'lib/models/porcelain.rb', line 16492

def healthy
  @healthy
end

#hostname ⇒ Object

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



16494
16495
16496
# File 'lib/models/porcelain.rb', line 16494

def hostname
  @hostname
end

#id ⇒ Object

Unique identifier of the Resource.



16496
16497
16498
# File 'lib/models/porcelain.rb', line 16496

def id
  @id
end

#name ⇒ Object

Unique human-readable name of the Resource.



16498
16499
16500
# File 'lib/models/porcelain.rb', line 16498

def name
  @name
end

#override_database ⇒ Object

If set, the database configured cannot be changed by users. This setting is not recommended for most use cases, as some clients will insist their database has changed when it has not, leading to user confusion.



16500
16501
16502
# File 'lib/models/porcelain.rb', line 16500

def override_database
  @override_database
end

#password ⇒ Object

The password to authenticate with.



16502
16503
16504
# File 'lib/models/porcelain.rb', line 16502

def password
  @password
end

#port ⇒ Object

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



16504
16505
16506
# File 'lib/models/porcelain.rb', line 16504

def port
  @port
end

#port_override ⇒ Object

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.



16506
16507
16508
# File 'lib/models/porcelain.rb', line 16506

def port_override
  @port_override
end

#proxy_cluster_id ⇒ Object

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



16508
16509
16510
# File 'lib/models/porcelain.rb', line 16508

def proxy_cluster_id
  @proxy_cluster_id
end

#schema ⇒ Object

The Schema to use to direct initial requests.



16510
16511
16512
# File 'lib/models/porcelain.rb', line 16510

def schema
  @schema
end

#secret_store_id ⇒ Object

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



16512
16513
16514
# File 'lib/models/porcelain.rb', line 16512

def secret_store_id
  @secret_store_id
end

#subdomain ⇒ Object

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.



16514
16515
16516
# File 'lib/models/porcelain.rb', line 16514

def subdomain
  @subdomain
end

#tags ⇒ Object

Tags is a map of key, value pairs.



16516
16517
16518
# File 'lib/models/porcelain.rb', line 16516

def tags
  @tags
end

#username ⇒ Object

The username to authenticate with.



16518
16519
16520
# File 'lib/models/porcelain.rb', line 16518

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



16560
16561
16562
16563
16564
16565
16566
# File 'lib/models/porcelain.rb', line 16560

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