public static Appclasses.Core.Data.NameValueObject SetObject(string table, Appclasses.Core.Data.NameValueObject data, out string error) { string result; var startedAt = DateTime.Now; var serData = CompactSerializer.Serialize <Appclasses.Core.Data.NameValueObject> (data); QRScanner.Appclasses.Log.Write(new QRScanner.Appclasses.LogEntry("END REQUEST: [Device/SerializeObject];" + (DateTime.Now - startedAt).TotalMilliseconds.ToString())); if (WebApp.Post("mode=setObj&table=" + table, serData, out result)) { try { startedAt = DateTime.Now; var nvo = CompactSerializer.Deserialize <Appclasses.Core.Data.NameValueObject>(result); QRScanner.Appclasses.Log.Write(new QRScanner.Appclasses.LogEntry("END REQUEST: [Device/DeserializeObject];" + (DateTime.Now - startedAt).TotalMilliseconds.ToString())); error = nvo == null ? "Zapis objekta ni uspel!" : ""; return(nvo); } catch (Exception ex) { error = "Napaka pri tolmačenju odziva web strežnika: " + ex.Message; return(null); } } else { error = "Napaka pri klicu web strežnika: " + result; return(null); } }
public static bool TryLock(string lockID, out string error) { if (obtainedLocks.FirstOrDefault(x => x == lockID) != null) { error = "OK!"; return(true); } var wf = new WaitForm(); try { // wf.Start("Pridobivam dostop"); var obj = new Appclasses.Core.Data.NameValueObject("Lock"); obj.SetString("LockID", lockID); obj.SetString("LockInfo", UserName()); obj.SetInt("Locker", UserID()); var serObj = CompactSerializer.Serialize <QRScanner.Appclasses.Core.Data.NameValueObject>(obj); if (WebApp.Post("mode=tryLock", serObj, out error)) { if (error == "OK!") { obtainedLocks.Add(lockID); return(true); } else { return(false); } } else { return(false); } } finally { // wf.Stop(); } }