/// <summary> /// 先只实现群聊,返回是否请求到了消息 /// </summary> public void DoChatSession(ICometRequest cometRequest, IEnumerable<ChatMessageModel> messages, FinishCallback cb) { CometAsyncResult request = cometRequest as CometAsyncResult; var newMessages = messages.Where(p => p.Id > request.Request.lastId); if (newMessages.Count() > 0) { request.Response.Message = newMessages; cometRequest.IsCompeled = true; } else { request.Response.Message =new List<ChatMessageModel>(); } if(cb!=null) cb(cometRequest); }
public void DoChatSession(ICometRequest cometRequest,IEnumerable<ChatMessageModel> messages, FinishCallback cb) { HttpCometRequest request = cometRequest as HttpCometRequest; string outStr=string.Empty; var newMessages = messages.Where(p => p.Id > request.LastId); if (newMessages.Count() > 0) { outStr = newMessages.Count().ToString() + "new message"; cometRequest.IsCompeled = true; } request.OutPutMessage = outStr; if (cb != null) cb(cometRequest); }
public Engine2(Schematic s, FinishCallback finish, Progress progress) { this.s = s; this.finish = finish; this.progress = progress; }
private static void startPerformRequest(UnityWebRequest www, Request request, FinishCallback callback) { CoroutineStarter.Instance.Add(waitForRequest(www, request, callback)); }
/// <summary> /// Performs a HTTP POST request allowing parameters send URL encoded in the body and header fields /// </summary> /// <param name="url">to use</param> /// <param name="parameters">to be encoded into the body</param> /// <param name="headers">to be used for the request</param> /// <param name="callback">when finished</param> public void Post(string url, Dictionary <string, string> parameters, Dictionary <string, string> headers, FinishCallback callback) { Request request = new Request { Url = url, Method = HttpMethod.POST, Parameters = parameters, Cookies = Cookies, Headers = headers }; doPerform(request, callback); }
public void download(string fullURL, string fileName, long offset, DownloadingCallback downloading, TimeoutCallback timeout, StartCallback start, FinishCallback finish) { mDownloadListLock.waitForUnlock(); DownloadInfo info = new DownloadInfo(); // 下载地址里需要将空格替换为%20 info.mURL = StringUtility.strReplaceAll(fullURL, " ", "%20"); info.mFileName = fileName; info.mDownloadingCallback = downloading; info.mStartCallback = start; info.mFinishCallback = finish; info.mTimeoutCallback = timeout; info.mDownloadOffset = offset; mDownloadList.Add(info); mDownloadListLock.unlock(); }
public void setFinishCallback(FinishCallback callback) { this._onFinishCallback = callback; }
public void Perform(Request request, FinishCallback callback) { this.Request = request; this.Callback = callback; }
/// <summary> /// Performs a HTTP POST request by sending raw bytes as the body /// </summary> /// <param name="url">to use</param> /// <param name="data">raw body to send</param> /// <param name="headers">to be used for the request</param> /// <param name="callback">when finished</param> public void Post(string url, byte[] data, Dictionary <string, string> headers, FinishCallback callback) { Request request = new Request() { Url = url, Method = HttpMethod.POST, Body = data, Cookies = Cookies, Headers = headers }; perform(request, callback); }
public void SetExternalData(FinishCallback callback) { _finishCallback = callback; }
private void convertFuncFinishCallback(FinishCallback callback) { _finishConvertCallback = callback; }
public void Perform(Request request, FinishCallback callback) { Request = request; Callback = callback; }
public void RegisterFinishCallback(FinishCallback callback) { finishCallbacks.Add(callback); }
private static IEnumerator waitForRequest(UnityWebRequest www, Request request, FinishCallback callback) { using (www) { yield return(www.SendWebRequest()); if (string.IsNullOrEmpty(www.error)) { Dictionary <string, string> headers = new Dictionary <string, string>(www.GetResponseHeaders()); if (request.Cookies != null) { request.Cookies.Update(headers); } int code = (int)www.responseCode; UnityWebRequest.ClearCookieCache(); callback(new Response(www.downloadHandler.text, code, StatusCodes.MessageFromCode(code), headers, request.Cookies)); } else { callback(Response.BuildError(www.error)); } } }
public void Invoke(Request _request, FinishCallback _finish, ErrorCallback _err) { invoke(_request, _finish, _err); }
private System.Collections.IEnumerator waitForRequest(WWW www, Request request, FinishCallback callback) { using (www) { yield return(www); if (string.IsNullOrEmpty(www.error)) { if (request.Cookies != null) { request.Cookies.Update(www.responseHeaders); } callback(new Response(www.text, HttpStatusCode.OK, "OK", request.Cookies)); } else { callback(Response.BuildError(www.error)); } } }
/// <summary> /// Performs a HTTP GET request /// </summary> /// <param name="url">to use</param> /// <param name="callback">when finished</param> public void Get(string url, FinishCallback callback) { Get(url, null, null, callback); }
public AnimationPlayer OnFinsh(FinishCallback finish) { _onFinish = finish; return(this); }
public static AnimationBehaviour CreateAnimation <TEase>(this MonoBehaviour monoBehaviour, float duration, float delay = 0f, string name = null, StartCallback startCallback = null, UpdateCallback updateCallback = null, CancelCallback cancelCallback = null, DoneCallback doneCallback = null, FinishCallback finishCallback = null, bool single = false, bool considerTimeScale = true, object data = null, bool inverse = false) where TEase : IAnimationEase, new() { var ease = new TEase(); return(CreateAnimation(monoBehaviour, ease, duration, delay, name, startCallback, updateCallback, cancelCallback, doneCallback, finishCallback, single, considerTimeScale, data, inverse)); }
public static AnimationBehaviour CreateAnimation(this MonoBehaviour monoBehaviour, AnimationEaseType easeType, float duration, float delay = 0f, string name = null, StartCallback startCallback = null, UpdateCallback updateCallback = null, CancelCallback cancelCallback = null, DoneCallback doneCallback = null, FinishCallback finishCallback = null, bool single = false, bool considerTimeScale = false, object data = null, bool inverse = false) { var ease = AnimationHelper.EaseTypeToFunction(easeType); return(CreateAnimation(monoBehaviour, ease, duration, delay, name, startCallback, updateCallback, cancelCallback, doneCallback, finishCallback, single, considerTimeScale, data, inverse)); }
public static AnimationBehaviour CreateAnimation(this MonoBehaviour monoBehaviour, IAnimationEase ease, float duration, float delay = 0f, string name = null, StartCallback startCallback = null, UpdateCallback updateCallback = null, CancelCallback cancelCallback = null, DoneCallback doneCallback = null, FinishCallback finishCallback = null, bool single = false, bool considerTimeScale = false, object data = null, bool inverse = false) { if (single) { if (string.IsNullOrEmpty(name)) { Debug.Log("Animation can just be single if its name is not empty neither null."); } else { CancelAnimations(monoBehaviour, name); } } var gameObject = monoBehaviour.gameObject; var anim = gameObject.AddComponent <AnimationBehaviour>(); anim.Delay = delay; anim.Name = name; anim.Ease = ease; anim.StartCallback = startCallback; anim.UpdateCallback = updateCallback; anim.FinishCallback = finishCallback; anim.Duration = duration; anim.DoneCallback = doneCallback; anim.CancelCallback = cancelCallback; anim.ConsiderTimeScale = considerTimeScale; anim.Data = data ?? monoBehaviour; anim.Inverse = inverse; anim.Start(); return(anim); }
public void upload(string fullURL, string fileName, string uploadPath, StartCallback start, FinishCallback finish) { mUploadListLock.waitForUnlock(); DownloadInfo info = new DownloadInfo(); info.mURL = StringUtility.strReplaceAll(fullURL, " ", "%20"); info.mFileName = fileName; info.mUploadPath = uploadPath; info.mStartCallback = start; info.mFinishCallback = finish; mUploadList.Add(info); mUploadListLock.unlock(); }
public static void Query(string query, int limit, int callbacksPerFrame, DataCallback dataCallback, FinishCallback finishCallback) { string queryString = string.Format("?query={1}&limit={2}", baseurl, UnityWebRequest.EscapeURL(query), limit); // queryString = UnityWebRequest.EscapeURL(queryString); // escape query for crossorigin.me string url = baseurl + queryString; Debug.Log(url); instance.StartCoroutine(QueryRoutine(url, callbacksPerFrame, dataCallback, finishCallback)); }
/// <summary> /// Performs a HTTP POST request allowing parameters send URL encoded in the body /// </summary> /// <param name="url">to use</param> /// <param name="parameters">to be encoded into the body</param> /// <param name="callback">when finished</param> public void Post(string url, Dictionary <string, string> parameters, FinishCallback callback) { Post(url, parameters, null, callback); }
static IEnumerator QueryRoutine(string url, int callbacksPerFrame, DataCallback dataCallback, FinishCallback finishCallback) { busy = true; var request = UnityWebRequest.Get(url); yield return(request.SendWebRequest()); if (!request.isNetworkError) { string json = request.downloadHandler.text; int i = 0; foreach (Match m in Regex.Matches(json, @"(\{[^\}]*\})")) { Data data = null; try { data = JsonUtility.FromJson <Data>(m.ToString()); } catch (System.ArgumentException e) { Debug.LogErrorFormat("Error parsing JSON data {0}: {1}", i, e); } if (data != null) { if (data.a <= 0) { Debug.LogErrorFormat("Invalid JSON data {0}: Invalid Semimajor Axis of {1} AU", i, data.a); } else if (data.e < 0 || data.e >= 1) { Debug.LogErrorFormat("Invalid JSON data {0}: Invalid Eccentricity of {1}", i, data.e); } else { data.index = i; dataCallback(data); } } if (i % callbacksPerFrame == 0) { yield return(null); } i++; } finishCallback(); } else { Debug.LogError(request.error); } busy = false; }
/// <summary> /// Performs a HTTP POST request by sending raw bytes as the body /// </summary> /// <param name="url">to use</param> /// <param name="data">raw body to send</param> /// <param name="callback">when finished</param> public void Post(string url, byte[] data, FinishCallback callback) { Post(url, data, null, callback); }
public void Init(TerrainGen gen, FinishCallback fc, AnimationCurve contToAmp) { generator = gen; callback = fc; continentToAmpCurve = new AnimationCurve(contToAmp.keys); }