Class: Svix::TailscaleConfig

Inherits:
Object
  • Object
show all
Defined in:
lib/svix/models/tailscale_config.rb

Direct Known Subclasses

IngestSourceInConfig::Tailscale

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ TailscaleConfig

Returns a new instance of TailscaleConfig.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/svix/models/tailscale_config.rb', line 17

def initialize(attributes = {})
  unless attributes.is_a?(Hash)
    fail(ArgumentError, "The input argument (attributes) must be a hash in `Svix::TailscaleConfig` new method")
  end

  attributes.each do |k, v|
    unless ALL_FIELD.include?(k.to_s)
      fail(ArgumentError, "The field #{k} is not part of Svix::TailscaleConfig")
    end

    instance_variable_set("@#{k}", v)
    instance_variable_set("@__#{k}_is_defined", true)
  end
end

Instance Attribute Details

#secretObject

Shared secret for Tailscale Webhooks



8
9
10
# File 'lib/svix/models/tailscale_config.rb', line 8

def secret
  @secret
end

#timestamp_grace_secondsObject

Grace period (in seconds) for the timestamp.

If not passed, timestamp age will not be checked.



12
13
14
# File 'lib/svix/models/tailscale_config.rb', line 12

def timestamp_grace_seconds
  @timestamp_grace_seconds
end

Class Method Details

.deserialize(attributes = {}) ⇒ Object



32
33
34
35
36
37
38
# File 'lib/svix/models/tailscale_config.rb', line 32

def self.deserialize(attributes = {})
  attributes = attributes.transform_keys(&:to_s)
  attrs = Hash.new
  attrs["secret"] = attributes["secret"]
  attrs["timestamp_grace_seconds"] = attributes["timestampGraceSeconds"]
  new(attrs)
end

Instance Method Details

#serializeObject



40
41
42
43
44
45
# File 'lib/svix/models/tailscale_config.rb', line 40

def serialize
  out = Hash.new
  out["secret"] = Svix::serialize_primitive(@secret) if @secret
  out["timestampGraceSeconds"] = Svix::serialize_primitive(@timestamp_grace_seconds) if @timestamp_grace_seconds
  out
end

#to_jsonObject

Serializes the object to a json string

Returns:

  • String



49
50
51
# File 'lib/svix/models/tailscale_config.rb', line 49

def to_json
  JSON.dump(serialize)
end