public HostExecution(IConsumeContext <RoutingSlip> context, Uri compensationAddress) { _context = context; _compensationAddress = compensationAddress; _routingSlip = new SanitizedRoutingSlip(context); if (_routingSlip.Itinerary.Count == 0) { throw new ArgumentException("The routingSlip must contain at least one activity"); } _activityTrackingNumber = NewId.NextGuid(); _activity = _routingSlip.Itinerary[0]; _arguments = _routingSlip.GetActivityArguments <TArguments>(); }
public HostExecuteContext(HostInfo host, Uri compensationAddress, ConsumeContext <RoutingSlip> context) { _host = host; _compensationAddress = compensationAddress; _context = context; _timer = Stopwatch.StartNew(); NewId newId = NewId.Next(); _executionId = newId.ToGuid(); _timestamp = newId.Timestamp; _routingSlip = new SanitizedRoutingSlip(context); if (_routingSlip.Itinerary.Count == 0) { throw new ArgumentException("The routingSlip must contain at least one activity"); } _activity = _routingSlip.Itinerary[0]; _arguments = _routingSlip.GetActivityArguments <TArguments>(); _publisher = new RoutingSlipEventPublisher(this, _routingSlip); }