open Thrift | |
module S = TServer | |
class t pf st tf ipf opf = | |
object | |
inherit S.t pf st tf ipf opf | |
method serve = | |
try | |
st#listen; | |
let c = st#accept in | |
let trans = tf#getTransport c in | |
let inp = ipf#getProtocol trans in | |
let op = opf#getProtocol trans in | |
try | |
while (pf#process inp op) do () done; | |
trans#close | |
with e -> trans#close; raise e | |
with _ -> () | |
end |