public void MergeFrom(ServerMessage other)
    {
        if (other == null)
        {
            return;
        }
        switch (other.MessageCase)
        {
        case MessageOneofCase.ArduinoConnectedMessage:
            if (ArduinoConnectedMessage == null)
            {
                ArduinoConnectedMessage = new global::ArduinoConnected();
            }
            ArduinoConnectedMessage.MergeFrom(other.ArduinoConnectedMessage);
            break;

        case MessageOneofCase.ClientConnectedMessage:
            if (ClientConnectedMessage == null)
            {
                ClientConnectedMessage = new global::ClientConnected();
            }
            ClientConnectedMessage.MergeFrom(other.ClientConnectedMessage);
            break;
        }

        _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
    }
    public override int GetHashCode()
    {
        int hash = 1;

        if (messageCase_ == MessageOneofCase.ArduinoConnectedMessage)
        {
            hash ^= ArduinoConnectedMessage.GetHashCode();
        }
        if (messageCase_ == MessageOneofCase.ClientConnectedMessage)
        {
            hash ^= ClientConnectedMessage.GetHashCode();
        }
        hash ^= (int)messageCase_;
        if (_unknownFields != null)
        {
            hash ^= _unknownFields.GetHashCode();
        }
        return(hash);
    }