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.



11995
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
# File 'lib/models/porcelain.rb', line 11995

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.



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

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.



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

def bind_interface
  @bind_interface
end

#egress_filter ⇒ Object

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



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

def egress_filter
  @egress_filter
end

#healthy ⇒ Object

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



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

def healthy
  @healthy
end

#hostname ⇒ Object

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



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

def hostname
  @hostname
end

#id ⇒ Object

Unique identifier of the Resource.



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

def id
  @id
end

#name ⇒ Object

Unique human-readable name of the Resource.



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

def name
  @name
end

#password ⇒ Object

The password to authenticate with.



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

def password
  @password
end

#port ⇒ Object

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



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

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.



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

def port_override
  @port_override
end

#proxy_cluster_id ⇒ Object

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



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

def proxy_cluster_id
  @proxy_cluster_id
end

#region ⇒ Object

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



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

def region
  @region
end

#secret_store_id ⇒ Object

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



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

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.



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

def subdomain
  @subdomain
end

#tags ⇒ Object

Tags is a map of key, value pairs.



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

def tags
  @tags
end

#tls_required ⇒ Object

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



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

def tls_required
  @tls_required
end

#username ⇒ Object

The username to authenticate with.



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

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



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

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