private bool ExecuteRemoveAllEpisodes(string processGUID)
        {
            using (ChannelFactory <IPatternsProcessorMessages> factory = CreateChannelFactory(processGUID))
            {
                IPatternsProcessorMessages channel = factory.CreateChannel();
                try
                {
                    EngineResponseBase response = channel.RemoveAllEpisodes();
                    if (response.ResponseCode != EngineResponseCode.Success)
                    {
                        throw new Exception(response.ErrorMessage);
                    }

                    return(true);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    CloseChannel((ICommunicationObject)channel);
                }
            }
        }
        public EngineResponseBase AddEpisode(String visitKey)
        {
            EngineResponseBase toRet;

            try
            {
                m_LastRequest = DateTime.Now;

                Bridge.AddEpisode(visitKey);
                PatternsProcessorSettings.Source.TraceEvent(TraceEventType.Verbose, 225, "Patterns Processor (PID={0}, GUID={1}): Visit {2} added.",
                                                            PatternsProcessorSettings.Instance.ProcessId, PatternsProcessorSettings.Instance.ProcessGUID, visitKey);

                toRet = new EngineResponseBase()
                {
                    ResponseCode = EngineResponseCode.Success
                };
            }
            catch (Exception ex)
            {
                toRet = new EngineResponseBase()
                {
                    ResponseCode = EngineResponseCode.Error,
                    ErrorMessage = ex.ToString()
                };
            }

            LogActiveVisits(Bridge.ActiveVisits);

            return(toRet);
        }