Example #1
0
 public void UpgradeToMaster()
 {
     Log("Upgrade to master.");
     MasterEndpointURL = EndpointURL;
     Behaviour         = new MasterServerSMRBehaviour(this);
     while (((MasterServerSMRBehaviour)Behaviour).Decide())
     {
         ;
     }
 }
Example #2
0
        public ServerSMR(string remoteUrl, IEnumerable <string> knownServerUrls = null, int minDelay = 0,
                         int maxDelay = 0) : base(remoteUrl, knownServerUrls, minDelay, maxDelay)
        {
            Behaviour               = new NormalServerSMRBehaviour(this);
            LastExecutedRequests    = new ConcurrentDictionary <string, Request>();
            LastExecutedOrders      = new ConcurrentDictionary <string, Order>();
            SavedOrders             = new List <Order>();
            LastOrderSequenceNumber = 0;
            ReceivedAcks            = new List <Ack>();

            CheckMaster();
        }
Example #3
0
 public void DowngradeToNormal()
 {
     Behaviour = new NormalServerSMRBehaviour(this);
 }