Class: ReeRoutes::RouteBuilder
- Inherits:
-
Object
- Object
- ReeRoutes::RouteBuilder
- Defined in:
- lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb
Defined Under Namespace
Classes: Redirect
Constant Summary collapse
- VISIBILITIES =
[:public, :internal].freeze
Instance Method Summary collapse
- #action(name, from:) ⇒ Object
- #before(&proc) ⇒ Object
- #get_route ⇒ Object
-
#initialize ⇒ RouteBuilder
constructor
A new instance of RouteBuilder.
- #override(&proc) ⇒ Object
- #redirect(path, code: 301) ⇒ Object
- #respond_to(v) ⇒ Object
- #sections(*names) ⇒ Object
- #serializer(name, from:) ⇒ Object
- #summary(str) ⇒ Object
- #visibility(value) ⇒ Object
- #warden_scope(*scopes) ⇒ Object
Constructor Details
#initialize ⇒ RouteBuilder
Returns a new instance of RouteBuilder.
10 11 12 13 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 10 def initialize @route = ReeRoutes::Route.new @route.respond_to = :json end |
Instance Method Details
#action(name, from:) ⇒ Object
72 73 74 75 76 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 72 def action(name, from:) object = Ree.container.packages_facade.get_object(from, name) @route.action = object nil end |
#before(&proc) ⇒ Object
31 32 33 34 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 31 def before(&proc) @route.before = proc nil end |
#get_route ⇒ Object
26 27 28 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 26 def get_route @route end |
#override(&proc) ⇒ Object
37 38 39 40 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 37 def override(&proc) @route.override = proc nil end |
#redirect(path, code: 301) ⇒ Object
79 80 81 82 83 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 79 def redirect(path, code: 301) raise ArgumentError if ![301, 302, 303, 307, 308].include?(code) @route.redirect = Redirect.new(path, code) nil end |
#respond_to(v) ⇒ Object
21 22 23 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 21 def respond_to(v) @route.respond_to = v end |
#sections(*names) ⇒ Object
66 67 68 69 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 66 def sections(*names) @route.sections = names nil end |
#serializer(name, from:) ⇒ Object
59 60 61 62 63 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 59 def serializer(name, from:) object = Ree.container.packages_facade.get_object(from, name) @route.serializer = object nil end |
#summary(str) ⇒ Object
43 44 45 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 43 def summary(str) @route.summary = str end |
#visibility(value) ⇒ Object
48 49 50 51 52 53 54 55 56 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 48 def visibility(value) if !VISIBILITIES.include?(value) raise ArgumentError.new( "visibility should be one of #{VISIBILITIES.inspect}, got #{value.inspect}" ) end @route.visibility = value end |
#warden_scope(*scopes) ⇒ Object
16 17 18 |
# File 'lib/ree_lib/packages/ree_routes/package/ree_routes/route_builder.rb', line 16 def warden_scope(*scopes) @route.warden_scopes = scopes.flatten end |