Beispiel #1
0
        private void bgwWUQuery_DoWork(object sender, DoWorkEventArgs e)
        {
            Network  net    = Program.net.CloneElement();
            WUStatus sta    = net.PushWUStatus(MID);
            bool     Reboot = net.PushWUStatusRestart(MID);

            if (sta == null)
            {
                UpdateWUStatus("N/A", Reboot);
            }
            else
            {
                UpdateWUStatus(sta.Text, Reboot);
            }
        }
Beispiel #2
0
        public RESTStatus WUCheckStatus(SQLLib sql, object dummy, NetworkConnectionInfo ni, string MachineID)
        {
            if (ni.HasAcl(ACLFlags.ChangeServerSettings) == false)
            {
                ni.Error   = "Access denied";
                ni.ErrorID = ErrorFlags.AccessDenied;
                return(RESTStatus.Denied);
            }

            string guid = Guid.NewGuid().ToString();

            PushData p = new PushData();

            p.Action  = "wustatus";
            p.ReplyID = guid;

            PushServiceHelper.SendPushService(MachineID, p, 0);
            PushDataResponse resp = PushServiceHelper.PopResponse(MachineID, 0, guid);

            if (resp == null)
            {
                ni.Error   = "No response";
                ni.ErrorID = ErrorFlags.NoData;
                return(RESTStatus.NoContent);
            }

            try
            {
                WUStatus = JsonConvert.DeserializeObject <WUStatus>(resp.Data.ToString());
            }
            catch
            {
                ni.Error   = "Faulty data";
                ni.ErrorID = ErrorFlags.NoData;
                return(RESTStatus.NoContent);
            }

            return(RESTStatus.Success);
        }