internal override async Task <Internal.ServiceConnection> GetNewConnection(PushService service)
        {
            try {
                var connection = new Internal.APNSPushConnection(service, this);

                await connection.ConnectAsync();

                return(connection);
            }
            catch (Exception err) {
                throw new PushNotificationConnectionException("Appl.GetNewConnection failed.", err);
            }
        }
 internal override Task <Internal.ServiceConnection> GetNewConnection(PushService service)
 {
     return(Task.FromResult <Internal.ServiceConnection>(new Internal.FirebaseConnection(service, this)));
 }
 internal abstract Task <Internal.ServiceConnection> GetNewConnection(PushService service);