public void JoinConfig(StructureConfig config)
 {
     foreach (var pair in config._dictionary)
     {
         _dictionary.Add(pair.Key, pair.Value);
     }
 }
Example #2
0
        private static void Main(string[] args)
        {
            try
            {
                var           consoleParameters = new ConsoleParametrsParse(args);
                IConfigReader configReader      = new YamlConfigReader(ConfigurationManager.AppSettings.Get("pathConfigFile"));

                StructureConfig configParameters     = configReader.Parameters;
                bool            tryConsoleParameters = consoleParameters.TryGetParameters();

                if (!tryConsoleParameters)
                {
                    throw new IncorrectParametersException(consoleParameters.ErrorParameters);
                }

                configParameters.JoinConfig(consoleParameters.Parameters);
                var generator = new LogFileGenerator(configParameters);
                generator.GenerateLogFile();
            }
            catch (GeneratorAppException exception)
            {
                IErrorView view = new ConsoleErrorView(exception);
                view.DisplayMessage();
            }
        }
Example #3
0
    public StructureController(StructureMaster structureMaster, StructureConfig structureConfig, StructureData structureData)
    {
        this.structureMaster = structureMaster;
        this.structureConfig = structureConfig;
        this.structureData   = structureData;

        Initialize();
    }
 public LogRecordTemplate(StructureConfig configParameters)
 {
     _data.SetProbability(configParameters);
     _ipAddressGenerator      = new IpAddressGenerator(_random, _data.UniqueIpCount);
     _hyphenGenerator         = new HyphenGenerator();
     _userIdGenerator         = new UserIdGenerator(_random);
     _dateGenerator           = new DateGenerator(_random);
     _requestLineGenerator    = new RequestLineGenerator(_random, _data.RequestLineParameters);
     _codeDefinitionGenerator = new CodeDefinitionGenerator(_random, _data.Codes);
     _fileSizeGenerator       = new FileSizeGenerator(_random);
 }
Example #5
0
 public Lexer(LexConfig config, StructureConfig structureConfig)
 {
     m_TokenNizer    = new Tokenizer(config);
     m_TokenReplacer = new TokenReplacer(config);
     m_Structurizer  = new Structurizer(structureConfig);
 }
    // Use this for initialization
    void Start()
    {
        Instance = this;

        StructureConfigs[0] = new StructureConfig();
        StructureConfigs[0].Name = "House";
        StructureConfigs[0].PrefabLocation = "Structures/BasicHousePrefab";
        StructureConfigs[0].RivetCost = 20;
        StructureConfigs[0].VoltCost = 10;
        StructureConfigs[0].BaseWidth = 2;
        StructureConfigs[0].BaseHeight = 2;
        StructureConfigs[0].HousingModifier = 20;
        StructureConfigs[0].AttractionModifier = -10;
        StructureConfigs[0].VoltGeneration = -10;
        StructureConfigs[0].BuildTime = 20;

        StructureConfigs[1] = new StructureConfig();
        StructureConfigs[1].Name = "Windmill";
        StructureConfigs[1].PrefabLocation = "Structures/WindmillPrefab";
        StructureConfigs[1].RivetCost = 50;
        StructureConfigs[1].BaseWidth = 2;
        StructureConfigs[1].BaseHeight = 2;
        StructureConfigs[1].AttractionModifier = -20;
        StructureConfigs[1].WorkersRequired = 5;
        StructureConfigs[1].VoltGeneration = 10;
        StructureConfigs[1].BuildTime = 20;

        StructureConfigs[2] = new StructureConfig();
        StructureConfigs[2].Name = "Shop";
        StructureConfigs[2].PrefabLocation = "Structures/ShopPrefab";
        StructureConfigs[2].RivetCost = 50;
        StructureConfigs[2].VoltCost = 40;
        StructureConfigs[2].BaseWidth = 2;
        StructureConfigs[2].BaseHeight = 2;
        StructureConfigs[2].AttractionModifier = 10;
        StructureConfigs[2].WorkersRequired = 4;
        StructureConfigs[2].RivetMinGeneration = 5;
        StructureConfigs[2].RivetMaxGeneration = 8;
        StructureConfigs[2].VoltGeneration = -1;
        StructureConfigs[2].BuildTime = 20;

        StructureConfigs[3] = new StructureConfig();
        StructureConfigs[3].Name = "TownHall";
        StructureConfigs[3].PrefabLocation = "Structures/TownHallPrefab";
        StructureConfigs[3].RivetCost = 0;
        StructureConfigs[3].BaseWidth = 2;
        StructureConfigs[3].BaseHeight = 2;
        StructureConfigs[3].AttractionModifier = 10;
        StructureConfigs[3].WorkersRequired = 0;
        StructureConfigs[3].RivetMinGeneration = 5;
        StructureConfigs[3].RivetMaxGeneration = 8;
        StructureConfigs[3].BuildLimit = 1;
        StructureConfigs[3].VoltGeneration = 5;
        StructureConfigs[3].BuildTime = 15;

        StructureConfigs[4] = new StructureConfig();
        StructureConfigs[4].Name = "BoilerPlant";
        StructureConfigs[4].PrefabLocation = "Structures/BoilerPlantPrefab";
        StructureConfigs[4].RivetCost = 100;
        StructureConfigs[4].VoltCost = 50;
        StructureConfigs[4].BaseWidth = 2;
        StructureConfigs[4].BaseHeight = 2;
        StructureConfigs[4].AttractionModifier = -10;
        StructureConfigs[4].WorkersRequired = 10;
        StructureConfigs[4].RivetMinGeneration = 0;
        StructureConfigs[4].RivetMaxGeneration = 0;
        StructureConfigs[4].SteamGeneration = 10;
        StructureConfigs[4].BuildTime = 45;

        StructureConfigs[5] = new StructureConfig();
        StructureConfigs[5].Name = "ClockTower";
        StructureConfigs[5].PrefabLocation = "Structures/ClockTowerPrefab";
        StructureConfigs[5].RivetCost = 50;
        StructureConfigs[5].VoltCost = 30;
        StructureConfigs[5].BaseWidth = 2;
        StructureConfigs[5].BaseHeight = 2;
        StructureConfigs[5].AttractionModifier = 25;
        StructureConfigs[5].WorkersRequired = 1;
        StructureConfigs[5].VoltGeneration = -10;
        StructureConfigs[5].BuildTime = 45;
    }
Example #7
0
 public LogFileGenerator(StructureConfig configParameters)
 {
     _configParameters  = configParameters;
     _logRecordTemplate = new LogRecordTemplate(_configParameters);
 }
Example #8
0
        public void SetProbability(StructureConfig config)
        {
            if (config.ContainsKey(Keys.Ip))
            {
                if (config[Keys.Ip].ContainsKey(Keys.UniqueIp))
                {
                    UniqueIpCount.Value       = int.Parse(config[Keys.Ip][Keys.UniqueIp]);
                    UniqueIpCount.Probability = 1;
                }
            }

            if (config.ContainsKey(Keys.Codes))
            {
                foreach (var code in _codes)
                {
                    code.Probability = config[Keys.Codes].ContainsKey(code.Value.ToString(CultureInfo.InvariantCulture))
                                                ? config[Keys.Codes].CastValueToInt()[code.Value.ToString(CultureInfo.InvariantCulture)]
                                                : 0;
                }
            }

            if (config.ContainsKey(Keys.Methods))
            {
                foreach (var method in _requestLineParameters.Methods)
                {
                    method.Probability = config[Keys.Methods].ContainsKey(method.Value)
                                                ? config[Keys.Methods].CastValueToInt()[method.Value]
                                                : 0;
                }
            }

            if (config.ContainsKey(Keys.Versions))
            {
                foreach (var version in _requestLineParameters.Versions)
                {
                    version.Probability = config[Keys.Versions].ContainsKey(version.Value)
                                                ? config[Keys.Versions].CastValueToInt()[version.Value]
                                                : 0;
                }
            }

            if (config.ContainsKey(Keys.Protocols))
            {
                foreach (var protocol in _requestLineParameters.Protocols)
                {
                    protocol.Probability = config[Keys.Protocols].ContainsKey(protocol.Value)
                                                ? config[Keys.Protocols].CastValueToInt()[protocol.Value]
                                                : 0;
                }
            }

            if (config.ContainsKey(Keys.FileExtensions))
            {
                foreach (var extension in _requestLineParameters.FileExtensions)
                {
                    extension.Probability = config[Keys.FileExtensions].ContainsKey(extension.Value)
                                                ? config[Keys.FileExtensions].CastValueToInt()[extension.Value]
                                                : 0;
                }
            }
        }
 public void JoinConfig(StructureConfig config)
 {
     foreach (var pair in config._dictionary)
         _dictionary.Add(pair.Key, pair.Value);
 }