public ModelGenerator(
     CodeGeneratorConfiguration configuration,
     CodeGeneratorFactory generatorFactory,
     CodeGeneratorFactory interfaceGeneratorFactory,
     UmbracoDataTypesProvider dataTypeProvider,
     IDictionary <string, string> paths)
 {
     this.configuration             = configuration;
     this.generatorFactory          = generatorFactory;
     this.interfaceGeneratorFactory = interfaceGeneratorFactory;
     this.dataTypeProvider          = dataTypeProvider;
     this.paths = paths;
 }
 public ModelGenerator(
     CodeGeneratorConfiguration configuration, 
     CodeGeneratorFactory generatorFactory, 
     CodeGeneratorFactory interfaceGeneratorFactory,
     UmbracoDataTypesProvider dataTypeProvider, 
     IDictionary<string, string> paths)
 {
     this.configuration = configuration;
     this.generatorFactory = generatorFactory;
     this.interfaceGeneratorFactory = interfaceGeneratorFactory;
     this.dataTypeProvider = dataTypeProvider;
     this.paths = paths;
 }
        private void InitializeGenerator()
        {
            var generatorFactory          = CreateFactory <CodeGeneratorFactory>(configuration.GeneratorFactory);
            var interfaceGeneratorFactory = CreateFactory <CodeGeneratorFactory>(configuration.InterfaceFactory);
            var dataTypeProvider          = new UmbracoDataTypesProvider();
            var paths = new Dictionary <string, string>
            {
                { "DocumentType", HttpContext.Current.Server.MapPath(configuration.DocumentTypes.ModelPath) },
                { "MediaType", HttpContext.Current.Server.MapPath(configuration.MediaTypes.ModelPath) }
            };

            generator = new ModelGenerator(
                configuration,
                generatorFactory,
                interfaceGeneratorFactory,
                dataTypeProvider,
                paths
                );
        }