//TODO That is not ready to be used with some IoC container like Castle or Unity public AsyncMessagePersister(IMessageWriterFactory factory, IMessageFactory messageFactory, IDateFactory dateFactory) { this.messageWriterFactory = factory; this.dateFactory = dateFactory; this.messageFactory = messageFactory; this.writer = CreateMessageWriter(factory); if (this.writer != null) { this.runThread = new Thread(this.Processing); this.runThread.Start(); } else { //TODO instead of Console.Writeline it could be some other persister like log4net log Console.WriteLine("Cannot initialize Async Log!"); } }
private static IMessageWriter ConfigureStubsAndMocksForAsyncLog(out IMessagePersister persister, string testString, DateTime logTimeStamp, IDateFactory dateFactory, out IMessageWriterFactory mockMessageWriterFactory, int expecteNumberOfTimesCreateToCall) { mockMessageWriterFactory = MockRepository.GenerateMock <IMessageWriterFactory>(); IMessageWriter mockWriter = MockRepository.GenerateMock <IMessageWriter>(); IMessageFactory stubMessageFactory = MockRepository.GenerateStub <IMessageFactory>(); IMessage stubMessage = MockRepository.GenerateStub <IMessage>(); stubMessage.Stub(x => x.FormatMessage()).Return(testString); stubMessage.Timestamp = logTimeStamp; stubMessageFactory.Stub(x => x.GetMessage(Arg <string> .Is.Anything, Arg <DateTime> .Is.Anything)) .Return(stubMessage); mockMessageWriterFactory.Expect(x => x.Create()).Return(mockWriter).Repeat.Times(expecteNumberOfTimesCreateToCall); persister = new AsyncMessagePersister(mockMessageWriterFactory, stubMessageFactory, dateFactory); return(mockWriter); }
public UpdatePcsSubmissionWindowSettingsHandler(IDateFactory dateFactory, IConfigurationManagerWrapper configurationManagerWrapper) { this.dateFactory = dateFactory; this.configurationManagerWrapper = configurationManagerWrapper; }