class SoarTransportApi::TransportAPI
Constants
- DELIVERY_FAILURE
- DELIVERY_PENDING
- DELIVERY_REJECTED
- DELIVERY_SUCCESS
- DELIVERY_TIMEOUT
Attributes
transport_identifier[RW]
Public Class Methods
new(transport_identifier)
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 11 def initialize(transport_identifier) raise SoarTransportApi::TransportIdentifierInvalidError.new("Invalid transport identifier") if invalid_transport_identifier?(transport_identifier) @transport_identifier = transport_identifier end
Public Instance Methods
receive_message()
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 26 def receive_message end
receive_messages(subscriber, transport_provider_id)
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 21 def receive_messages(subscriber, transport_provider_id) raise SoarTransportApi::TransportIdentifierInvalidError.new("Invalid transport identifier") if invalid_transport_identifier?(transport_provider_id) raise SoarTransportApi::SubscriberCallbackInvalidError.new("Invalid subscriber") if invalid_subscriber?(subscriber) end
send_message(uri, message)
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 16 def send_message(uri, message) raise SoarTransportApi::NoMessageError.new("No message provided") if message.nil? raise SoarTransportApi::InvalidURIError.new("Invalid URI") if invalid_uri?(uri) end
Private Instance Methods
invalid_subscriber?(subscriber)
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 42 def invalid_subscriber?(subscriber) subscriber.nil? or not subscriber.methods.include?(:receive) end
invalid_transport_identifier?(transport_identifier)
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 36 def invalid_transport_identifier?(transport_identifier) transport_identifier.nil? or (not transport_identifier.is_a?(String)) or transport_identifier.strip == "" end
invalid_uri?(uri)
click to toggle source
# File lib/soar_transport_api/transport_api.rb, line 31 def invalid_uri?(uri) return true if uri.nil? not (uri =~ URI::DEFAULT_PARSER.regexp[:UNSAFE]).nil? end