Beispiel #1
0
        public static void Main(string[] args)
        {
            var typeNameSerializer = new LegacyTypeNameSerializer();
            var argParser          = new ArgParser();
            var arguments          = argParser.Parse(args);

            bool enableBinaryPayloads = false;

            arguments.WithTypedKeyOptional <bool>("b", a => enableBinaryPayloads = bool.Parse(a.Value))
            .FailWith(messsage("Invalid enable binary payloads (b) parameter"));

            IErrorMessageSerializer errorMessageSerializer;

            if (enableBinaryPayloads)
            {
                errorMessageSerializer = new Base64ErrorMessageSerializer();
            }
            else
            {
                errorMessageSerializer = new DefaultErrorMessageSerializer();
            }

            // poor man's dependency injection FTW ;)
            var program = new Program(
                argParser,
                new QueueRetreival(errorMessageSerializer),
                new FileMessageWriter(),
                new MessageReader(),
                new QueueInsertion(errorMessageSerializer),
                new ErrorRetry(new JsonSerializer(), errorMessageSerializer),
                new Conventions(typeNameSerializer));

            program.Start(args);
        }
Beispiel #2
0
        public static void Main(string[] args)
        {
            var typeNameSerializer = new TypeNameSerializer();
            var argParser = new ArgParser();
            var arguments = argParser.Parse(args);

            bool enableBinaryPayloads = false;
            arguments.WithTypedKeyOptional<bool>("b", a => enableBinaryPayloads = bool.Parse(a.Value))
                .FailWith(messsage("Invalid enable binary payloads (b) parameter"));

            IErrorMessageSerializer errorMessageSerializer;
            if (enableBinaryPayloads)
            {
                errorMessageSerializer = new Base64ErrorMessageSerializer();
            }
            else
            {
                errorMessageSerializer = new DefaultErrorMessageSerializer();
            }            

            // poor man's dependency injection FTW ;)            
            var program = new Program(
                argParser, 
                new QueueRetreival(errorMessageSerializer), 
                new FileMessageWriter(),
                new MessageReader(), 
                new QueueInsertion(errorMessageSerializer),
                new ErrorRetry(new JsonSerializer(typeNameSerializer), errorMessageSerializer),
                new Conventions(typeNameSerializer));
            program.Start(args);
        }
Beispiel #3
0
 public Program(
     ArgParser argParser, 
     IQueueRetreival queueRetreival, 
     IMessageWriter messageWriter, 
     IMessageReader messageReader, 
     IQueueInsertion queueInsertion, 
     IErrorRetry errorRetry)
 {
     this.argParser = argParser;
     this.queueRetreival = queueRetreival;
     this.messageWriter = messageWriter;
     this.messageReader = messageReader;
     this.queueInsertion = queueInsertion;
     this.errorRetry = errorRetry;
 }
Beispiel #4
0
 public Program(
     ArgParser argParser,
     IQueueRetreival queueRetreival,
     IMessageWriter messageWriter,
     IMessageReader messageReader,
     IQueueInsertion queueInsertion,
     IErrorRetry errorRetry)
 {
     this.argParser      = argParser;
     this.queueRetreival = queueRetreival;
     this.messageWriter  = messageWriter;
     this.messageReader  = messageReader;
     this.queueInsertion = queueInsertion;
     this.errorRetry     = errorRetry;
 }
Beispiel #5
0
 public Program(
     ArgParser argParser,
     IQueueRetrieval queueRetrieval,
     IMessageWriter messageWriter,
     IMessageReader messageReader,
     IQueueInsertion queueInsertion,
     IErrorRetry errorRetry,
     IConventions conventions)
 {
     this.argParser      = argParser;
     this.queueRetrieval = queueRetrieval;
     this.messageWriter  = messageWriter;
     this.messageReader  = messageReader;
     this.queueInsertion = queueInsertion;
     this.errorRetry     = errorRetry;
     this.conventions    = conventions;
 }