Class: SDM::MongoReplicaSet

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

Returns a new instance of MongoReplicaSet.



8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
# File 'lib/models/porcelain.rb', line 8165

def initialize(
  auth_database: nil,
  bind_interface: nil,
  connect_to_replica: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  password: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  replica_set: 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
  @connect_to_replica = connect_to_replica == nil ? false : connect_to_replica
  @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
  @replica_set = replica_set == nil ? "" : replica_set
  @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_databaseObject

The authentication database to use.



8129
8130
8131
# File 'lib/models/porcelain.rb', line 8129

def auth_database
  @auth_database
end

#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.



8131
8132
8133
# File 'lib/models/porcelain.rb', line 8131

def bind_interface
  @bind_interface
end

#connect_to_replicaObject

Set to connect to a replica instead of the primary node.



8133
8134
8135
# File 'lib/models/porcelain.rb', line 8133

def connect_to_replica
  @connect_to_replica
end

#egress_filterObject

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



8135
8136
8137
# File 'lib/models/porcelain.rb', line 8135

def egress_filter
  @egress_filter
end

#healthyObject

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



8137
8138
8139
# File 'lib/models/porcelain.rb', line 8137

def healthy
  @healthy
end

#hostnameObject

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



8139
8140
8141
# File 'lib/models/porcelain.rb', line 8139

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



8141
8142
8143
# File 'lib/models/porcelain.rb', line 8141

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



8143
8144
8145
# File 'lib/models/porcelain.rb', line 8143

def name
  @name
end

#passwordObject

The password to authenticate with.



8145
8146
8147
# File 'lib/models/porcelain.rb', line 8145

def password
  @password
end

#portObject

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



8147
8148
8149
# File 'lib/models/porcelain.rb', line 8147

def port
  @port
end

#port_overrideObject

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



8149
8150
8151
# File 'lib/models/porcelain.rb', line 8149

def port_override
  @port_override
end

#proxy_cluster_idObject

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



8151
8152
8153
# File 'lib/models/porcelain.rb', line 8151

def proxy_cluster_id
  @proxy_cluster_id
end

#replica_setObject

The name of the mongo replicaset.



8153
8154
8155
# File 'lib/models/porcelain.rb', line 8153

def replica_set
  @replica_set
end

#secret_store_idObject

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



8155
8156
8157
# File 'lib/models/porcelain.rb', line 8155

def secret_store_id
  @secret_store_id
end

#subdomainObject

Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)



8157
8158
8159
# File 'lib/models/porcelain.rb', line 8157

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



8159
8160
8161
# File 'lib/models/porcelain.rb', line 8159

def tags
  @tags
end

#tls_requiredObject

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



8161
8162
8163
# File 'lib/models/porcelain.rb', line 8161

def tls_required
  @tls_required
end

#usernameObject

The username to authenticate with.



8163
8164
8165
# File 'lib/models/porcelain.rb', line 8163

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



8205
8206
8207
8208
8209
8210
8211
# File 'lib/models/porcelain.rb', line 8205

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