Class: BBServer::RouteRegistry

Inherits:
Object
  • Object
show all
Defined in:
lib/bbserver/route_registry.rb

Instance Method Summary collapse

Constructor Details

#initializeRouteRegistry

Returns a new instance of RouteRegistry.



5
6
7
8
# File 'lib/bbserver/route_registry.rb', line 5

def initialize
  @routes = []
  @middlewares = []
end

Instance Method Details

#anyObject



14
15
16
17
18
# File 'lib/bbserver/route_registry.rb', line 14

def any
  route = Route.new(method: nil, path: nil, middlewares: @middlewares.dup, any: true)
  @routes << route
  route
end

#delete(path) ⇒ Object



43
44
45
46
# File 'lib/bbserver/route_registry.rb', line 43

def delete(path)
  raise_if_any_registered
  register_route(:DELETE, path)
end

#get(path) ⇒ Object



28
29
30
31
# File 'lib/bbserver/route_registry.rb', line 28

def get(path)
  raise_if_any_registered
  register_route(:GET, path)
end

#get_anyObject



24
25
26
# File 'lib/bbserver/route_registry.rb', line 24

def get_any
  @routes.find(&:any?)
end

#has_any?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/bbserver/route_registry.rb', line 20

def has_any?
  @routes.any?(&:any?)
end

#head(path) ⇒ Object



53
54
55
56
# File 'lib/bbserver/route_registry.rb', line 53

def head(path)
  raise_if_any_registered
  register_route(:HEAD, path)
end

#lengthObject



67
68
69
# File 'lib/bbserver/route_registry.rb', line 67

def length
  @routes.length
end

#listObject



63
64
65
# File 'lib/bbserver/route_registry.rb', line 63

def list
  @routes
end

#options(path) ⇒ Object



58
59
60
61
# File 'lib/bbserver/route_registry.rb', line 58

def options(path)
  raise_if_any_registered
  register_route(:OPTIONS, path)
end

#patch(path) ⇒ Object



48
49
50
51
# File 'lib/bbserver/route_registry.rb', line 48

def patch(path)
  raise_if_any_registered
  register_route(:PATCH, path)
end

#post(path) ⇒ Object



33
34
35
36
# File 'lib/bbserver/route_registry.rb', line 33

def post(path)
  raise_if_any_registered
  register_route(:POST, path)
end

#put(path) ⇒ Object



38
39
40
41
# File 'lib/bbserver/route_registry.rb', line 38

def put(path)
  raise_if_any_registered
  register_route(:PUT, path)
end

#use(&block) ⇒ Object



10
11
12
# File 'lib/bbserver/route_registry.rb', line 10

def use(&block)
  @middlewares << block
end