private void requestChangeUserTimeout(object callback) { cancelRequest(); IRestCallback cb = (IRestCallback)callback; //if (callback != null) // cb.changeUsernameCallback(false, 0); }
public void changeUsername(int id, string oldUsername, string newUsername, IRestCallback cb) { if (!NetworkInterface.GetIsNetworkAvailable()) { cb.changeUsernameCallback(false, 0); return; } lock (this) { if (webRequest != null) { cb.changeUsernameCallback(false, 0); return; } } callback = cb; string request = String.Format(USERNAME_SERVICE + "/{0}", id); webRequest = (HttpWebRequest)WebRequest.Create(new Uri(request)); webRequest.Method = "POST"; IAsyncResult result = webRequest.BeginGetRequestStream(new AsyncCallback(requestChangeUserStream), new UserChangeRequest(oldUsername, newUsername)); timer = new Timer(new TimerCallback(requestChangeUserTimeout), callback, 15 * 1000, Timeout.Infinite); }
private void requestSyncAllTimeout(object callback) { cancelRequest(); IRestCallback cb = (IRestCallback)callback; //if (callback != null) // cb.syncAllCallback(false, null); }
public void sync(Puzzle[] puzzles, int userid, IRestCallback cb) { if (!NetworkInterface.GetIsNetworkAvailable()) { cb.syncAllCallback(false, null); return; } lock (this) { if (webRequest != null) { cb.syncAllCallback(false, null); return; } } callback = cb; string request = String.Format(USERNAME_SERVICE + "/{0}/puzzle", userid); webRequest = (HttpWebRequest)WebRequest.Create(new Uri(request)); webRequest.Method = "POST"; IAsyncResult result = webRequest.BeginGetRequestStream(new AsyncCallback(requestSyncAllCreateStream), new SyncAllRequest(puzzles)); timer = new Timer(new TimerCallback(requestSyncAllTimeout), callback, 15 * 1000, Timeout.Infinite); }
public void sync(long time, int moves, Difficulty diff, int userid, int puzzleid, IRestCallback cb) { if (!NetworkInterface.GetIsNetworkAvailable()) { cb.syncOneCallback(false, null); return; } lock (this) { if (webRequest != null) { cb.syncOneCallback(false, null); return; } } callback = cb; string sdiff = "easy"; switch (diff) { case Difficulty.EASY: sdiff = "easy"; break; case Difficulty.MEDIUM: sdiff = "medium"; break; case Difficulty.HARD: sdiff = "hard"; break; case Difficulty.EXPERT: sdiff = "expert"; break; } string request = String.Format(USERNAME_SERVICE + "/{0}/puzzle/{1}/{2}", userid, puzzleid, sdiff); webRequest = (HttpWebRequest)WebRequest.Create(new Uri(request)); webRequest.Method = "POST"; IAsyncResult result = webRequest.BeginGetRequestStream(new AsyncCallback(requestSyncOneCreateStream), new SyncOneRequest(time, moves)); timer = new Timer(new TimerCallback(requestSyncOneTimeout), callback, 15 * 1000, Timeout.Infinite); }