IntroductionBefore coding the real reverse proxy I tryed to make something like a general proxy (gateway) behaviour. Usage$ erl
Erlang (BEAM) emulator version 5.5.3 [source] [async-threads:0] [hipe] [kernel-poll:false]
Eshell V5.5.3 (abort with ^G)
1> c(gproxy1).
./gproxy1.erl:93: Warning: variable 'Server' is unused
./gproxy1.erl:96: Warning: variable 'Server' is unused
{ok,gproxy1}
2> Double=fun(X) -> 2*X end.
#Fun<erl_eval.6.56006484>
3> Triple=fun(X) -> 3*X end.
#Fun<erl_eval.6.56006484>
4> Server=gproxy1:start(Double).
<0.39.0>
5> Gateway=gproxy1:gateway(Server).
<0.41.0>
6> gproxy1:rpc(Server,21).
42
7> gproxy1:rpc(Gateway,22).
44
8> gproxy1:change_code(Server,Triple).
{swap_code,#Fun<erl_eval.6.56006484>}
9> gproxy1:rpc(Server,21).
63
10> Server1=gproxy1:start(Double).
<0.47.0>
11> gproxy1:change_be(Gateway,Server1).
{<0.47.0>,be_change}
12> gproxy1:rpc(Gateway,21).
42
|