/// <summary> /// Parse request from <paramref name="input"/> /// </summary> /// <param name="input"> /// The reader for the SDMX-ML or REST request /// </param> /// <returns> /// The <see cref="IStreamController{TWriter}"/>. /// </returns> public IStreamController <TWriter> ParseRequest(IReadableDataLocation input) { IDataQueryParseManager dataQueryParseManager = new DataQueryParseManager(SdmxSchemaEnumType.VersionTwoPointOne); var dataQuery = dataQueryParseManager.BuildComplexDataQuery(input, this._sdmxRetrievalManager).FirstOrDefault(); if (dataQuery == null) { throw new SdmxSemmanticException(Resources.ErrorOperationNotAccepted); } return(this.ParseRequest(dataQuery)); }
/// <summary> /// Gets the data query from stream. /// </summary> /// <param name="input"> /// The input. /// </param> /// <exception cref="Org.Sdmxsource.Sdmx.Api.Exception.SdmxSemmanticException"> /// Operation not accepted /// </exception> /// <returns> /// The <see cref="IDataQuery"/>. /// </returns> protected IDataQuery GetDataQueryFromStream(IReadableDataLocation input) { IDataQueryParseManager dataQueryParseManager = new DataQueryParseManager(SdmxSchemaEnumType.VersionTwo); var dataQuery = dataQueryParseManager.BuildDataQuery(input, this._sdmxRetrievalManager).FirstOrDefault(); if (dataQuery == null) { throw new SdmxSemmanticException(Resources.ErrorOperationNotAccepted); } return(dataQuery); }