Esempio n. 1
0
 public GuranteedDelivery(ISender sender, IReceiver receiver, IIdempotentReceiver idempotentReceiver, IHarakaDb harakaDb)
 {
     _sender             = sender;
     _receiver           = receiver;
     _harakaDb           = harakaDb;
     _idempotentReceiver = idempotentReceiver;
 }
 public AutomaticRepeatReQuest(IGuranteedDelivery guranteedDelivery, ISchedular schedular, IHarakaDb harakaDb)
 {
     _guranteedDelivery           = guranteedDelivery;
     _schedular                   = schedular;
     _harakaDb                    = harakaDb;
     DictionaryWithSortedMessages = new Dictionary <string, SortedList <int, ExtendedPacketInformation> >();
     _messagesToPacket            = new Dictionary <string, ConcurrentQueue <Tuple <string, Message> > >();
 }
Esempio n. 3
0
        public AntiEntropy(IHarakaDb harakaDb, IMergeProcedure mergeProcedure, IJsonConfigurator jsonConfigurator)
        {
            _harakaDb         = harakaDb;
            _mergeProcedure   = mergeProcedure;
            _jsonConfigurator = jsonConfigurator;

            //Initialize all existing queues on startup
            foreach (var topic in _harakaDb.TryGetObjects <Topic>("Topics"))
            {
                var smartQueue = new SmartQueue(Setup.container.GetInstance <IUdpCommunication>(), Setup.container.GetInstance <IPersistenceLayer>(), Setup.container.GetInstance <IJsonConfigurator>(), topic);
                _queues.Add(smartQueue);
                smartQueue.SubscribersHasBeenUpdated += SmartQueueOnSubscribersHasBeenUpdated;
            }

            //Fetch all pub
            //Merge tentative
        }
Esempio n. 4
0
 public PersistenceLayer(IHarakaDb db, string fileName)
 {
     _db       = db;
     _fileName = fileName;
 }