module SoarSc::Rack::Router::RouteValidation
Public Instance Methods
validate()
click to toggle source
# File lib/soar_sc/rack/router/route_validation.rb, line 7 def validate validate_method validate_path validate_action end
validate_action()
click to toggle source
# File lib/soar_sc/rack/router/route_validation.rb, line 30 def validate_action unless (@action.respond_to?(:arity) and @action.arity == 1) or (@action.respond_to?(:call) and @action.method(:call).arity == 1) raise InvalidActionError, "Invalid action in route #{to_s}" end end
validate_method()
click to toggle source
# File lib/soar_sc/rack/router/route_validation.rb, line 13 def validate_method unless HttpMethod.valid?(@method) raise InvalidMethodError, "Invalid method in route #{to_s}" end end
validate_path()
click to toggle source
# File lib/soar_sc/rack/router/route_validation.rb, line 19 def validate_path unless @path.is_a?(String) raise InvalidPathError, "Invalid path in route #{to_s}" end components(@path).each do |c| if c.start_with?(Route::PARAMETER_PREFIX) and c !~ Route::PARAMETER_VALID_REGEXP raise InvalidParameterError, "Invalid path parameter in route #{to_s}" end end end