/// <summary> /// Gets the Advanced (SDMX v2.1 SOAP) data controller. /// </summary> /// <param name="dataFormat"> /// The compact data format. /// </param> /// <param name="sdmxSchema"> /// The SDMX schema V20. /// </param> /// <param name="principal"> /// The principal. /// </param> /// <returns> /// The <see cref="IController{XmlNode,XmlWriter}"/>. /// </returns> private IController <Message, XmlWriter> GetAdvancedDataController(BaseDataFormat dataFormat, SdmxSchema sdmxSchema, DataflowPrincipal principal) { var dataWriterBuilder = new DataWriterBuilder(dataFormat, sdmxSchema); var dataResponseGenerator = new AdvancedDataResponseGenerator <XmlWriter>(this._advancedRetrievalWithWriter, dataWriterBuilder); var operation = dataFormat.GetSoapOperation(SdmxSchemaEnumType.VersionTwoPointOne); var dataController = new DataController <IComplexDataQuery, XmlWriter>(dataResponseGenerator); IDataflowLogManager dataflowLogManager = new DataflowLogManager(dataFormat); var requestLogDataController = new RequestLogDataController <IComplexDataQuery, XmlWriter>(dataController, dataflowLogManager); var validatingDataController = new ValidatingDataController <IComplexDataQuery, XmlWriter>(requestLogDataController, new DataRequestValidator(dataFormat, sdmxSchema)); var authDataController = new AuthDataController <IComplexDataQuery, XmlWriter>(validatingDataController, principal); return(new AdvancedDataController <XmlWriter>(operation, authDataController, this._mappingStoreSdmxObjectRetrievalManager)); }
/// <summary> /// Gets the Advanced (SDMX v2.1 SOAP) data controller. /// </summary> /// <param name="dataFormat"> /// The compact data format. /// </param> /// <param name="sdmxSchema"> /// The SDMX schema V20. /// </param> /// <param name="principal"> /// The principal. /// </param> /// <returns> /// The <see cref="IController{XmlNode,XmlWriter}"/>. /// </returns> private IController<Message, XmlWriter> GetAdvancedDataController(BaseDataFormat dataFormat, SdmxSchema sdmxSchema, DataflowPrincipal principal) { var dataWriterBuilder = new DataWriterBuilder(dataFormat, sdmxSchema); var dataResponseGenerator = new AdvancedDataResponseGenerator<XmlWriter>(this._advancedRetrievalWithWriter, dataWriterBuilder); var operation = dataFormat.GetSoapOperation(SdmxSchemaEnumType.VersionTwoPointOne); var dataController = new AdvancedDataController<XmlWriter>(dataResponseGenerator, new DataRequestValidator(dataFormat, sdmxSchema), principal, operation); return dataController; }
/// <summary> /// Gets the Advanced (SDMX v2.1 SOAP) data controller. /// </summary> /// <param name="dataFormat"> /// The compact data format. /// </param> /// <param name="sdmxSchema"> /// The SDMX schema V20. /// </param> /// <param name="principal"> /// The principal. /// </param> /// <returns> /// The <see cref="IController{XmlNode,XmlWriter}"/>. /// </returns> private IController<Message, XmlWriter> GetAdvancedDataController(BaseDataFormat dataFormat, SdmxSchema sdmxSchema, DataflowPrincipal principal) { var dataWriterBuilder = new DataWriterBuilder(dataFormat, sdmxSchema); var dataResponseGenerator = new AdvancedDataResponseGenerator<XmlWriter>(this._advancedRetrievalWithWriter, dataWriterBuilder); var operation = dataFormat.GetSoapOperation(SdmxSchemaEnumType.VersionTwoPointOne); var dataController = new DataController<IComplexDataQuery, XmlWriter>(dataResponseGenerator); IDataflowLogManager dataflowLogManager = new DataflowLogManager(dataFormat); var requestLogDataController = new RequestLogDataController<IComplexDataQuery, XmlWriter>(dataController, dataflowLogManager); var validatingDataController = new ValidatingDataController<IComplexDataQuery, XmlWriter>(requestLogDataController, new DataRequestValidator(dataFormat, sdmxSchema)); var authDataController = new AuthDataController<IComplexDataQuery, XmlWriter>(validatingDataController, principal); return new AdvancedDataController<XmlWriter>(operation, authDataController, this._mappingStoreSdmxObjectRetrievalManager); }