Class: DDP::Server::API

Inherits:
Object
  • Object
show all
Defined in:
lib/ddp/server/api.rb

Overview

Helper class that users can extend to implement an API that can be passed as the RPC API parameter to the RethinkDB DDP protocol

Instance Method Summary collapse

Constructor Details

#initializeAPI

Returns a new instance of API.



6
7
8
9
# File 'lib/ddp/server/api.rb', line 6

def initialize
	setup_rpc
	setup_collections
end

Instance Method Details

#collection_query(name, *params) ⇒ Object



16
17
18
19
# File 'lib/ddp/server/api.rb', line 16

def collection_query(name, *params)
	raise 'No such collection' unless @collections.include? name
	wrap_query(send(name, *params))
end

#invoke_rpc(method, *params) ⇒ Object



11
12
13
14
# File 'lib/ddp/server/api.rb', line 11

def invoke_rpc(method, *params)
	raise 'No such method' unless @rpc_methods.include? method
	send(method, *params)
end

#wrap_query(query) ⇒ Object

Implementors must override wrap_query. The argument is a query that is to be executed the result should be a proc that yields data values to its block parameter.



23
24
25
# File 'lib/ddp/server/api.rb', line 23

def wrap_query(query)
	raise 'implement wrap query'
end