public void ConfigureOperations(ScaffoldOperationConfiguration configuration)
        {
            var scaffolder = new ScaffolderConfigurer();

            ConfigureScaffolder((IScaffoldBuilder)scaffolder);
            ((IScaffoldConfigurer)scaffolder).ConfigureOperations(configuration);
        }
Example #2
0
        protected virtual ScaffoldOperationConfiguration ConfigureOperationsCore(ScaffoldOperationConfiguration configuration)
        {
            var configurer = new ScaffolderConfigurer();

            ConfigureGenerator(configurer);
            ((IScaffoldConfigurer)configurer).ConfigureOperations(configuration);
            return(configuration);
        }
Example #3
0
 public IEnumerable <Operation> Build(ScaffoldOperationConfiguration configuration, SourcingContext sourcingContext)
 {
     foreach (var step in configuration.Steps)
     {
         foreach (var operation in BuildOperations(step, configuration, sourcingContext))
         {
             yield return(operation);
         }
     }
 }
Example #4
0
 public virtual void VisitConfiguration(ScaffoldOperationConfiguration configuration)
 {
     if (configuration == null)
     {
         throw new ArgumentNullException(nameof(configuration));
     }
     foreach (var action in Actions)
     {
         action(configuration);
     }
 }
Example #5
0
 public GeneratorRegistrationConvention(ScaffoldOperationConfiguration configuration, GeneratorContext context, params Assembly[] additionalAssemblies)
 {
     if (configuration == null)
     {
         throw new ArgumentNullException(nameof(configuration));
     }
     if (context == null)
     {
         throw new ArgumentNullException(nameof(context));
     }
     _configuration        = configuration;
     _context              = context;
     _additionalAssemblies = additionalAssemblies;
 }
Example #6
0
 public ConfigurationResolver(IExecutableGenerator generator, IOptionRunner optionRunner, GeneratorContext generatorContext, ScaffoldOperationConfiguration configuration, IEnumerable <IScaffoldConfigurer> configurers)
 {
     if (generator == null)
     {
         throw new ArgumentNullException(nameof(generator));
     }
     if (generatorContext == null)
     {
         throw new ArgumentNullException(nameof(generatorContext));
     }
     _generator        = generator;
     _optionRunner     = optionRunner;
     _generatorContext = generatorContext;
     _configuration    = configuration;
     _configurers      = configurers ?? Enumerable.Empty <IScaffoldConfigurer>();
 }
        protected virtual ScaffoldOperationConfiguration ConfigureOperationsCore(
            ScaffoldOperationConfiguration configuration)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            //foreach (var action in Actions)
            //    action(configuration);

            foreach (var builder in OperationBuilders)
            {
                builder.VisitConfiguration(configuration);
            }

            return(configuration);
        }
 void IScaffoldConfigurer.ConfigureOperations(
     ScaffoldOperationConfiguration configuration) => ConfigureOperationsCore(configuration);
Example #9
0
 ScaffoldOperationConfiguration IExecutableGenerator.ConfigureOperations(
     ScaffoldOperationConfiguration configuration) => ConfigureOperationsCore(configuration);
Example #10
0
 protected DirectoryInfo BuildTargetPath(GeneratorContext generatorContext,
                                         ScaffoldOperationConfiguration configuration)
 =>
 new DirectoryInfo(Path.Combine(generatorContext.WorkingDirectory.FullName, configuration.TargetSubDirectory));
Example #11
0
        protected virtual IEnumerable <Operation> BuildOperations(OperationStep step, ScaffoldOperationConfiguration configuration, SourcingContext context)
        {
            var source          = step.GetSource(configuration);
            var sourcingResults = source.Generate(context);

            foreach (var result in sourcingResults)
            {
                var destinationFilename = result.FileName;
                var destinationFilepath = result.FilePath;
                var streamTransformers  = new List <IStreamTransformer>();

                foreach (var transformer in configuration.GlobalTransformers.Union(step.GetTransformers()))
                {
                    destinationFilepath = transformer.TransformFilename(destinationFilepath);
                    destinationFilename = transformer.TransformFilename(destinationFilename);
                    streamTransformers.Add(transformer.CreateStreamTransformer());
                }

                var actualTransformer = new CompoundStreamTransformer(streamTransformers);

                var persistenceContext = new PersistenceContext()
                {
                    FilePath        = destinationFilepath,
                    Filename        = destinationFilename,
                    TargetDirectory = context.TargetRoot
                };

                foreach (var emitter in step.GetEmitters())
                {
                    foreach (var actualEmitter in  emitter.CreatePersisters(persistenceContext))
                    {
                        yield return(new Operation(result.Provider, actualTransformer, actualEmitter));
                    }
                }
            }
        }
Example #12
0
 protected virtual IEnumerable <OperationTransformerBase> ObtainTransformers(OperationStep step, ScaffoldOperationConfiguration configuration)
 {
     if (step.GetScope() == TransformationScope.AfterGlobals)
     {
         return(configuration.GlobalTransformers.Union(step.GetTransformers()));
     }
     return(step.GetTransformers().Union(configuration.GlobalTransformers));
 }
Example #13
0
 public override void VisitConfiguration(ScaffoldOperationConfiguration configuration)
 {
     Transform.VisitConfiguration(configuration);
     base.VisitConfiguration(configuration);
 }
 protected override ScaffoldOperationConfiguration ConfigureOperationsCore(ScaffoldOperationConfiguration configuration)
 {
     configuration = base.ConfigureOperationsCore(configuration);
     return(((IExecutableGenerator)_dependentGenerator).ConfigureOperations(configuration));
 }
Example #15
0
 public SourceFactory GetSource(ScaffoldOperationConfiguration configuration) => _sourceFactoryFunc?.Invoke(configuration) ?? _sourceFactory;