WP7GapClassLib.PhoneGap.PluginResult.ToCallbackString C# (CSharp) Method

ToCallbackString() public method

public ToCallbackString ( string callbackId, string successCallback, string errorCallback ) : string
callbackId string
successCallback string
errorCallback string
return string
        public string ToCallbackString(string callbackId, string successCallback, string errorCallback)
        {
            //return String.Format("{0}('{1}',{2});", successCallback, callbackId, this.ToJSONString());

            if (this.IsSuccess)
            {
                StringBuilder buf = new StringBuilder("");
                if (this.Cast != null)
                {
                    buf.Append("var temp = " + this.Cast + "(" + this.ToJSONString() + ");\n");
                    buf.Append(String.Format("{0}('{1}',temp);", successCallback, callbackId));
                }
                else
                {
                    buf.Append(String.Format("{0}('{1}',{2});", successCallback, callbackId, this.ToJSONString()));
                }
                return buf.ToString();
            }
            else
            {
                return String.Format("{0}('{1}',{2});", errorCallback, callbackId, this.ToJSONString());
            }
        }

Usage Example

Ejemplo n.º 1
0
        private void InvokeJSSCallback(String callbackId, PluginResult result)
        {
            if (String.IsNullOrEmpty(callbackId))
            {
                throw new ArgumentNullException("callbackId");
            }

            if (result == null)
            {
                throw new ArgumentNullException("result");
            }

            string callBackScript = result.ToCallbackString(callbackId, "commandResult", "commandError");

            // TODO: this is correct invokation method
            //this.GapBrowser.InvokeScript("eval", new string[] {callBackScript });

            /// But we temporary use this version because C#<->JS bridge is not fully ready
            if (result.IsSuccess)
            {
                this.GapBrowser.InvokeScript("commandResult", new string[] { callbackId, result.ToJSONString() });
            }
            else
            {
                this.GapBrowser.InvokeScript("commandError", new string[] { callbackId, result.ToJSONString() });
            }
        }