public ServiceConnection(ServiceBinder <T> binder)
 {
     if (binder != null)
     {
         this.binder = binder;
     }
 }
        /// <summary>
        /// Called when a connection to the service has been established
        /// </summary>
        /// <param name="name">Name.</param>
        /// <param name="service">Service.</param>
        public void OnServiceConnected(ComponentName name, IBinder service)
        {
            ServiceBinder <T> serviceBinder = service as ServiceBinder <T>;

            if (serviceBinder != null)
            {
                // save the reference to the binder and flag as Bound
                this.binder         = serviceBinder;
                this.binder.IsBound = true;
                Log.Debug("ServiceConnection", "OnServiceConnected Called");

                // raise the service bound event
                this.ServiceConnected(this, new ServiceConnectedEventArgs <T> ()
                {
                    Binder = serviceBinder
                });
            }
        }