예제 #1
0
        private ModelMap.ModelMap parseMap()
        {
            var logger = new NulloLogger();

            Services.Add <ILogger>(logger);
            Services.Add <IObjectBuilder>(new ObjectBuilder());
            Services.Add <IFilterPolicyRegistry>(new FilterPolicyRegistry());
            Services.Add <IXElementSerializer>(new XElementSerializer(new MappingVariableExpander(new MappingVariableRegistry(new List <IMappingVariableSource>()), _services)));
            Services.Add <IMappingVariableExpander>(new MappingVariableExpander(new MappingVariableRegistry(new List <IMappingVariableSource>()), _services));

            var visitors       = Visitors();
            var elementService = new XElementService(visitors);

            var parser    = new HistoryMapParser(Services, elementService, logger);
            var overrides = new HistoryMapOverrideParser(parser, new ModelMapDiff(), new HistoryMapDiffOptions());
            var settings  = Services.GetInstance <HistorySettings>();

            Cache = new HistoryMapCache(parser, settings, overrides);

            return(Cache.Maps().First());
        }
        private ModelMap parseMap()
        {
            var logger   = new NulloLogger();
            var services = new InMemoryServiceLocator();

            services.Add <ILogger>(logger);
            services.Add <IObjectBuilder>(new ObjectBuilder());
            services.Add <IFilterPolicyRegistry>(new FilterPolicyRegistry());
            services.Add <IXElementSerializer>(new XElementSerializer(new MappingVariableExpander(new MappingVariableRegistry(new List <IMappingVariableSource>()), services)));
            services.Add <IMappingVariableExpander>(new MappingVariableExpander(new MappingVariableRegistry(new List <IMappingVariableSource>()), services));

            var visitors       = Visitors();
            var elementService = new XElementService(visitors);
            var parser         = new ModelMapParser(services, elementService, logger);
            var overrides      = new ModelMapOverrideParser(parser, new ModelMapDiff(), new ModelMapDiffOptions());
            var replacements   = new ModelMapReplacementParser(parser);

            var settings = new ModelMapSettings {
                Directory = _tempPath
            };
            var cache = new ModelMapCache(parser, overrides, replacements, settings);

            return(cache.Maps().Single());
        }