summaryrefslogtreecommitdiffstats
path: root/_build/static/archives/extend/attachments/20130605/568478c8/attachment.html
blob: d5a5f32c5ac4f03c7b92753b6b61e736001603d8 (plain) (blame)
1
2
3
4
5
6
7
8
9
<tt>
&lt;div&nbsp;dir=&quot;ltr&quot;&gt;Hi,&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;I&#39;m&nbsp;trying&nbsp;to&nbsp;implement&nbsp;REST&nbsp;handler&nbsp;which&nbsp;communicates&nbsp;to&nbsp;custom&nbsp;gen_servers.&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Get&nbsp;gen_server&nbsp;from&nbsp;supervisor&nbsp;and&nbsp;link&nbsp;to&nbsp;current&nbsp;handler&nbsp;process:�&lt;/div&gt;&lt;div&gt;<br>
&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;rest_init(Req,&nbsp;_Opts)&nbsp;-&gt;&lt;/div&gt;&lt;div&gt;...&lt;/div&gt;&lt;div&gt;&lt;div&gt;&nbsp;process_flag(trap_exit,&nbsp;true),&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&nbsp;{ok,&nbsp;Pid}&nbsp;=&nbsp;pbshare_logic_sup:start_registration(),&lt;br&gt;&lt;/div&gt;&lt;div&gt;&nbsp;link(Pid),&lt;/div&gt;&lt;/div&gt;&lt;div&gt;<br>
...&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;make_get(Req,&nbsp;State)&nbsp;-&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;....&lt;/div&gt;&lt;div&gt;make&nbsp;error&nbsp;here&nbsp;!!!&lt;/div&gt;&lt;div&gt;....&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;And&nbsp;gen_server&nbsp;code:&lt;/div&gt;&lt;div&gt;&lt;div&gt;start_link()&nbsp;-&gt;&lt;/div&gt;<br>
&lt;div&gt;&nbsp;gen_server:start_link(?MODULE,&nbsp;[],&nbsp;[]).&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;init(Args)&nbsp;-&gt;&lt;/div&gt;&lt;div&gt;&nbsp;process_flag(trap_exit,&nbsp;true),&lt;br&gt;&lt;/div&gt;&lt;div&gt;&nbsp;{ok,&nbsp;[]}.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;handle_info({&#39;EXIT&#39;,&nbsp;FromPid,&nbsp;Reason},&nbsp;State)&nbsp;-&gt;&lt;/div&gt;<br>
&lt;div&gt;&nbsp;lager:info(&quot;Exit&nbsp;Logic&nbsp;from&nbsp;~p&nbsp;�Reason:&nbsp;~p~n&quot;,&nbsp;[FromPid,&nbsp;Reason]),&lt;/div&gt;&lt;div&gt;&nbsp;{noreply,&nbsp;State};&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;So&nbsp;I&nbsp;expect&nbsp;to&nbsp;receive&nbsp;EXIT&nbsp;signal&nbsp;from&nbsp;REST&nbsp;handler&nbsp;to&nbsp;my&nbsp;gen_server&nbsp;when&nbsp;error&nbsp;occurs&nbsp;in&nbsp;cowboy.&lt;/div&gt;<br>
&lt;div&gt;But&nbsp;I&nbsp;don&#39;t&nbsp;receive&nbsp;it.&nbsp;Am&nbsp;I&nbsp;doing&nbsp;something&nbsp;wrong?�&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;<br>

</tt>