public ConcurrentConsumerDispatcher(ModelBase model, ConsumerWorkService ws) { this.model = model; this.workService = ws; this.workService.RegisterKey(model); this.IsShutdown = false; }
protected ModelBase(ISession session, ConsumerWorkService workService) { if (workService is AsyncConsumerWorkService asyncConsumerWorkService) { ConsumerDispatcher = new AsyncConsumerDispatcher(this, asyncConsumerWorkService); } else { ConsumerDispatcher = new ConcurrentConsumerDispatcher(this, workService); } _emptyBasicProperties = CreateBasicProperties(); Action <Exception, string> onException = (exception, context) => OnCallbackException(CallbackExceptionEventArgs.Build(exception, context)); _basicAcksWrapper = new EventingWrapper <BasicAckEventArgs>("OnBasicAck", onException); _basicNacksWrapper = new EventingWrapper <BasicNackEventArgs>("OnBasicNack", onException); _basicRecoverOkWrapper = new EventingWrapper <EventArgs>("OnBasicRecover", onException); _basicReturnWrapper = new EventingWrapper <BasicReturnEventArgs>("OnBasicReturn", onException); _callbackExceptionWrapper = new EventingWrapper <CallbackExceptionEventArgs>(string.Empty, (exception, context) => { }); _flowControlWrapper = new EventingWrapper <FlowControlEventArgs>("OnFlowControl", onException); _modelShutdownWrapper = new EventingWrapper <ShutdownEventArgs>("OnModelShutdown", onException); _recoveryWrapper = new EventingWrapper <EventArgs>("OnModelRecovery", onException); Initialise(session); }
public AsyncConsumerDispatcher(ModelBase model, ConsumerWorkService ws) { this.model = model; this.workService = ws; this.IsShutdown = false; }
public ConcurrentConsumerDispatcher(ModelBase model, ConsumerWorkService ws) { this.model = model; workService = ws; IsShutdown = false; }