/// <summary> /// Constructor with DI support /// </summary> /// <param name="logger">The logger interface</param> /// <param name="mappingProvider">The mapping provider interface</param> /// <param name="targetPageUriResolver">The target page uri resolver</param> /// <param name="pagePreTransformations">The list of post transformations to call</param> /// <param name="pagePostTransformations">The list of pre transformations to call</param> /// <param name="pageTransformationOptions">The options</param> /// <param name="pageGenerator">The page generator to create the actual SPO modern page</param> /// <param name="telemetry">The telemetry service</param> public DefaultPageTransformator( ILogger <DefaultPageTransformator> logger, IMappingProvider mappingProvider, ITargetPageUriResolver targetPageUriResolver, IEnumerable <IPagePreTransformation> pagePreTransformations, IEnumerable <IPagePostTransformation> pagePostTransformations, IOptions <PageTransformationOptions> pageTransformationOptions, IPageGenerator pageGenerator, TelemetryService telemetry) { this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); this.mappingProvider = mappingProvider ?? throw new ArgumentNullException(nameof(mappingProvider)); this.targetPageUriResolver = targetPageUriResolver ?? throw new ArgumentNullException(nameof(targetPageUriResolver)); this.pagePreTransformations = pagePreTransformations ?? throw new ArgumentNullException(nameof(pagePreTransformations)); this.pagePostTransformations = pagePostTransformations ?? throw new ArgumentNullException(nameof(pagePostTransformations)); this.defaultPageTransformationOptions = pageTransformationOptions ?? throw new ArgumentNullException(nameof(pageTransformationOptions)); this.pageGenerator = pageGenerator ?? throw new ArgumentNullException(nameof(pageGenerator)); this.telemetry = telemetry ?? throw new ArgumentNullException(nameof(telemetry)); }
/// <summary> /// Creates a new instance /// </summary> /// <param name="targetPageUriResolver">Instance of an URI resolver to use</param> public SharePointTransformationDistiller(ITargetPageUriResolver targetPageUriResolver) { this.targetPageUriResolver = targetPageUriResolver ?? throw new ArgumentNullException(nameof(targetPageUriResolver)); }