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(); }
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."); }; }
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); }