Esempio n. 1
0
 public TestRunner(Logger output, AssemblyLoader assemblyLoader)
 {
     AllPassed = true;
     this.output = output;
     this.assemblyLoader = assemblyLoader;
     processor = new StepProcessor(this);
 }
Esempio n. 2
0
        public Step Init()
        {
            if (!_initialized)
            {
                RemainingWorkRequired = WorkRequired = StepProcessor.GetWorkTimeForLetter(StepName);
                _initialized          = true;
            }

            return(this);
        }
Esempio n. 3
0
        internal async Task <MessagingContext> CreateAS4Message(EncodeMessageInfo encodeInfo)
        {
            var pmode = await AssembleSendingPMode(encodeInfo);

            if (pmode == null)
            {
                return(null);
            }

            var as4Message = await AssembleAS4MessageAsync(pmode, encodeInfo.Payloads);

            var context = SetupMessagingContext(as4Message, pmode);

            return(await StepProcessor.ExecuteStepsAsync(context, StepRegistry.GetOutboundProcessingStepConfiguration()));
        }
Esempio n. 4
0
        private static async Task <DecodeResult> PerformInboundProcessing(MessagingContext context)
        {
            var processingResult =
                await StepProcessor.ExecuteStepsAsync(context, StepRegistry.GetInboundProcessingConfiguration());

            if (processingResult.AS4Message == null)
            {
                throw new InvalidOperationException("An error occured while decoding the AS4 Message", processingResult.Exception);
            }

            if (processingResult.AS4Message.IsUserMessage)
            {
                try
                {
                    var deliverPayloads   = RetrievePayloadsFromMessage(processingResult.AS4Message);
                    var receivedMessageId = processingResult.EbmsMessageId;

                    var receiptResult =
                        await StepProcessor.ExecuteStepsAsync(processingResult, StepRegistry.GetReceiptCreationConfiguration());

                    if (receiptResult.AS4Message == null)
                    {
                        throw new InvalidOperationException("An unexpected error occured while creating the AS4 Receipt message", receiptResult.Exception);
                    }

                    return(DecodeResult.CreateWithReceipt(deliverPayloads.ToArray(),
                                                          Serializer.ToByteArray(receiptResult.AS4Message),
                                                          receivedMessageId,
                                                          receiptResult.AS4Message.GetPrimaryMessageId()));
                }
                finally
                {
                    processingResult.Dispose();
                }
            }

            if (!(processingResult.AS4Message.FirstSignalMessage is Error))
            {
                throw new InvalidProgramException("An AS4 Error Message was expected.");
            }

            // What we have now, must an error.
            return(DecodeResult.CreateWithError(Serializer.ToByteArray(processingResult.AS4Message),
                                                ((Error)processingResult.AS4Message.FirstSignalMessage),
                                                processingResult.AS4Message.FirstSignalMessage.RefToMessageId,
                                                processingResult.AS4Message.FirstSignalMessage.MessageId));
        }
Esempio n. 5
0
        public void StepsFinishedAfterStart()
        {
            var steps = new StepCollection
            {
                new EmptyStep(),
                new EmptyStep(),
                new EmptyStep()
            };

            StepProcessor.Start(steps);

            var expectedStatus = Status.Finished;

            foreach (StepStatusPair pair in steps)
            {
                Assert.AreEqual(expectedStatus, pair.Status);
            }
        }
Esempio n. 6
0
        private static void Main(string[] args)
        {
            StepProcessor.EnableWorkConstant = true;
            var puzzle        = StepProcessor.GenerateStepMapFromFile("puzzleinput.txt");
            var puzzleFactory = new StepProcessingFactory(puzzle, 5);

            puzzleFactory.Init();
            puzzleFactory.FindSolution();

            //StepProcessor.EnableWorkConstant = false;
            //var test = StepProcessor.GenerateStepMapFromFile("sampleinput.txt");

            //var testFactory = new StepProcessingFactory(test, 2);
            //testFactory.Init();
            //testFactory.FindSolution();
            //testFactory.WorkProcessingOrder.DumpPackages();

            Console.ReadLine();
        }
Esempio n. 7
0
 public StepController(StepProcessor stepProcessor, IMapper mapper, SessionManager <ItemInfo> sessionManager)
 {
     this.sessionManager = sessionManager;
     this.mapper         = mapper;
     this.stepProcessor  = stepProcessor;
 }