public override void Initialise(List <MailFolder> folderList)
 {
     Status          = MessageProcessorStatus.Initialising;
     _mainFolderList = folderList;
     service         = ExchangeHelper.ExchangeConnect(_hostname, _username, _password);
     //service.TraceEnabled = true;
     //service.TraceFlags = TraceFlags.All;
     folders = new List <ExchangeFolder>();
     ExchangeHelper.GetAllSubFolders(service, new ExchangeFolder {
         Folder = Folder.Bind(service, WellKnownFolderName.MsgFolderRoot)
     }, folders, false);
     if (_createAllFolders)
     {
         // we need to create all folders which don't exist
         foreach (var mailFolder in _mainFolderList)
         {
             GetCreateFolder(mailFolder.DestinationFolder);
         }
     }
     _lastState = new ImportState();
     _queue     = new PCQueue <RawMessageDescriptor, ImportState>(Name + "-exchangeTarget")
     {
         ProduceMethod      = ProcessMessage,
         InitialiseProducer = () => _lastState,
         ShutdownProducer   = ShutdownQueue
     };
     _queue.Start();
     Status = MessageProcessorStatus.Initialised;
 }
Beispiel #2
0
        public override void Initialise(List <MailFolder> folderList)
        {
            Status   = MessageProcessorStatus.Initialising;
            _outlook = new Application();
            var pstPath = Regex.Replace(_saveFolder + @"\" + _pstName + ".pst", @"\\+", @"\");

            Logger.Info("Writing to PST " + pstPath);
            _pstHandle  = PstHandle(_outlook.GetNamespace("MAPI"), pstPath, _pstName);
            _rootFolder = _pstHandle.GetRootFolder() as Folder;
            //_importFolder = GetCreateFolder(_rootFolder.FolderPath + @"\_zinkuba_import", _outlook);
            if (_createAllFolders)
            {
                foreach (var mailFolder in folderList)
                {
                    GetCreateFolder(_rootFolder.FolderPath + @"\" + mailFolder.DestinationFolder, _outlook, true);
                }
            }
            _lastState = new ImportState();
            _queue     = new PCQueue <MsgDescriptor, ImportState>(Name + "-pstTarget")
            {
                ProduceMethod      = ProcessMessage,
                InitialiseProducer = () => _lastState,
                ShutdownProducer   = ShutdownQueue
            };
            _queue.Start();
            Status = MessageProcessorStatus.Initialised;
            Logger.Info("PstTarget Initialised");
        }
 public override void Initialise(List <MailFolder> folderList)
 {
     Status = MessageProcessorStatus.Initialising;
     NextReader.Initialise(folderList);
     _lastState = new MessageProcessState();
     _queue     = new PCQueue <RawMessageDescriptor, MessageProcessState>(Name)
     {
         ProduceMethod      = ProcessMessage,
         InitialiseProducer = () => _lastState,
         ShutdownProducer   = ShutdownQueue
     };
     _queue.Start();
     Status = MessageProcessorStatus.Initialised;
     Logger.Info("RawToMessageProcessor Initialised");
 }