public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();

			// Do any additional setup after loading the view, typically from a nib.

			manager = BandClientManager.Instance;
		}
        public static Task ConnectTaskAsync(this BandClientManager manager, BandClient client)
        {
            var tcs = new TaskCompletionSource <object> ();

            EventHandler <ClientManagerConnectedEventArgs>       onConnected  = null;
            EventHandler <ClientManagerDisconnectedEventArgs>    onDisconnect = null;
            EventHandler <ClientManagerFailedToConnectEventArgs> onFailed     = null;

            // setup the completed event
            onConnected = (sender, args) => {
                if (args.Client == client)
                {
                    manager.Connected        -= onConnected;
                    manager.Disconnected     -= onDisconnect;
                    manager.ConnectionFailed -= onFailed;

                    // we are finished
                    tcs.SetResult(null);
                }
            };
            manager.Connected += onConnected;

            // setup the canceled event
            onDisconnect = (sender, args) => {
                if (args.Client == client)
                {
                    manager.Connected        -= onConnected;
                    manager.Disconnected     -= onDisconnect;
                    manager.ConnectionFailed -= onFailed;

                    // we were canceled
                    tcs.SetCanceled();
                }
            };
            manager.Disconnected += onDisconnect;

            // setup the failed event
            onFailed = (sender, args) => {
                if (args.Client == client)
                {
                    manager.Connected        -= onConnected;
                    manager.Disconnected     -= onDisconnect;
                    manager.ConnectionFailed -= onFailed;

                    // we failed
                    tcs.SetException(new BandException(args.Error));
                }
            };
            manager.ConnectionFailed += onFailed;

            // run async
            manager.ConnectAsync(client);

            return(tcs.Task);
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // Do any additional setup after loading the view, typically from a nib.
            string userid = NSUserDefaults.StandardUserDefaults.StringForKey("CrmUserId");
            if (!string.IsNullOrEmpty(userid))
                LoginButton.SetTitle("Logout", UIControlState.Normal);

            _manager = BandClientManager.Instance;

            DismissKeyboardOnBackgroundTap();
        }
Example #4
0
		public Band ()
		{
			SetConnectionState(ConnectionState.NotConnected);

			manager =  BandClientManager.Instance;
			manager.Connected += (sender, e) => {
				SetConnectionState(ConnectionState.Connected);

				Console.WriteLine("Connected");
			};
			manager.Disconnected += (sender, e) => {
				SetConnectionState(ConnectionState.NotConnected);
				Console.WriteLine("Disconnected");
			};
		}
        public static Task DisconnectTaskAsync(this BandClientManager manager, BandClient client)
        {
            // short circuit becuase if we are already disconnected
            // then the delegate won't get fired
            if (!client.IsConnected)
            {
                return(Task.FromResult <object> (null));
            }

            var tcs = new TaskCompletionSource <object> ();

            EventHandler <ClientManagerDisconnectedEventArgs>    onDisconnect = null;
            EventHandler <ClientManagerFailedToConnectEventArgs> onFailed     = null;

            // setup the disconnected event
            onDisconnect = (sender, args) => {
                if (args.Client == client)
                {
                    manager.Disconnected     -= onDisconnect;
                    manager.ConnectionFailed -= onFailed;

                    // we were disconnected (success)
                    tcs.SetResult(null);
                }
            };
            manager.Disconnected += onDisconnect;

            // setup the failed event
            onFailed = (sender, args) => {
                if (args.Client == client)
                {
                    manager.Disconnected     -= onDisconnect;
                    manager.ConnectionFailed -= onFailed;

                    // we failed
                    tcs.SetException(new BandException(args.Error));
                }
            };
            manager.ConnectionFailed += onFailed;

            // run async
            manager.DisconnectAsync(client);

            return(tcs.Task);
        }
		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();

			// Do any additional setup after loading the view, typically from a nib.

			manager = BandClientManager.Instance;

			manager.Connected += (sender, e) => {
				Output ("Band connected.");
			};
			manager.ConnectionFailed += (sender, e) => {
				Output ("Band connection failed.");
			};
			manager.Disconnected += (sender, e) => {
				Output ("Band disconnected.");
			};
		}
Example #7
0
        public static Task DisconnectTaskAsync(this BandClientManager manager, BandClient client)
        {
            var tcs = new TaskCompletionSource <object> ();

            // setup the disconnected event
            EventHandler <ClientManagerDisconnectedEventArgs> onDisconnect = null;

            onDisconnect = (sender, args) => {
                if (args.Client == client)
                {
                    manager.Disconnected -= onDisconnect;

                    // we were disconnected (success)
                    tcs.SetResult(null);
                }
            };
            manager.Disconnected += onDisconnect;

            // run async
            manager.ConnectAsync(client);

            return(tcs.Task);
        }