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



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

def channels
  @channels
end

#created_atObject

Returns the value of attribute created_at.



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

def created_at
  @created_at
end

#descriptionObject

Returns the value of attribute description.



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

def description
  @description
end

#disabledObject

Returns the value of attribute disabled.



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

def disabled
  @disabled
end

#event_typesObject

Returns the value of attribute event_types.



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

def event_types
  @event_types
end

#idObject

The Endpoint's ID.



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

def id
  @id
end

#next_attemptObject

Returns the value of attribute next_attempt.



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

def next_attempt
  @next_attempt
end

#statusObject

Returns the value of attribute status.



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

def status
  @status
end

#status_textObject

Returns the value of attribute status_text.



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

def status_text
  @status_text
end

#throttle_rateObject

Maximum messages per second to send to this endpoint.

Outgoing messages will be throttled to this rate.



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

def throttle_rate
  @throttle_rate
end

#uidObject

Optional unique identifier for the endpoint.



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

def uid
  @uid
end

#updated_atObject

Returns the value of attribute updated_at.



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

def updated_at
  @updated_at
end

#urlObject

Returns the value of attribute url.



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

def url
  @url
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
# File 'lib/svix/models/message_endpoint_out.rb', line 59

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

Instance Method Details

#serializeObject



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

def serialize
  out = Hash.new
  out["id"] = Svix::serialize_primitive(@id) if @id
  out["status"] = Svix::serialize_schema_ref(@status) if @status
  out["statusText"] = Svix::serialize_schema_ref(@status_text) if @status_text
  out["nextAttempt"] = Svix::serialize_primitive(@next_attempt) if @next_attempt
  out["url"] = Svix::serialize_primitive(@url) if @url
  out["description"] = Svix::serialize_primitive(@description) if @description
  out["throttleRate"] = Svix::serialize_primitive(@throttle_rate) if @throttle_rate
  out["uid"] = Svix::serialize_primitive(@uid) if @uid
  out["disabled"] = Svix::serialize_primitive(@disabled) if @disabled
  out["eventTypes"] = Svix::serialize_primitive(@event_types) if @event_types
  out["channels"] = Svix::serialize_primitive(@channels) if @channels
  out["createdAt"] = Svix::serialize_primitive(@created_at) if @created_at
  out["updatedAt"] = Svix::serialize_primitive(@updated_at) if @updated_at
  out
end

#to_jsonObject

Serializes the object to a json string

Returns:

  • String



98
99
100
# File 'lib/svix/models/message_endpoint_out.rb', line 98

def to_json
  JSON.dump(serialize)
end