Class: SDM::MongoHost

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(auth_database: nil, 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, region: nil, secret_store_id: nil, subdomain: nil, tags: nil, tls_required: nil, username: nil) ⇒ MongoHost

Returns a new instance of MongoHost.



11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
# File 'lib/models/porcelain.rb', line 11996

def initialize(
  auth_database: nil,
  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,
  region: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  tls_required: nil,
  username: nil
)
  @auth_database = auth_database == nil ? "" : auth_database
  @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
  @region = region == nil ? "" : region
  @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

#auth_database ⇒ Object

The authentication database to use.



11962
11963
11964
# File 'lib/models/porcelain.rb', line 11962

def auth_database
  @auth_database
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.



11964
11965
11966
# File 'lib/models/porcelain.rb', line 11964

def bind_interface
  @bind_interface
end

#egress_filter ⇒ Object

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



11966
11967
11968
# File 'lib/models/porcelain.rb', line 11966

def egress_filter
  @egress_filter
end

#healthy ⇒ Object

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



11968
11969
11970
# File 'lib/models/porcelain.rb', line 11968

def healthy
  @healthy
end

#hostname ⇒ Object

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



11970
11971
11972
# File 'lib/models/porcelain.rb', line 11970

def hostname
  @hostname
end

#id ⇒ Object

Unique identifier of the Resource.



11972
11973
11974
# File 'lib/models/porcelain.rb', line 11972

def id
  @id
end

#name ⇒ Object

Unique human-readable name of the Resource.



11974
11975
11976
# File 'lib/models/porcelain.rb', line 11974

def name
  @name
end

#password ⇒ Object

The password to authenticate with.



11976
11977
11978
# File 'lib/models/porcelain.rb', line 11976

def password
  @password
end

#port ⇒ Object

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



11978
11979
11980
# File 'lib/models/porcelain.rb', line 11978

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.



11980
11981
11982
# File 'lib/models/porcelain.rb', line 11980

def port_override
  @port_override
end

#proxy_cluster_id ⇒ Object

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



11982
11983
11984
# File 'lib/models/porcelain.rb', line 11982

def proxy_cluster_id
  @proxy_cluster_id
end

#region ⇒ Object

The AWS region to use for IAM (MONGODB-AWS) authentication.



11984
11985
11986
# File 'lib/models/porcelain.rb', line 11984

def region
  @region
end

#secret_store_id ⇒ Object

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



11986
11987
11988
# File 'lib/models/porcelain.rb', line 11986

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.



11988
11989
11990
# File 'lib/models/porcelain.rb', line 11988

def subdomain
  @subdomain
end

#tags ⇒ Object

Tags is a map of key, value pairs.



11990
11991
11992
# File 'lib/models/porcelain.rb', line 11990

def tags
  @tags
end

#tls_required ⇒ Object

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



11992
11993
11994
# File 'lib/models/porcelain.rb', line 11992

def tls_required
  @tls_required
end

#username ⇒ Object

The username to authenticate with.



11994
11995
11996
# File 'lib/models/porcelain.rb', line 11994

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



12034
12035
12036
12037
12038
12039
12040
# File 'lib/models/porcelain.rb', line 12034

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