protected BaseConsumeContext(ReceiveContext receiveContext, ISendEndpointProvider sendEndpointProvider, IPublishEndpointProvider publishEndpointProvider) { _receiveContext = receiveContext; _sendEndpointProvider = sendEndpointProvider; _publishEndpointProvider = publishEndpointProvider; _publishEndpoint = new Lazy <IPublishEndpoint>(() => _publishEndpointProvider.CreatePublishEndpoint(_receiveContext.InputAddress, CorrelationId, ConversationId)); }
public MassTransitBus(Uri address, IConsumePipe consumePipe, ISendEndpointProvider sendEndpointProvider, IPublishEndpointProvider publishEndpointProvider, IBusHostCollection hosts, IBusObserver busObservable) { Address = address; _consumePipe = consumePipe; _sendEndpointProvider = sendEndpointProvider; _publishEndpointProvider = publishEndpointProvider; _busObservable = busObservable; _hosts = hosts; _publishEndpoint = new Lazy <IPublishEndpoint>(() => publishEndpointProvider.CreatePublishEndpoint(address)); }
void GenerateFault(ExceptionReceiveContext context) { Guid?faultedMessageId = context.TransportHeaders.Get("MessageId", default(Guid?)); ReceiveFault fault = new ReceiveFaultEvent(HostMetadataCache.Host, context.Exception, context.ContentType.MediaType, faultedMessageId); var publishEndpoint = _publishEndpoint.CreatePublishEndpoint(context.InputAddress); var publishTask = publishEndpoint.Publish(fault, context.CancellationToken); context.AddPendingTask(publishTask); context.AddPendingTask(context.NotifyFaulted(context.Exception)); }
public JsonConsumeContext(JsonSerializer deserializer, ISendEndpointProvider sendEndpointProvider, IPublishEndpointProvider publishEndpointProvider, ReceiveContext receiveContext, MessageEnvelope envelope) { _receiveContext = receiveContext; _envelope = envelope; _sendEndpointProvider = sendEndpointProvider; _publishEndpointProvider = publishEndpointProvider; _deserializer = deserializer; _messageToken = GetMessageToken(envelope.Message); _supportedTypes = envelope.MessageType.ToArray(); _messageTypes = new Dictionary <Type, object>(); _publishEndpoint = new Lazy <IPublishEndpoint>(() => _publishEndpointProvider.CreatePublishEndpoint(_receiveContext.InputAddress, CorrelationId, ConversationId)); }
public MassTransitBus(Uri address, IConsumePipe consumePipe, ISendEndpointProvider sendEndpointProvider, IPublishEndpointProvider publishEndpointProvider, IEnumerable <IReceiveEndpoint> receiveEndpoints, IEnumerable <IBusHostControl> hosts, IBusObserver busObservable) { Address = address; _consumePipe = consumePipe; _sendEndpointProvider = sendEndpointProvider; _publishEndpointProvider = publishEndpointProvider; _busObservable = busObservable; _receiveEndpoints = receiveEndpoints.ToArray(); _hosts = hosts.ToArray(); _receiveObservers = new ReceiveObservable(); _publishEndpoint = new Lazy <IPublishEndpoint>(() => publishEndpointProvider.CreatePublishEndpoint(address)); }
public StaticConsumeContext(JsonSerializer deserializer, ISendEndpointProvider sendEndpointProvider, IPublishEndpointProvider publishEndpointProvider, ReceiveContext receiveContext, object message, Header[] headers) { _deserializer = deserializer; _receiveContext = receiveContext; _sendEndpointProvider = sendEndpointProvider; _messageTypes = new Dictionary <Type, object>(); _pendingTasks = new List <Task>(); _message = message; _binaryHeaders = headers; _supportedTypes = new[] { GetHeaderString(BinaryMessageSerializer.MessageTypeKey) }; _publishEndpoint = publishEndpointProvider.CreatePublishEndpoint(receiveContext.InputAddress, CorrelationId, ConversationId); }
public IPublishEndpoint CreatePublishEndpoint(Uri sourceAddress, ConsumeContext context = null) { var publishEndpoint = _publishEndpointProvider.CreatePublishEndpoint(sourceAddress, context); return(new OutboxPublishEndpoint(_outboxContext, publishEndpoint)); }