示例#1
0
        protected override void Load(ContainerBuilder builder)
        {
            var logger  = new OrchardLogger();
            var context = new PipelineContext(logger, new Process {
                Name = "OrchardCMS"
            });

            builder.Register(c => new RunTimeDataReader(
                                 context.Logger,
                                 c.Resolve <IAppDataFolder>(),
                                 new RazorReportTemplateProcessor(new RazorReportCompiler(), c.Resolve <HttpContextBase>(), c.Resolve <IOrchardServices>()),
                                 c.Resolve <INotifier>()
                                 )
                             ).As <IRunTimeRun>();

            builder.Register(c => new CachingRunTimeSchemaReader(new RunTimeSchemaReader(context, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>(), c.Resolve <INotifier>()))).As <IRunTimeSchemaReader>();
            builder.Register(c => new SchemaHelper(context, c.Resolve <IRunTimeSchemaReader>())).As <ISchemaHelper>();

            builder.Register(c => new RunTimeExecuter(
                                 context,
                                 c.Resolve <IAppDataFolder>(),
                                 new RazorReportTemplateProcessor(new RazorReportCompiler(), c.Resolve <HttpContextBase>(), c.Resolve <IOrchardServices>()),
                                 c.Resolve <INotifier>()
                                 )
                             ).As <IRunTimeExecute>();
        }
        protected override void Load(ContainerBuilder builder)
        {
            var logger  = new OrchardLogger();
            var context = new PipelineContext(logger, new Process {
                Name = "OrchardCMS"
            });

            // This reader is used to load the initial configuration and nested resources for tfl actions, etc.
            builder.Register(c => new DefaultReader(new FileReader(), new WebReader())).As <IReader>();

            builder.Register(c => new RunTimeDataReader(
                                 context.Logger,
                                 c.Resolve <IAppDataFolder>(),
                                 new RazorReportTemplateProcessor(new RazorReportCompiler(), c.Resolve <HttpContextBase>(), c.Resolve <IOrchardServices>()),
                                 c.Resolve <INotifier>()
                                 )
                             ).As <IRunTimeRun>();

            builder.Register(c => new CachingRunTimeSchemaReader(new RunTimeSchemaReader(context, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>(), c.Resolve <INotifier>()))).As <IRunTimeSchemaReader>();
            builder.Register(c => new SchemaHelper(context, c.Resolve <IRunTimeSchemaReader>())).As <ISchemaHelper>();

            builder.Register(c => new RunTimeExecuter(
                                 context,
                                 c.Resolve <IAppDataFolder>(),
                                 new RazorReportTemplateProcessor(new RazorReportCompiler(), c.Resolve <HttpContextBase>(), c.Resolve <IOrchardServices>()),
                                 c.Resolve <INotifier>()
                                 )
                             ).As <IRunTimeExecute>();
        }
示例#3
0
        protected override void Load(ContainerBuilder builder)
        {
            builder.Register(c => new ShorthandRoot(Common.DefaultShortHand)).As <ShorthandRoot>().SingleInstance();
            builder.Register(c => new ShorthandCustomizer(c.Resolve <ShorthandRoot>(), new [] { "fields", "calculated-fields" }, "t", "transforms", "method")).As <ShorthandCustomizer>();

            // xml
            builder.Register(c => new XmlProcess(
                                 new DateMathModifier(),
                                 new NanoXmlParser(),
                                 new XmlSerializer(),
                                 new JintValidator(),
                                 c.Resolve <ShorthandCustomizer>(),
                                 new EnvironmentModifier()
                                 )).As <XmlProcess>();

            builder.Register(c => new XmlToJsonProcess(
                                 new DateMathModifier(),
                                 new NanoXmlParser(),
                                 new JsonSerializer(),
                                 new JintValidator(),
                                 c.Resolve <ShorthandCustomizer>(),
                                 new EnvironmentModifier()
                                 )).As <XmlToJsonProcess>();

            builder.Register(c => new XmlProcessPass(new NanoXmlParser(), new XmlSerializer())).As <XmlProcessPass>();
            builder.Register(c => new XmlToJsonProcessPass(new NanoXmlParser(), new JsonSerializer())).As <XmlToJsonProcessPass>();

            // json
            builder.Register(c => new JsonProcess(
                                 new DateMathModifier(),
                                 new FastJsonParser(),
                                 new JsonSerializer(),
                                 new JintValidator(),
                                 c.Resolve <ShorthandCustomizer>(),
                                 new EnvironmentModifier()
                                 )).As <JsonProcess>();

            builder.Register(c => new JsonToXmlProcess(
                                 new DateMathModifier(),
                                 new FastJsonParser(),
                                 new XmlSerializer(),
                                 new JintValidator(),
                                 c.Resolve <ShorthandCustomizer>(),
                                 new EnvironmentModifier()
                                 )).As <JsonToXmlProcess>();

            builder.Register(c => new JsonProcessPass(new FastJsonParser(), new JsonSerializer())).As <JsonProcessPass>();
            builder.Register(c => new JsonToXmlProcessPass(new FastJsonParser(), new XmlSerializer())).As <JsonToXmlProcessPass>();

            var logger  = new OrchardLogger();
            var context = new PipelineContext(logger, new Process {
                Name = "OrchardCMS"
            });

            builder.Register(c => new RunTimeDataReader(logger, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>(), c.Resolve <INotifier>())).As <IRunTimeRun>();
            builder.Register(c => new CachingRunTimeSchemaReader(new RunTimeSchemaReader(context, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>(), c.Resolve <INotifier>()))).As <IRunTimeSchemaReader>();
            builder.Register(c => new SchemaHelper(context, c.Resolve <IRunTimeSchemaReader>())).As <ISchemaHelper>();
            builder.Register(c => new RunTimeExecuter(context, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>(), c.Resolve <INotifier>())).As <IRunTimeExecute>();
        }
示例#4
0
        protected override void Load(ContainerBuilder builder)
        {
            builder.Register(c => {
                var manager  = c.Resolve <IShellSettingsManager>();
                var settings = manager.LoadSettings().FirstOrDefault(s => !string.IsNullOrEmpty(s.DataProvider) && !string.IsNullOrEmpty(s.DataConnectionString));
                if (settings == null)
                {
                    Logger.Error("Transformalize (Pipeline.Web.Orchard) module could not read shell settings!  Default shorthand configuration used.");
                    return(Common.DefaultShortHand);
                }

                try {
                    using (var cn = GetConnection(settings.DataProvider, settings.DataConnectionString)) {
                        cn.Open();
                        var cmd         = cn.CreateCommand();
                        cmd.CommandText = "SELECT ShortHand FROM Pipeline_Web_Orchard_PipelineSettingsPartRecord;";
                        cmd.CommandType = CommandType.Text;
                        var value       = cmd.ExecuteScalar();
                        if (value != null)
                        {
                            return(value as string);
                        }
                    }
                } catch (Exception ex) {
                    Logger.Error("Tried to read short-hand configuration for Transformalize (Pipeline.Web.Orchard) module. {0}", ex.Message);
                }
                return(Common.DefaultShortHand);
            }).Named <string>("sh");

            builder.Register(c => new ShorthandRoot(c.ResolveNamed <string>("sh"))).As <ShorthandRoot>().SingleInstance();
            builder.Register(c => new ShorthandValidator(c.Resolve <ShorthandRoot>(), "sh")).As <ShorthandValidator>();
            builder.Register(c => new ShorthandModifier(c.Resolve <ShorthandRoot>(), "sh")).As <ShorthandModifier>();

            // xml
            builder.Register(c => new XmlProcess(
                                 new NanoXmlParser(),
                                 new XmlSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <XmlProcess>();

            builder.Register(c => new XmlToJsonProcess(
                                 new NanoXmlParser(),
                                 new JsonSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <XmlToJsonProcess>();

            builder.Register(c => new XmlToYamlProcess(
                                 new NanoXmlParser(),
                                 new YamlDotNetSerializer(SerializationOptions.EmitDefaults, new CamelCaseNamingConvention()),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <XmlToYamlProcess>();

            builder.Register(c => new XmlProcessPass(new NanoXmlParser(), new XmlSerializer())).As <XmlProcessPass>();
            builder.Register(c => new XmlToJsonProcessPass(new NanoXmlParser(), new JsonSerializer())).As <XmlToJsonProcessPass>();
            builder.Register(c => new XmlToYamlProcessPass(new NanoXmlParser(), new YamlDotNetSerializer(SerializationOptions.EmitDefaults, new CamelCaseNamingConvention()))).As <XmlToYamlProcessPass>();

            // json
            builder.Register(c => new JsonProcess(
                                 new FastJsonParser(),
                                 new JsonSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 //new OrchardNodeModifier("host", c.Resolve<IOrchardServices>()),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <JsonProcess>();

            builder.Register(c => new JsonToXmlProcess(
                                 new FastJsonParser(),
                                 new XmlSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <JsonToXmlProcess>();

            builder.Register(c => new JsonToYamlProcess(
                                 new FastJsonParser(),
                                 new YamlDotNetSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <JsonToYamlProcess>();

            builder.Register(c => new JsonProcessPass(new FastJsonParser(), new JsonSerializer())).As <JsonProcessPass>();
            builder.Register(c => new JsonToXmlProcessPass(new FastJsonParser(), new XmlSerializer())).As <JsonToXmlProcessPass>();
            builder.Register(c => new JsonToYamlProcessPass(new FastJsonParser(), new YamlDotNetSerializer())).As <JsonToYamlProcessPass>();

            // yaml
            builder.Register(c => new YamlProcess(
                                 new YamlDotNetParser(),
                                 new YamlDotNetSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <YamlProcess>();

            builder.Register(c => new YamlToXmlProcess(
                                 new YamlDotNetParser(),
                                 new XmlSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <YamlToXmlProcess>();

            builder.Register(c => new YamlToJsonProcess(
                                 new YamlDotNetParser(),
                                 new JsonSerializer(),
                                 new JintValidator("js"),
                                 new IllegalCharacterValidator("ipc"),
                                 c.Resolve <ShorthandValidator>(),
                                 c.Resolve <ShorthandModifier>(),
                                 new PlaceHolderModifier(),
                                 new EnvironmentModifier(new PlaceHolderModifier(), new ParameterModifier()),
                                 new PlaceHolderValidator()
                                 )).As <YamlToJsonProcess>();

            builder.Register(c => new YamlProcessPass(new YamlDotNetParser(), new YamlDotNetSerializer())).As <YamlProcessPass>();
            builder.Register(c => new YamlToXmlProcessPass(new YamlDotNetParser(), new XmlSerializer())).As <YamlToXmlProcessPass>();
            builder.Register(c => new YamlToJsonProcessPass(new YamlDotNetParser(), new JsonSerializer())).As <YamlToJsonProcessPass>();

            var logger  = new OrchardLogger();
            var context = new PipelineContext(logger, new Process {
                Name = "OrchardCMS"
            }.WithDefaults());

            builder.Register(c => new RunTimeDataReader(logger, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>())).As <IRunTimeRun>();
            builder.Register(c => new CachingRunTimeSchemaReader(new RunTimeSchemaReader(context, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>()))).As <IRunTimeSchemaReader>();
            builder.Register(c => new SchemaHelper(context, c.Resolve <IRunTimeSchemaReader>())).As <ISchemaHelper>();
            builder.Register(c => new RunTimeExecuter(context, c.Resolve <IAppDataFolder>(), c.Resolve <ITemplateProcessor>())).As <IRunTimeExecute>();
        }