Add the initial implementation for Thrift