public static void SendRequestStartedNotification(String clientId, Guid requestId, String requestPath, Uri requestUri, Byte tileSize, DateTime submissionTime)
        {
            ChannelFactory <INotificationChannel> channelFactory = null;
            INotificationChannel channel = null;

            try
            {
                channelFactory = GetChannelFactory(clientId);
                channel        = channelFactory.CreateChannel();

                channel.Open();

                channel.NotifyRequestStarted(requestId, requestPath, requestUri, tileSize, submissionTime);
            }
            catch (Exception e)
            {
                Trace.TraceError("Client: {0}{4}Exception: {1}{4}Message: {2}{4}Trace: {3}",
                                 clientId,
                                 e.GetType(),
                                 e.Message,
                                 e.StackTrace,
                                 Environment.NewLine);
            }
            finally
            {
                if ((channel != null) && (channel.State == CommunicationState.Opened))
                {
                    channel.Close();
                }
                if ((channelFactory != null) && (channelFactory.State == CommunicationState.Opened))
                {
                    channelFactory.Close();
                }
            }
        }