forked from gnufied/backgroundrb
-
Notifications
You must be signed in to change notification settings - Fork 1
/
foo_controller.rb
48 lines (40 loc) · 1.09 KB
/
foo_controller.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
class FooController < ApplicationController
layout :choose_layout
def index
end
def mobile_action
#render :layout => "mobile"
end
def start_worker
MiddleMan.new_worker(:worker => :error_worker, :worker_key => :hello_world,:data => "wow_man")
render :text => "worker starterd"
end
def stop_worker
MiddleMan.worker(:error_worker,:hello_world).delete
render :text => "worker deleted"
end
def invoke_worker_method
worker_response = MiddleMan.worker(:hello_worker).say_hello(:arg => data)
render :text => worker_response
end
def renew
MiddleMan.worker(:hello_worker).async_load_policy(:arg => current_user.id)
render :text => "method invoked"
end
def query_all_workers
t_response = MiddleMan.query_all_workers
running_workers = t_response.map { |key,value| "#{key} = #{value}"}.join(',')
render :text => running_workers
end
def ask_result
t_result = MiddleMan.worker(:hello_worker).ask_result(cache_key)
end
private
def choose_layout
if action_name == 'mobile_action'
"mobile"
else
"foo"
end
end
end