class ProgressiveRender::Rails::PathResolver

Resolve set of request parameters to a full path to a template file

Public Class Methods

new(template_context) click to toggle source
# File lib/progressive_render/rails/path_resolver.rb, line 35
def initialize(template_context)
  @context = template_context
end

Public Instance Methods

path_for(view_name = nil) click to toggle source
# File lib/progressive_render/rails/path_resolver.rb, line 39
def path_for(view_name = nil)
  raise InvalidTemplateContextException unless @context && @context.valid?
  raise InvalidPathException if (view_name.nil? || view_name.empty?) && view_action?

  "#{@context.controller.downcase}/#{path_suffix_for(view_name)}"
end

Private Instance Methods

path_suffix_for(view_name) click to toggle source
# File lib/progressive_render/rails/path_resolver.rb, line 48
def path_suffix_for(view_name)
  if view_name.nil? || view_name.empty?
    @context.action.to_s
  else
    view_name.to_s
  end
end
view_action?() click to toggle source
# File lib/progressive_render/rails/path_resolver.rb, line 56
def view_action?
  @context.type == :view
end