public bool recv_grant_role()
 {
     TMessage msg = iprot_.ReadMessageBegin();
     if (msg.Type == TMessageType.Exception)
     {
         TApplicationException x = TApplicationException.Read(iprot_);
         iprot_.ReadMessageEnd();
         throw x;
     }
     grant_role_result result = new grant_role_result();
     result.Read(iprot_);
     iprot_.ReadMessageEnd();
     if (result.__isset.success)
     {
         return result.Success;
     }
     if (result.__isset.o1)
     {
         throw result.O1;
     }
     throw new TApplicationException(TApplicationException.ExceptionType.MissingResult, "grant_role failed: unknown result");
 }
 public void grant_role_Process(int seqid, TProtocol iprot, TProtocol oprot)
 {
     grant_role_args args = new grant_role_args();
     args.Read(iprot);
     iprot.ReadMessageEnd();
     grant_role_result result = new grant_role_result();
     try
     {
         result.Success = iface_.grant_role(args.Role_name, args.Principal_name, args.Principal_type, args.Grantor, args.GrantorType, args.Grant_option);
     }
     catch (MetaException o1)
     {
         result.O1 = o1;
     }
     oprot.WriteMessageBegin(new TMessage("grant_role", TMessageType.Reply, seqid));
     result.Write(oprot);
     oprot.WriteMessageEnd();
     oprot.Transport.Flush();
 }