Class: SDM::RDP

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

Returns a new instance of RDP.



7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
# File 'lib/models/porcelain.rb', line 7132

def initialize(
  bind_interface: nil,
  downgrade_nla_connections: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  lock_required: nil,
  name: nil,
  password: nil,
  port: nil,
  port_override: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil,
  username: nil
)
  @bind_interface = bind_interface == nil ? "" : bind_interface
  @downgrade_nla_connections = downgrade_nla_connections == nil ? false : downgrade_nla_connections
  @egress_filter = egress_filter == nil ? "" : egress_filter
  @healthy = healthy == nil ? false : healthy
  @hostname = hostname == nil ? "" : hostname
  @id = id == nil ? "" : id
  @lock_required = lock_required == nil ? false : lock_required
  @name = name == nil ? "" : name
  @password = password == nil ? "" : password
  @port = port == nil ? 0 : port
  @port_override = port_override == nil ? 0 : port_override
  @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

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



7102
7103
7104
# File 'lib/models/porcelain.rb', line 7102

def bind_interface
  @bind_interface
end

#downgrade_nla_connectionsObject

When set, network level authentication will not be used. May resolve unexpected authentication errors to older servers. When set, healthchecks cannot detect if a provided username / password pair is correct.



7104
7105
7106
# File 'lib/models/porcelain.rb', line 7104

def downgrade_nla_connections
  @downgrade_nla_connections
end

#egress_filterObject

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



7106
7107
7108
# File 'lib/models/porcelain.rb', line 7106

def egress_filter
  @egress_filter
end

#healthyObject

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



7108
7109
7110
# File 'lib/models/porcelain.rb', line 7108

def healthy
  @healthy
end

#hostnameObject

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



7110
7111
7112
# File 'lib/models/porcelain.rb', line 7110

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



7112
7113
7114
# File 'lib/models/porcelain.rb', line 7112

def id
  @id
end

#lock_requiredObject

When set, require a resource lock to access the resource to ensure it can only be used by one user at a time.



7114
7115
7116
# File 'lib/models/porcelain.rb', line 7114

def lock_required
  @lock_required
end

#nameObject

Unique human-readable name of the Resource.



7116
7117
7118
# File 'lib/models/porcelain.rb', line 7116

def name
  @name
end

#passwordObject

The password to authenticate with.



7118
7119
7120
# File 'lib/models/porcelain.rb', line 7118

def password
  @password
end

#portObject

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



7120
7121
7122
# File 'lib/models/porcelain.rb', line 7120

def port
  @port
end

#port_overrideObject

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



7122
7123
7124
# File 'lib/models/porcelain.rb', line 7122

def port_override
  @port_override
end

#secret_store_idObject

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



7124
7125
7126
# File 'lib/models/porcelain.rb', line 7124

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)



7126
7127
7128
# File 'lib/models/porcelain.rb', line 7126

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



7128
7129
7130
# File 'lib/models/porcelain.rb', line 7128

def tags
  @tags
end

#usernameObject

The username to authenticate with.



7130
7131
7132
# File 'lib/models/porcelain.rb', line 7130

def username
  @username
end

Instance Method Details

#to_json(options = {}) ⇒ Object



7166
7167
7168
7169
7170
7171
7172
# File 'lib/models/porcelain.rb', line 7166

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