示例#1
0
 public void MergeFrom(ChangeMsg other)
 {
     if (other == null)
     {
         return;
     }
     if (other.Timestamp != 0UL)
     {
         Timestamp = other.Timestamp;
     }
     if (other.ChangeType != 0)
     {
         ChangeType = other.ChangeType;
     }
     if (other.OperateType != 0)
     {
         OperateType = other.OperateType;
     }
     if (other.RoleType != 0)
     {
         RoleType = other.RoleType;
     }
     if (other.roleAttr_ != null)
     {
         if (roleAttr_ == null)
         {
             roleAttr_ = new global::Apollo.Cyber.Proto.RoleAttributes();
         }
         RoleAttr.MergeFrom(other.RoleAttr);
     }
 }
示例#2
0
        public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    input.SkipLastField();
                    break;

                case 8: {
                    Timestamp = input.ReadUInt64();
                    break;
                }

                case 16: {
                    changeType_ = (global::Apollo.Cyber.Proto.ChangeType)input.ReadEnum();
                    break;
                }

                case 24: {
                    operateType_ = (global::Apollo.Cyber.Proto.OperateType)input.ReadEnum();
                    break;
                }

                case 32: {
                    roleType_ = (global::Apollo.Cyber.Proto.RoleType)input.ReadEnum();
                    break;
                }

                case 42: {
                    if (roleAttr_ == null)
                    {
                        roleAttr_ = new global::Apollo.Cyber.Proto.RoleAttributes();
                    }
                    input.ReadMessage(roleAttr_);
                    break;
                }
                }
            }
        }