Module: Kazoo::App::ClassMethods
- Defined in:
- lib/kazoo/app.rb
Instance Method Summary collapse
- #krouter ⇒ Object
- #path(name, path = nil, opts = {}) ⇒ Object
- #path_options ⇒ Object
- #path_options=(val) ⇒ Object
- #set_paths(opts) ⇒ Object
Instance Method Details
#krouter ⇒ Object
10 11 12 |
# File 'lib/kazoo/app.rb', line 10 def krouter @_krouter ||= Kazoo::Router::App.new end |
#path(name, path = nil, opts = {}) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/kazoo/app.rb', line 30 def path(name, path = nil, opts = {}) opts = .merge(opts) path_prefix = opts.delete(:path_prefix) name_prefix = opts.delete(:name_prefix) name = "#{name_prefix}_#{name}" if name_prefix if path raise ArgumentError, "Path must be a string" unless path.is_a?(String) path = File.join(path_prefix, path) if path_prefix route = Kazoo::Router::Route.new(path, opts.merge(:app_mode => true)) krouter.add_route(route, name.to_sym) path else raise ArgumentError, "#The route `{name}` does not exist" unless krouter.named_routes[name] krouter.named_routes[name].to_s end end |
#path_options ⇒ Object
22 23 24 |
# File 'lib/kazoo/app.rb', line 22 def @_route_options || {} end |
#path_options=(val) ⇒ Object
14 15 16 17 18 19 20 |
# File 'lib/kazoo/app.rb', line 14 def (val) if val.is_a?(Hash) @_route_options = val else raise ArgumentError, "route_options must be a hash" end end |
#set_paths(opts) ⇒ Object
26 27 28 |
# File 'lib/kazoo/app.rb', line 26 def set_paths(opts) opts.each { |k,v| path(k,v) } end |