public void Subscribe(CloverTransportObserver observer) { CloverTransport me = this; if (ready) { BackgroundWorker bw = new BackgroundWorker(); // what to do in the background thread bw.DoWork += new DoWorkEventHandler( delegate (object o, DoWorkEventArgs args) { BackgroundWorker b = o as BackgroundWorker; observer.onDeviceReady(me); }); bw.RunWorkerAsync(); } observers.Add(observer); }
public DefaultCloverDevice(String packageName, CloverTransport transport, String remoteApplicationID) : base(packageName, transport, remoteApplicationID) { transport.Subscribe(this); }