示例#1
0
        ProcessStrategy SelectProcessStrategy(TransportTransactionMode minimumConsistencyGuarantee, TransactionOptions options, SqlConnectionFactory connectionFactory)
        {
            if (minimumConsistencyGuarantee == TransportTransactionMode.TransactionScope)
            {
                return(new ProcessWithTransactionScope(options, connectionFactory, new FailureInfoStorage(10000), tableBasedQueueCache));
            }

            if (minimumConsistencyGuarantee == TransportTransactionMode.SendsAtomicWithReceive)
            {
                return(new ProcessWithNativeTransaction(options, connectionFactory, new FailureInfoStorage(10000), tableBasedQueueCache));
            }

            if (minimumConsistencyGuarantee == TransportTransactionMode.ReceiveOnly)
            {
                return(new ProcessWithNativeTransaction(options, connectionFactory, new FailureInfoStorage(10000), tableBasedQueueCache, transactionForReceiveOnly: true));
            }

            return(new ProcessWithNoTransaction(connectionFactory, tableBasedQueueCache));
        }
 public ProcessWithNoTransaction(SqlConnectionFactory connectionFactory, TableBasedQueueCache tableBasedQueueCache)
     : base(tableBasedQueueCache)
 {
     this.connectionFactory = connectionFactory;
 }
 public MessageDispatcher(QueueAddressTranslator addressTranslator, IMulticastToUnicastConverter multicastToUnicastConverter, TableBasedQueueCache tableBasedQueueCache, IDelayedMessageStore delayedMessageTable, SqlConnectionFactory connectionFactory)
 {
     this.addressTranslator           = addressTranslator;
     this.multicastToUnicastConverter = multicastToUnicastConverter;
     this.tableBasedQueueCache        = tableBasedQueueCache;
     this.delayedMessageTable         = delayedMessageTable;
     this.connectionFactory           = connectionFactory;
 }
 public QueuePurger(SqlConnectionFactory connectionFactory)
 {
     this.connectionFactory = connectionFactory;
 }
示例#5
0
 public SubscriptionTableCreator(QualifiedSubscriptionTableName tableName, SqlConnectionFactory connectionFactory)
 {
     this.tableName         = tableName;
     this.connectionFactory = connectionFactory;
 }
 public QueuePeeker(SqlConnectionFactory connectionFactory, QueuePeekerOptions settings)
 {
     this.connectionFactory = connectionFactory;
     this.settings          = settings;
 }
示例#7
0
 public QueueCreator(SqlConnectionFactory connectionFactory, QueueAddressTranslator addressTranslator, bool createMessageBodyColumn = false)
 {
     this.connectionFactory       = connectionFactory;
     this.addressTranslator       = addressTranslator;
     this.createMessageBodyColumn = createMessageBodyColumn;
 }