Class: Svix::MessageEndpointOut

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

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ MessageEndpointOut

Returns a new instance of MessageEndpointOut.



44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/svix/models/message_endpoint_out.rb', line 44

def initialize(attributes = {})
  unless attributes.is_a?(Hash)
    fail(ArgumentError, "The input argument (attributes) must be a hash in `Svix::MessageEndpointOut` 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::MessageEndpointOut")
    end

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

Instance Attribute Details

#channelsObject

List of message channels this endpoint listens to (omit for all).



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

def channels
  @channels
end

#created_atObject

Returns the value of attribute created_at.



9
10
11
# File 'lib/svix/models/message_endpoint_out.rb', line 9

def created_at
  @created_at
end

#descriptionObject

An example endpoint name.



11
12
13
# File 'lib/svix/models/message_endpoint_out.rb', line 11

def description
  @description
end

#disabledObject

Returns the value of attribute disabled.



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

def disabled
  @disabled
end

#filter_typesObject

Returns the value of attribute filter_types.



13
14
15
# File 'lib/svix/models/message_endpoint_out.rb', line 13

def filter_types
  @filter_types
end

#idObject

The Endpoint’s ID.



15
16
17
# File 'lib/svix/models/message_endpoint_out.rb', line 15

def id
  @id
end

#next_attemptObject

Returns the value of attribute next_attempt.



16
17
18
# File 'lib/svix/models/message_endpoint_out.rb', line 16

def next_attempt
  @next_attempt
end

#rate_limitObject

Returns the value of attribute rate_limit.



17
18
19
# File 'lib/svix/models/message_endpoint_out.rb', line 17

def rate_limit
  @rate_limit
end

#statusObject

Returns the value of attribute status.



18
19
20
# File 'lib/svix/models/message_endpoint_out.rb', line 18

def status
  @status
end

#status_textObject

Returns the value of attribute status_text.



19
20
21
# File 'lib/svix/models/message_endpoint_out.rb', line 19

def status_text
  @status_text
end

#uidObject

Optional unique identifier for the endpoint.



21
22
23
# File 'lib/svix/models/message_endpoint_out.rb', line 21

def uid
  @uid
end

#updated_atObject

Returns the value of attribute updated_at.



22
23
24
# File 'lib/svix/models/message_endpoint_out.rb', line 22

def updated_at
  @updated_at
end

#urlObject

Returns the value of attribute url.



23
24
25
# File 'lib/svix/models/message_endpoint_out.rb', line 23

def url
  @url
end

#versionObject

Returns the value of attribute version.



24
25
26
# File 'lib/svix/models/message_endpoint_out.rb', line 24

def version
  @version
end

Class Method Details

.deserialize(attributes = {}) ⇒ Object



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/svix/models/message_endpoint_out.rb', line 59

def self.deserialize(attributes = {})
  attributes = attributes.transform_keys(&:to_s)
  attrs = Hash.new
  attrs["channels"] = attributes["channels"]
  attrs["created_at"] = DateTime.rfc3339(attributes["createdAt"]).to_time
  attrs["description"] = attributes["description"]
  attrs["disabled"] = attributes["disabled"]
  attrs["filter_types"] = attributes["filterTypes"]
  attrs["id"] = attributes["id"]
  attrs["next_attempt"] = DateTime.rfc3339(attributes["nextAttempt"]).to_time if attributes["nextAttempt"]
  attrs["rate_limit"] = attributes["rateLimit"]
  attrs["status"] = Svix::MessageStatus.deserialize(attributes["status"])
  attrs["status_text"] = Svix::MessageStatusText.deserialize(attributes["statusText"])
  attrs["uid"] = attributes["uid"]
  attrs["updated_at"] = DateTime.rfc3339(attributes["updatedAt"]).to_time
  attrs["url"] = attributes["url"]
  attrs["version"] = attributes["version"]
  new(attrs)
end

Instance Method Details

#serializeObject



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/svix/models/message_endpoint_out.rb', line 79

def serialize
  out = Hash.new
  out["channels"] = Svix::serialize_primitive(@channels) if @channels
  out["createdAt"] = Svix::serialize_primitive(@created_at) if @created_at
  out["description"] = Svix::serialize_primitive(@description) if @description
  out["disabled"] = Svix::serialize_primitive(@disabled) if @disabled
  out["filterTypes"] = Svix::serialize_primitive(@filter_types) if @filter_types
  out["id"] = Svix::serialize_primitive(@id) if @id
  out["nextAttempt"] = Svix::serialize_primitive(@next_attempt) if @next_attempt
  out["rateLimit"] = Svix::serialize_primitive(@rate_limit) if @rate_limit
  out["status"] = Svix::serialize_schema_ref(@status) if @status
  out["statusText"] = Svix::serialize_schema_ref(@status_text) if @status_text
  out["uid"] = Svix::serialize_primitive(@uid) if @uid
  out["updatedAt"] = Svix::serialize_primitive(@updated_at) if @updated_at
  out["url"] = Svix::serialize_primitive(@url) if @url
  out["version"] = Svix::serialize_primitive(@version) if @version
  out
end

#to_jsonObject

Serializes the object to a json string

Returns:

  • String



100
101
102
# File 'lib/svix/models/message_endpoint_out.rb', line 100

def to_json
  JSON.dump(serialize)
end