Class: NgrokAPI::Models::TCPEdge

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client: nil, attrs: {}) ⇒ TCPEdge

Returns a new instance of TCPEdge.



21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/ngrokapi/models/tcp_edge.rb', line 21

def initialize(client: nil, attrs: {})
  @client = client
  @attrs = attrs
  @id = @attrs['id']
  @description = @attrs['description']
  @metadata = @attrs['metadata']
  @created_at = @attrs['created_at']
  unless @attrs['uri'].nil?
    @uri = URI(@attrs['uri'])
  end
  @hostports = @attrs['hostports']
  @backend = @attrs['backend']
  @ip_restriction = @attrs['ip_restriction']
end

Instance Attribute Details

#attrsObject (readonly)

Returns the value of attribute attrs.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def attrs
  @attrs
end

#backendObject (readonly)

Returns the value of attribute backend.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def backend
  @backend
end

#clientObject (readonly)

Returns the value of attribute client.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def client
  @client
end

#created_atObject (readonly)

Returns the value of attribute created_at.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def created_at
  @created_at
end

#descriptionObject (readonly)

Returns the value of attribute description.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def description
  @description
end

#hostportsObject (readonly)

Returns the value of attribute hostports.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def hostports
  @hostports
end

#idObject (readonly)

Returns the value of attribute id.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def id
  @id
end

#ip_restrictionObject (readonly)

Returns the value of attribute ip_restriction.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def ip_restriction
  @ip_restriction
end

#metadataObject (readonly)

Returns the value of attribute metadata.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def 
  @metadata
end

#uriObject (readonly)

Returns the value of attribute uri.



10
11
12
# File 'lib/ngrokapi/models/tcp_edge.rb', line 10

def uri
  @uri
end

Instance Method Details

#==(other) ⇒ Object



36
37
38
# File 'lib/ngrokapi/models/tcp_edge.rb', line 36

def ==(other)
  @attrs == other.attrs
end

#deleteObject



81
82
83
84
85
# File 'lib/ngrokapi/models/tcp_edge.rb', line 81

def delete
  @client.delete(
    id: @id
  )
end

#to_hObject



44
45
46
# File 'lib/ngrokapi/models/tcp_edge.rb', line 44

def to_h
  @attrs.to_h
end

#to_sObject



40
41
42
# File 'lib/ngrokapi/models/tcp_edge.rb', line 40

def to_s
  @attrs.to_s
end

#update(description: nil, metadata: nil, hostports: nil, backend: nil, ip_restriction: nil) ⇒ Object

Updates a TCP Edge by ID. If a module is not specified in the update, it will not be modified. However, each module configuration that is specified will completely replace the existing value. There is no way to delete an existing module via this API, instead use the delete module API.

https://ngrok.com/docs/api#api-edges-tcp-update



55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# File 'lib/ngrokapi/models/tcp_edge.rb', line 55

def update(
  description: nil,
  metadata: nil,
  hostports: nil,
  backend: nil,
  ip_restriction: nil
)
  @description = description if description
  @metadata =  if 
  @hostports = hostports if hostports
  @backend = backend if backend
  @ip_restriction = ip_restriction if ip_restriction
  @client.update(
    id: @id,
    description: description,
    metadata: ,
    hostports: hostports,
    backend: backend,
    ip_restriction: ip_restriction
  )
end