Module: Brakeman::RouteHelper
- Included in:
- Rails2RoutesProcessor, Rails3RoutesProcessor
- Defined in:
- lib/brakeman/processors/lib/route_helper.rb
Instance Method Summary collapse
-
#add_resource_routes ⇒ Object
Add default routes minus :index.
-
#add_resources_routes ⇒ Object
Add default routes.
-
#add_route(route, controller = nil) ⇒ Object
Add route to controller.
-
#current_controller=(name) ⇒ Object
Sets the controller name to a proper class name.
-
#prefix ⇒ Object
Manage Controller prefixes suitable for prefixing onto a controller name.
Instance Method Details
#add_resource_routes ⇒ Object
Add default routes minus :index
61 62 63 64 65 66 67 |
# File 'lib/brakeman/processors/lib/route_helper.rb', line 61 def add_resource_routes existing_routes = @tracker.routes[@current_controller] unless existing_routes.is_a? Array and existing_routes.first == :allow_all_actions existing_routes.merge [:new, :create, :show, :edit, :update, :destroy] end end |
#add_resources_routes ⇒ Object
Add default routes
52 53 54 55 56 57 58 |
# File 'lib/brakeman/processors/lib/route_helper.rb', line 52 def add_resources_routes existing_routes = @tracker.routes[@current_controller] unless existing_routes.is_a? Array and existing_routes.first == :allow_all_actions existing_routes.merge [:index, :new, :create, :show, :edit, :update, :destroy] end end |
#add_route(route, controller = nil) ⇒ Object
Add route to controller. If a controller is specified, the current controller will be set to that controller. If no controller is specified, uses current controller value.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/brakeman/processors/lib/route_helper.rb', line 27 def add_route route, controller = nil if node_type? route, :str, :lit route = route.value end return unless route.is_a? String or route.is_a? Symbol if route.is_a? String and controller.nil? and route.include? ":controller" controller = ":controller" end route = route.to_sym if controller self.current_controller = controller end routes = @tracker.routes[@current_controller] if routes and not routes.include? :allow_all_actions routes << route end end |
#current_controller=(name) ⇒ Object
Sets the controller name to a proper class name. For example self.current_controller = :session Also prepends the prefix if there is one set.
19 20 21 22 |
# File 'lib/brakeman/processors/lib/route_helper.rb', line 19 def current_controller= name @current_controller = (prefix + camelize(name) + "Controller").to_sym @tracker.routes[@current_controller] ||= Set.new end |
#prefix ⇒ Object
Manage Controller prefixes suitable for prefixing onto a controller name.
5 6 7 8 9 10 11 |
# File 'lib/brakeman/processors/lib/route_helper.rb', line 5 def prefix if @prefix.length > 0 @prefix.join("::") << "::" else '' end end |