protected override void InitPipelines(params string[] arguments) { base.InitPipelines(arguments); if (!arguments.Contains("skip")) { var entityProcessors = PageProcessors.Where(p => p is IEntityProcessor).ToList(); var entityPipelines = Pipelines.Where(p => p is BaseEntityPipeline).ToList(); if (entityProcessors.Count != 0 && entityPipelines.Count == 0) { throw new SpiderException("You may miss a entity pipeline."); } foreach (var processor in entityProcessors) { foreach (var pipeline in entityPipelines) { var entityProcessor = processor as IEntityProcessor; if (pipeline is BaseEntityPipeline newPipeline) { if (entityProcessor != null) { newPipeline.AddEntity(entityProcessor.EntityDefine); newPipeline.Init(); } } } } } }
protected override void PreInitComponent(params string[] arguments) { base.PreInitComponent(arguments); if (arguments.Contains("skip")) { return; } var entityProcessors = PageProcessors.Where(p => p is IEntityProcessor).ToList(); var entityPipelines = Pipelines.Where(p => p is BaseEntityPipeline).ToList(); if (entityProcessors.Count != 0 && entityPipelines.Count == 0) { throw new SpiderException("You may miss a entity pipeline."); } foreach (var processor in entityProcessors) { foreach (var pipeline in entityPipelines) { var entityProcessor = processor as IEntityProcessor; BaseEntityPipeline newPipeline = pipeline as BaseEntityPipeline; newPipeline.AddEntity(entityProcessor.EntityDefine); } } }
protected override void InitPipelines(params string[] arguments) { if (Pipelines == null || Pipelines.Count == 0) { var defaultPipeline = GetDefaultPipeline(); if (defaultPipeline != null) { Pipelines.Add(defaultPipeline); } } if (!arguments.Contains("skip")) { var entityProcessors = PageProcessors.Where(p => p is IEntityProcessor).ToList(); var entityPipelines = Pipelines.Where(p => p is BaseEntityPipeline).ToList(); if (entityProcessors.Count != 0 && entityPipelines.Count == 0) { throw new SpiderException("You may miss a entity pipeline."); } foreach (var processor in entityProcessors) { foreach (var pipeline in entityPipelines) { var entityProcessor = processor as IEntityProcessor; BaseEntityPipeline newPipeline = pipeline as BaseEntityPipeline; newPipeline.AddEntity(entityProcessor.EntityDefine); } } } if (PageProcessors == null || PageProcessors.Count == 0) { throw new SpiderException("Count of PageProcessor is zero."); } foreach (var pipeline in Pipelines) { pipeline.InitPipeline(this); } }