예제 #1
0
func (c *tchanMetaClient) ThriftIDL(ctx Context) (*gen.ThriftIDLs, error) {
	var resp gen.MetaThriftIDLResult
	args := gen.MetaThriftIDLArgs{}
	success, err := c.client.Call(ctx, c.thriftService, "thriftIDL", &args, &resp)
	if err == nil && !success {
	}

	return resp.GetSuccess(), err
}
예제 #2
0
func (s *tchanMetaServer) handleThriftIDL(ctx Context, protocol athrift.TProtocol) (bool, athrift.TStruct, error) {
	var req gen.MetaThriftIDLArgs
	var res gen.MetaThriftIDLResult

	if err := req.Read(protocol); err != nil {
		return false, nil, err
	}

	r, err :=
		s.handler.ThriftIDL(ctx)

	if err != nil {
		return false, nil, err
	}
	res.Success = r

	return err == nil, &res, nil
}