Ejemplo n.º 1
0
        public DurableRetryAgent(ISender sender, RetrySettings settings, ITransportLogger logger,
                                 IEnvelopePersistor persistor) : base(sender, settings)
        {
            _logger = logger;

            _persistor = persistor;
        }
Ejemplo n.º 2
0
        // SAMPLE: FetchErrorReport
        public async Task load_error_report(IEnvelopePersistor persistor, Guid envelopeId)
        {
            var report = await persistor.LoadDeadLetterEnvelope(envelopeId);

            // The Id
            Console.WriteLine(report.Id);

            // Why it was moved out
            Console.WriteLine(report.Explanation);

            // The underlying message typ
            Console.WriteLine(report.MessageType);


            // Reconstitute the original Envelope
            // Envelope.Data would have the raw data here
            var envelope = report.RebuildEnvelope();

            // The name ofthe system that sent the message
            Console.WriteLine(report.Source);

            // The .Net Exception type name
            Console.WriteLine(report.ExceptionType);

            // Just the message of the exception
            Console.WriteLine(report.ExceptionMessage);

            // JUST SHOW ME THE FULL STACKTRACE ALREADY!!!!
            Console.WriteLine(report.ExceptionText);
        }
Ejemplo n.º 3
0
 public DurableCallback(Envelope envelope, IWorkerQueue queue, IEnvelopePersistor persistor,
                        IRetries retries, ITransportLogger logger)
 {
     _envelope  = envelope;
     _queue     = queue;
     _persistor = persistor;
     _retries   = retries;
     _logger    = logger;
 }
Ejemplo n.º 4
0
 public MetricsCollector(IMetrics metrics, IEnvelopePersistor persistor, IMessageLogger logger,
                         MessagingSettings settings, IWorkerQueue workers)
 {
     _metrics   = metrics;
     _persistor = persistor;
     _logger    = logger;
     _settings  = settings;
     _workers   = workers;
 }
Ejemplo n.º 5
0
 public DurableListener(IListeningAgent agent, IWorkerQueue queues, ITransportLogger logger,
                        MessagingSettings settings, IRetries retries, IEnvelopePersistor persistor)
 {
     _agent     = agent;
     _queues    = queues;
     _logger    = logger;
     _settings  = settings;
     _retries   = retries;
     _persistor = persistor;
 }
Ejemplo n.º 6
0
        public DurableSendingAgent(Uri destination, ISender sender,
                                   ITransportLogger logger, MessagingSettings settings, IRetries persistenceRetries,
                                   IEnvelopePersistor persistor)
            : base(destination, sender, logger, settings, new DurableRetryAgent(sender, settings.Retries, logger, persistor))
        {
            _logger             = logger;
            _settings           = settings;
            _persistenceRetries = persistenceRetries;

            _persistor = persistor;
        }
Ejemplo n.º 7
0
        public LocalSendingAgent(Uri destination, IWorkerQueue queues, IEnvelopePersistor persistor,
                                 SerializationGraph serializers, IRetries retries, ITransportLogger logger)
        {
            _queues      = queues;
            _serializers = serializers;
            _retries     = retries;
            _logger      = logger;

            _persistor = persistor;

            Destination = destination;
        }
Ejemplo n.º 8
0
        public RunScheduledJobs(IWorkerQueue workers, SqlServerSettings mssqlSettings, ITransportLogger logger, IRetries retries, MessagingSettings settings)
        {
            _workers       = workers;
            _mssqlSettings = mssqlSettings;
            _logger        = logger;
            _retries       = retries;
            _settings      = settings;

            _persistor = new SqlServerEnvelopePersistor(_mssqlSettings);

            _findReadyToExecuteJobs = $"select body from {mssqlSettings.SchemaName}.{SqlServerEnvelopePersistor.IncomingTable} where status = '{TransportConstants.Scheduled}' and execution_time <= @time";
        }
Ejemplo n.º 9
0
        public EnvelopeRetries(IEnvelopePersistor persistor, ITransportLogger logger, JasperOptions settings)
        {
            _persistor = persistor;

            _logger   = logger;
            _settings = settings;

            _deleteIncoming         = new ActionBlock <Envelope[]>(deleteIncoming);
            _deleteIncomingBatching =
                new BatchingBlock <Envelope>(100.Milliseconds(), _deleteIncoming, settings.Cancellation);

            _deleteOutgoing         = new ActionBlock <Envelope[]>(deleteOutgoing);
            _deleteOutgoingBatching =
                new BatchingBlock <Envelope>(100.Milliseconds(), _deleteOutgoing, settings.Cancellation);

            _logErrorReport         = new ActionBlock <ErrorReport[]>(logErrorReports);
            _logErrorReportBatching =
                new BatchingBlock <ErrorReport>(100.Milliseconds(), _logErrorReport, settings.Cancellation);

            _scheduleIncoming         = new ActionBlock <Envelope[]>(scheduleIncoming);
            _scheduleIncomingBatching =
                new BatchingBlock <Envelope>(100.Milliseconds(), _scheduleIncoming, settings.Cancellation);
        }
Ejemplo n.º 10
0
 public void EnlistInTransaction(IEnvelopePersistor persistor)
 {
     _persistor            = persistor;
     EnlistedInTransaction = true;
 }