class VersionCake::VersionedRequest

Attributes

failed[R]
version[R]

Public Class Methods

new(request, strategies, default_version=nil) click to toggle source
# File lib/versioncake/versioned_request.rb, line 5
def initialize(request, strategies, default_version=nil)
  @request, @strategies, @default_version, @failed = request, strategies, default_version, false
end

Public Instance Methods

execute() click to toggle source
# File lib/versioncake/versioned_request.rb, line 9
def execute
  begin
    extracted_version = extract_version

    if extracted_version.nil?
      @version = @default_version
    else
      @version = extracted_version
    end
  rescue Exception
    @failed = true
  end
end

Private Instance Methods

extract_version() click to toggle source
# File lib/versioncake/versioned_request.rb, line 25
def extract_version
  extracted_version = nil
  @strategies.each do |strategy|
    extracted_version = strategy.extract(@request)
    break unless extracted_version.nil?
  end
  extracted_version
end