ServerListItem IEntity <ServerListItem> .ApplyFrom(CommandParameterGroup currentParameterGroup, CommandParameterGroup firstParameterGroup)
        {
            if (currentParameterGroup == null)
            {
                throw new ArgumentNullException(nameof(currentParameterGroup));
            }

            string statusString        = currentParameterGroup.GetParameterValue("virtualserver_status");
            VirtualServerStatus status = VirtualServerStatusHelper.Parse(statusString);
            uint?uptime = currentParameterGroup.GetParameterValue <uint?>("virtualserver_uptime");

            UniqueId     = currentParameterGroup.GetParameterValue("virtualserver_unique_identifier");
            ServerId     = currentParameterGroup.GetParameterValue <uint>("virtualserver_id");
            ServerPort   = currentParameterGroup.GetParameterValue <ushort>("virtualserver_port");
            ServerStatus = status;
            ServerNumberOfClientsOnline      = currentParameterGroup.GetParameterValue <uint?>("virtualserver_clientsonline");
            ServerNumberOfQueryClientsOnline = currentParameterGroup.GetParameterValue <uint?>("virtualserver_queryclientsonline");
            ServerMaximumClientsAllowed      = currentParameterGroup.GetParameterValue <uint?>("virtualserver_maxclients");
            ServerUptime    = uptime.HasValue ? (TimeSpan?)TimeSpan.FromSeconds(uptime.Value) : null;
            ServerName      = currentParameterGroup.GetParameterValue("virtualserver_name");
            ServerAutoStart = currentParameterGroup.GetParameterValue("virtualserver_autostart") == "1";
            ServerMachineId = currentParameterGroup.GetParameterValue("virtualserver_machine_id");

            return(this);
        }
        ServerListItemBase IEntity <ServerListItemBase> .ApplyFrom(CommandParameterGroup currentParameterGroup, CommandParameterGroup firstParameterGroup)
        {
            if (currentParameterGroup == null)
            {
                throw new ArgumentNullException(nameof(currentParameterGroup));
            }

            string statusString        = currentParameterGroup.GetParameterValue("virtualserver_status");
            VirtualServerStatus status = VirtualServerStatusHelper.Parse(statusString);

            ServerId     = currentParameterGroup.GetParameterValue <uint>("virtualserver_id");
            ServerPort   = currentParameterGroup.GetParameterValue <ushort>("virtualserver_port");
            ServerStatus = status;

            return(this);
        }