public void UpgradeToMaster() { Log("Upgrade to master."); MasterEndpointURL = EndpointURL; Behaviour = new MasterServerSMRBehaviour(this); while (((MasterServerSMRBehaviour)Behaviour).Decide()) { ; } }
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(); }
public void DowngradeToNormal() { Behaviour = new NormalServerSMRBehaviour(this); }