示例#1
0
        private SmartSqlConfigOptions LoadSmartSqlConfig()
        {
            var configFilePath = Path.Combine(AppContext.BaseDirectory, _sqlMapConfigFilePath);
            var configStream   = new ConfigStream
            {
                Path   = configFilePath,
                Stream = FileLoader.Load(configFilePath)
            };

            using (configStream.Stream)
            {
                XmlSerializer xmlSerializer  = new XmlSerializer(typeof(SmartSqlMapConfig));
                var           smartSqlConfig = xmlSerializer.Deserialize(configStream.Stream) as SmartSqlMapConfig;
                if (smartSqlConfig.TypeHandlers != null)
                {
                    foreach (var typeHandler in smartSqlConfig.TypeHandlers)
                    {
                        typeHandler.Handler = TypeHandlerFactory.Create(typeHandler.Type);
                    }
                }

                return(new SmartSqlConfigOptions()
                {
                    Settings = smartSqlConfig.Settings,
                    SmartSqlMaps = smartSqlConfig.SmartSqlMapSources,
                    TypeHandlers = smartSqlConfig.TypeHandlers
                });
            }
        }
示例#2
0
        public override void Execute(string value)
        {
            ConfigStream stream = new ConfigStream(value);

            OnDataReturn(this, stream.Read());
            base.Execute(value);
        }
示例#3
0
        public BaraMap LoadBaraMap(ConfigStream configStream, BaraMapConfig baraMapConfig)
        {
            using (configStream.Stream)
            {
                var baraMap = new BaraMap
                {
                    BaraMapConfig = baraMapConfig,
                    Path          = configStream.Path,
                    Statements    = new List <Statement> {
                    },
                };

                XDocument              xdoc          = XDocument.Load(configStream.Stream);
                XElement               xele          = xdoc.Root;
                XNamespace             ns            = xele.GetDefaultNamespace();
                IEnumerable <XElement> StatementList = xele.Descendants(ns + "Statement");
                baraMap.Scope = (String)xele.Attribute("Scope");


                foreach (var statementNode in StatementList)
                {
                    var _statement = Statement.Load(statementNode, baraMap);
                    baraMap.Statements.Add(_statement);
                }
                return(baraMap);
            }
        }
示例#4
0
        public override void Execute(string value)
        {
            ConfigStream stream = new ConfigStream(value);
            stream.Delete();

            base.Execute(value);
        }
示例#5
0
 public override void Execute(string value, KeyValuePair<Command, string> neededCommand)
 {
     ConfigStream stream = new ConfigStream(value);
     ((MemoryCommand)neededCommand.Key).Execute(neededCommand.Value);
     stream.Write(((MemoryCommand)neededCommand.Key).MemoryData);
     base.Execute(value);
 }
示例#6
0
        public override void Execute(string value)
        {
            ConfigStream stream = new ConfigStream(value);

            stream.Delete();

            base.Execute(value);
        }
示例#7
0
        public override void Execute(string value, KeyValuePair <Command, string> neededCommand)
        {
            ConfigStream stream = new ConfigStream(value);

            ((MemoryCommand)neededCommand.Key).Execute(neededCommand.Value);
            stream.Write(((MemoryCommand)neededCommand.Key).MemoryData);
            base.Execute(value);
        }
示例#8
0
        public ConfigStream LoadConfigStream(string path)
        {
            var configStream = new ConfigStream
            {
                Path   = path,
                Stream = FileLoader.Load(path)
            };

            return(configStream);
        }
示例#9
0
        private void LoadManifestSmartSqlMap(SmartSqlMapConfig config, string name)
        {
            var configStream = new ConfigStream
            {
                Path   = name,
                Stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(name)
            };
            var sqlmap = LoadSmartSqlMap(configStream, config);

            config.SmartSqlMaps.Add(sqlmap);
        }
示例#10
0
        public async Task <SmartSqlMap> LoadSmartSqlMapAsync(String path, SmartSqlMapConfig config)
        {
            _logger.LogDebug($"SmartSql.LoadSmartSqlMapAsync Load: {path}");
            var sqlmapResult = await ZooClient.getDataAsync(path, new SmartSqlMapWatcher(_loggerFactory, config, this));

            var sqlmapStream = new ConfigStream
            {
                Path   = path,
                Stream = new MemoryStream(sqlmapResult.Data)
            };

            return(LoadSmartSqlMap(sqlmapStream, config));
        }
示例#11
0
        public async Task <SmartSqlMapConfig> LoadAsync(string path, ISmartSqlMapper smartSqlMapper)
        {
            _logger.LogDebug($"SmartSql.ZooKeeperConfigLoader Load: {path} Starting");
            var configResult = await ZooClient.getDataAsync(path, new SmartSqlMapConfigWatcher(_loggerFactory, smartSqlMapper, this));

            var configStream = new ConfigStream
            {
                Path   = path,
                Stream = new MemoryStream(configResult.Data)
            };
            var config = LoadConfig(configStream, smartSqlMapper);

            foreach (var sqlmapSource in config.SmartSqlMapSources)
            {
                switch (sqlmapSource.Type)
                {
                case SmartSqlMapSource.ResourceType.File:
                {
                    var sqlmap = await LoadSmartSqlMapAsync(sqlmapSource.Path, config);

                    config.SmartSqlMaps.Add(sqlmap);
                    break;
                }

                case SmartSqlMapSource.ResourceType.Directory:
                {
                    var sqlmapChildren = await ZooClient.getChildrenAsync(sqlmapSource.Path);

                    foreach (var sqlmapChild in sqlmapChildren.Children)
                    {
                        var sqlmapPath = $"{sqlmapSource.Path}/{sqlmapChild}";
                        var sqlmap     = await LoadSmartSqlMapAsync(sqlmapPath, config);

                        config.SmartSqlMaps.Add(sqlmap);
                    }
                    break;
                }

                default:
                {
                    throw new ArgumentException("unknow SmartSqlMap.Type!");
                }
                }
            }
            _logger.LogDebug($"SmartSql.ZooKeeperConfigLoader Load: {path} End");

            smartSqlMapper.LoadConfig(config);
            return(config);
        }
示例#12
0
        private void ConfigForm_Load(object sender, EventArgs e)
        {
            _confiStream = new ConfigStream("UnITTT.Screensaver", ".ini");
            try
            {
                _config = (Config)_confiStream.Read();

                trackBar1.Value = _config.PlayVelocity;
                trackBar2.Value = _config.MoveVelocity;
            }
            catch
            {
                _config = new Config();
            }
        }
示例#13
0
 private void LoadConfig()
 {
     _confiStream = new ConfigStream("UniTTT.Screensaver", ".ini");
     try
     {
         _config = (Config)_confiStream.Read();
         if (_config == null)
         {
             _config = new Config();
             _config.PlayVelocity = 1;
             _config.MoveVelocity = 1;
         }
     }
     catch
     {
         _config = new Config();
         _config.PlayVelocity = 1;
         _config.MoveVelocity = 1;
     }
 }
示例#14
0
        public async Task <SmartSqlMapConfig> LoadAsync(string path, ISmartSqlMapper smartSqlMapper)
        {
            _logger.Debug($"SmartSql.ZooKeeperConfigLoader Load: {path} Starting");
            var configResult = await ZooClient.getDataAsync(path, new SmartSqlMapConfigWatcher(smartSqlMapper, this));

            var configStream = new ConfigStream
            {
                Path   = path,
                Stream = new MemoryStream(configResult.Data)
            };
            var config = LoadConfig(configStream, smartSqlMapper);

            foreach (var sqlmapSource in config.SmartSqlMapSources)
            {
                var sqlmap = await LoadSmartSqlMapAsync(sqlmapSource.Path, config);

                config.SmartSqlMaps.Add(sqlmap);
            }
            _logger.Debug($"SmartSql.ZooKeeperConfigLoader Load: {path} End");

            smartSqlMapper.LoadConfig(config);
            return(config);
        }
示例#15
0
 public override void Execute(string value)
 {
     ConfigStream stream = new ConfigStream(value);
     OnDataReturn(this, stream.Read());
     base.Execute(value);
 }