Esempio n. 1
0
        public MainViewModel(IConfigReaderService configReaderService, ILogService logService, INccService nccService)
        {
            _configReaderService = configReaderService;
            _nccService          = nccService;
            _logService          = logService;

            try
            {
                NCCConfig = configReaderService.ReadNccConfig();
            }
            catch (Exception e)
            {
                _logService.LogError("WRONG CONFIG: " + e.Message);
            }



            BindingOperations.EnableCollectionSynchronization(Logs, _lock);

            if (NCCConfig.DomainSlave == false)
            {
                _nccService.StartListening("127.0.0.1", NCCConfig.ServerPort);
            }
            else
            {
                _nccService.ConnectToNcc("127.0.0.1", NCCConfig.ClientPort, NCCConfig.Name);
                _nccService.StartListening("127.0.0.1", NCCConfig.ServerPort);
            }
        }
        public NccConfigDto ReadNccConfig()
        {
            var config = new NccConfigDto();

            var lines = File.ReadAllLines(_filePath);

            config.Directory = new List <DirectoryEntry>();

            foreach (var line in lines)
            {
                var parts = line.Split(' ');
                if (line.StartsWith("NAME"))
                {
                    config.Name = parts[1];
                }
                else if (line.StartsWith("DOMAINSLAVE"))
                {
                    config.DomainSlave = parts[1].Equals("1");
                }
                else if (line.StartsWith("SERVERPORT"))
                {
                    config.ServerPort = int.Parse(parts[1]);
                }
                else if (line.StartsWith("CLIENTPORT"))
                {
                    config.ClientPort = int.Parse(parts[1]);
                }
                else if (line.StartsWith("DIRECTORY"))
                {
                    config.Directory.Add(new DirectoryEntry
                    {
                        Name              = parts[1],
                        ToNode            = parts[2],
                        EstimatedDistance = int.Parse(parts[3]),
                        LocalClient       = parts[4] == "1"
                    });
                }
            }

            return(config);
        }
Esempio n. 3
0
 public NccService(ILogService logService, IObjectSerializerService objectSerializerService, IConfigReaderService configReaderService)
 {
     _logService = logService;
     _objectSerializerService = objectSerializerService;
     _nccConfig = configReaderService.ReadNccConfig();
 }