Class: SDM::RawTCP

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, egress_filter: nil, healthy: nil, hostname: nil, id: nil, name: nil, port: nil, port_override: nil, proxy_cluster_id: nil, secret_store_id: nil, subdomain: nil, tags: nil) ⇒ RawTCP

Returns a new instance of RawTCP.



14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
# File 'lib/models/porcelain.rb', line 14980

def initialize(
  bind_interface: nil,
  egress_filter: nil,
  healthy: nil,
  hostname: nil,
  id: nil,
  name: nil,
  port: nil,
  port_override: nil,
  proxy_cluster_id: nil,
  secret_store_id: nil,
  subdomain: nil,
  tags: nil
)
  @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
  @port = port == nil ? 0 : port
  @port_override = port_override == nil ? 0 : port_override
  @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
  @secret_store_id = secret_store_id == nil ? "" : secret_store_id
  @subdomain = subdomain == nil ? "" : subdomain
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
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 and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.



14956
14957
14958
# File 'lib/models/porcelain.rb', line 14956

def bind_interface
  @bind_interface
end

#egress_filterObject

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



14958
14959
14960
# File 'lib/models/porcelain.rb', line 14958

def egress_filter
  @egress_filter
end

#healthyObject

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



14960
14961
14962
# File 'lib/models/porcelain.rb', line 14960

def healthy
  @healthy
end

#hostnameObject

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



14962
14963
14964
# File 'lib/models/porcelain.rb', line 14962

def hostname
  @hostname
end

#idObject

Unique identifier of the Resource.



14964
14965
14966
# File 'lib/models/porcelain.rb', line 14964

def id
  @id
end

#nameObject

Unique human-readable name of the Resource.



14966
14967
14968
# File 'lib/models/porcelain.rb', line 14966

def name
  @name
end

#portObject

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



14968
14969
14970
# File 'lib/models/porcelain.rb', line 14968

def port
  @port
end

#port_overrideObject

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.



14970
14971
14972
# File 'lib/models/porcelain.rb', line 14970

def port_override
  @port_override
end

#proxy_cluster_idObject

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



14972
14973
14974
# File 'lib/models/porcelain.rb', line 14972

def proxy_cluster_id
  @proxy_cluster_id
end

#secret_store_idObject

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



14974
14975
14976
# File 'lib/models/porcelain.rb', line 14974

def secret_store_id
  @secret_store_id
end

#subdomainObject

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.



14976
14977
14978
# File 'lib/models/porcelain.rb', line 14976

def subdomain
  @subdomain
end

#tagsObject

Tags is a map of key, value pairs.



14978
14979
14980
# File 'lib/models/porcelain.rb', line 14978

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



15008
15009
15010
15011
15012
15013
15014
# File 'lib/models/porcelain.rb', line 15008

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