/// <summary>
        /// constructor
        /// </summary>
        public RicartSyncAlgorithm(NodeInfo nodeInfo, IConnectionProxy proxy)
        {
            State = AccessState.Released;
            LocalId = nodeInfo.Id;
            Proxy = proxy;
            LocalNodeInfo = nodeInfo;
            _clock = new ExtendedLamportClock(LocalId);

            Client = new RicartSyncAlgorithmClient(this);
            Server = new RicartSyncAlgorithmServer(this);
        }
 /// <summary>
 /// Reset variables to start again
 /// </summary>
 public void RicartReset()
 {
     _clock = new ExtendedLamportClock(LocalId);
     State = AccessState.Released;
     _isInterested = false;
     _acceptList = new List<string>();
     _queue = new List<DataRequest>();
 }