There is no reason to define TBinaryProtocol.Factory here. Both of the default constructors do this for you.