class Nexmo::Markdown::Filters::CodeSnippet::CreateApplication

Constants

EXAMPLE_URL
NGROK_URL

Attributes

app[R]

Public Class Methods

new(app) click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 13
def initialize(app)
  @app = app
end

Public Instance Methods

answer_url() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 35
def answer_url
  @answer_url ||= @app.fetch('answer_url', "#{base_url}/webhooks/answer")
end
base_url() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 17
def base_url
  @base_url ||= @app['disable_ngrok'] && EXAMPLE_URL || NGROK_URL
end
event_url() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 31
def event_url
  @event_url ||= @app.fetch('event_url', "#{base_url}/webhooks/events")
end
name() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 21
def name
  @name ||= @app['name'] || 'ExampleProject'
end
partial() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 39
def partial
  @partial ||= begin
                 case type
                 when 'voice', 'rtc'
                   File.read("#{GEM_ROOT}/lib/nexmo_markdown_renderer/views/code_snippets/_application_#{type}.html.erb")
                 when 'messages', 'dispatch'
                   File.read("#{GEM_ROOT}/lib/nexmo_markdown_renderer/views/code_snippets/_application_messages_dispatch.html.erb")
                 else
                   raise "Invalid application type when creating code snippet: '#{type}'"
                 end
               end
end
render() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 52
def render
  return '' unless @app

  ERB.new(partial).result(binding)
end
type() click to toggle source
# File lib/nexmo_markdown_renderer/filters/code_snippet/create_application.rb, line 25
def type
  # We should remove this default once we're sure that all Code Snippets
  # have a type set e.g audit
  @type ||= @app.fetch('type', 'voice')
end