Module: Route

Defined in:
lib/primate/route.rb,
sig/primate.rbs

Class Method Summary collapse

Class Method Details

.call_js(scope_id, verb, js_req, helpers, session, i18n) ⇒ Object

Parameters:

  • scope_id (String)
  • verb (String)
  • js_req (Object)
  • helpers (Object)
  • session (Object)

Returns:

  • (Object)


43
44
45
46
47
48
49
50
51
52
53
# File 'lib/primate/route.rb', line 43

def call_js(scope_id, verb, js_req, helpers, session, i18n)
  set_session(session, helpers)
  set_i18n(i18n)

  verb_up = verb.to_s.upcase
  entry = @registry.dig(scope_id.to_s, verb_up)
  return Response.error(status: 404) unless entry

  request = Request.new(js_req, helpers)
  entry[:handler].call(request)
end

.call_route ⇒ Object

Parameters:

  • method (String)
  • request (Request)

Returns:

  • (Object)


121
# File 'sig/primate.rbs', line 121

def self.call_route: (String method, Request request) -> untyped

.clear(id = nil) ⇒ void

This method returns an undefined value.

Parameters:

  • id (String) (defaults to: nil)


18
19
20
21
22
# File 'lib/primate/route.rb', line 18

def clear(id = nil)
  target = (id || @current_scope).to_s
  @registry.delete(target)
  @registry[target] = {}
end

.connect {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


118
# File 'sig/primate.rbs', line 118

def self.connect: () { (Request) -> untyped } -> void

.delete {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


115
# File 'sig/primate.rbs', line 115

def self.delete: () { (Request) -> untyped } -> void

.get {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


111
# File 'sig/primate.rbs', line 111

def self.get: () { (Request) -> untyped } -> void

.head {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


116
# File 'sig/primate.rbs', line 116

def self.head: () { (Request) -> untyped } -> void

.options {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


117
# File 'sig/primate.rbs', line 117

def self.options: () { (Request) -> untyped } -> void

.patch {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


114
# File 'sig/primate.rbs', line 114

def self.patch: () { (Request) -> untyped } -> void

.post {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


112
# File 'sig/primate.rbs', line 112

def self.post: () { (Request) -> untyped } -> void

.put {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


113
# File 'sig/primate.rbs', line 113

def self.put: () { (Request) -> untyped } -> void

.registry(id = nil) ⇒ Hash[String, Proc]

Parameters:

  • id (String) (defaults to: nil)

Returns:

  • (Hash[String, Proc])


24
25
26
# File 'lib/primate/route.rb', line 24

def registry(id = nil)
  @registry[(id || @current_scope).to_s]
end

.scope(id) ⇒ void

This method returns an undefined value.

Parameters:

  • id (String)


13
14
15
16
# File 'lib/primate/route.rb', line 13

def scope(id)
  @current_scope = id.to_s
  @registry[@current_scope]
end

.set_i18n(i18n) ⇒ Object



39
40
41
# File 'lib/primate/route.rb', line 39

def set_i18n(i18n)
  I18N.set_current(i18n)
end

.set_session(session, helpers) ⇒ Object



35
36
37
# File 'lib/primate/route.rb', line 35

def set_session(session, helpers)
  PrimateInternal.set_session(session, helpers)
end

.trace {|arg0| ... } ⇒ void

This method returns an undefined value.

Yields:

Yield Parameters:

Yield Returns:

  • (Object)


119
# File 'sig/primate.rbs', line 119

def self.trace: () { (Request) -> untyped } -> void