116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
# File 'lib/fairy/master.rb', line 116
def assgin_controller
Log::debug(self, "Assgin Controller")
@controllers_mutex.synchronize do
controller_id = controller_next_id
MasterAPP.start_subcommand(CONF.RUBY_BIN,
CONF.CONTROLLER_BIN,
"--master", @deepconnect.local_id.to_s,
"--id", controller_id.to_s)
begin
timeout(CONF.SUBCMD_EXEC_TIMEOUT) do
while !@controllers[controller_id]
@controllers_cv.wait(@controllers_mutex)
end
end
rescue Timeout::Error
Log::fatal(self, "Can't exec Controller")
ERR::Fail ERR::CantExecSubcmd, "controller"
end
Log::debug(self, "Assgin Controller: Assgined")
@controllers[controller_id]
end
end
|