Class: PipeRpc::Server

Inherits:
BasicInterface show all
Defined in:
lib/pipe_rpc/server.rb

Constant Summary collapse

TRANSPORT_PREFIX =
"__rpc_server__"

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BasicInterface

const_missing

Class Method Details

.instance_eval_for(server, *args, &block) ⇒ Object



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

def instance_eval_for(server, *args, &block)
  Object.instance_method(:instance_eval).bind(server).call(*args, &block)
end

Instance Method Details

#__rpc_server_class_name__Object



8
9
10
# File 'lib/pipe_rpc/server.rb', line 8

def __rpc_server_class_name__
  __class__.to_s
end

#__rpc_server_id__Object



12
13
14
# File 'lib/pipe_rpc/server.rb', line 12

def __rpc_server_id__
  "#{__rpc_server_class_name__}##{__id__}".to_sym
end

#to_rpc_transport(hub) ⇒ Object



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

def to_rpc_transport(hub)
  hub.servers.add(self) unless hub.servers.registered? __rpc_server_id__
  "#{TRANSPORT_PREFIX}#{__rpc_server_id__}"
end