Class: GrapeMarkdown::Document
- Inherits:
-
Object
- Object
- GrapeMarkdown::Document
- Defined in:
- lib/grape-markdown/document.rb
Instance Attribute Summary collapse
-
#api_class ⇒ Object
readonly
Returns the value of attribute api_class.
-
#document_template ⇒ Object
readonly
Returns the value of attribute document_template.
-
#properties_template ⇒ Object
readonly
Returns the value of attribute properties_template.
Instance Method Summary collapse
- #formatted_request_headers ⇒ Object
- #formatted_response_headers ⇒ Object
- #generate ⇒ Object
-
#initialize(api_class) ⇒ Document
constructor
A new instance of Document.
- #properties_table(resource) ⇒ Object
- #resources ⇒ Object
- #routes ⇒ Object
- #show_request_sample?(route) ⇒ Boolean
- #write ⇒ Object
Constructor Details
#initialize(api_class) ⇒ Document
Returns a new instance of Document.
10 11 12 13 14 |
# File 'lib/grape-markdown/document.rb', line 10 def initialize(api_class) @api_class = api_class @document_template = template_for(:document) @properties_template = template_for(:properties) end |
Instance Attribute Details
#api_class ⇒ Object (readonly)
Returns the value of attribute api_class.
3 4 5 |
# File 'lib/grape-markdown/document.rb', line 3 def api_class @api_class end |
#document_template ⇒ Object (readonly)
Returns the value of attribute document_template.
3 4 5 |
# File 'lib/grape-markdown/document.rb', line 3 def document_template @document_template end |
#properties_template ⇒ Object (readonly)
Returns the value of attribute properties_template.
3 4 5 |
# File 'lib/grape-markdown/document.rb', line 3 def properties_template @properties_template end |
Instance Method Details
#formatted_request_headers ⇒ Object
44 45 46 |
# File 'lib/grape-markdown/document.rb', line 44 def formatted_request_headers formatted_headers(GrapeMarkdown::Configuration.request_headers) end |
#formatted_response_headers ⇒ Object
48 49 50 |
# File 'lib/grape-markdown/document.rb', line 48 def formatted_response_headers formatted_headers(GrapeMarkdown::Configuration.response_headers) end |
#generate ⇒ Object
16 17 18 |
# File 'lib/grape-markdown/document.rb', line 16 def generate render(document_template, binding) end |
#properties_table(resource) ⇒ Object
40 41 42 |
# File 'lib/grape-markdown/document.rb', line 40 def properties_table(resource) render(properties_template, resource.resource_binding) end |
#resources ⇒ Object
30 31 32 33 34 35 36 37 38 |
# File 'lib/grape-markdown/document.rb', line 30 def resources @resources ||= begin grouped_routes = routes.group_by(&:route_name).reject do |name, routes| resource_exclusion.include?(name.to_sym) end grouped_routes.map { |name, routes| Resource.new(name, routes) } end end |
#routes ⇒ Object
24 25 26 27 28 |
# File 'lib/grape-markdown/document.rb', line 24 def routes @routes ||= api_class.routes.map do |route| GrapeMarkdown::Route.new(route) end end |
#show_request_sample?(route) ⇒ Boolean
52 53 54 |
# File 'lib/grape-markdown/document.rb', line 52 def show_request_sample?(route) %w(PUT POST).include?(route.route_method) end |
#write ⇒ Object
20 21 22 |
# File 'lib/grape-markdown/document.rb', line 20 def write fail 'Not yet supported' end |