/// <summary> /// Initializes a new instance of the JsonProtocolQueryVerifier class /// </summary> /// <param name="service">The data service descriptor.</param> /// <param name="verifiers">The resource string verifiers.</param> public JsonProtocolQueryVerifier(IAstoriaServiceDescriptor service, IAstoriaStringResourceVerifiers verifiers) : base( MimeTypes.ApplicationJsonODataLightStreaming, service.ServiceUri, service.ConceptualModel.GetMaxProtocolVersion(), verifiers.SystemDataServicesStringVerifier) { }
/// <summary> /// Initializes a new instance of the XmlProtocolQueryVerifier class /// </summary> /// <param name="service">The data service descriptor.</param> /// <param name="verifiers">The resource string verifiers.</param> public XmlProtocolQueryVerifier(IAstoriaServiceDescriptor service, IAstoriaStringResourceVerifiers verifiers) : base( MimeTypes.ApplicationAtomXml + "," + MimeTypes.ApplicationXml, service.ServiceUri, service.ConceptualModel.GetMaxProtocolVersion(), verifiers.SystemDataServicesStringVerifier) { }
/// <summary> /// Initializes a new instance of the <see cref="PayloadReaderVersionErrorCalculator"/> class. /// </summary> /// <param name="verifiers">The string resource verifiers</param> public PayloadReaderVersionErrorCalculator(IAstoriaStringResourceVerifiers verifiers) { this.verifiers = verifiers; }
internal static bool TryCalculateReaderError(ODataPayloadElement payload, DataServiceProtocolVersion dataServiceVersion, IAstoriaStringResourceVerifiers verifiers, out ExpectedErrorMessage expectedErrorMessage) { if (new PayloadReaderVersionErrorCalculator(verifiers).TryCalculateError(payload, dataServiceVersion, out expectedErrorMessage)) { return(true); } expectedErrorMessage = null; return(false); }
internal static bool TryCalculateReaderError(ODataRequest request, DataServiceProtocolVersion dataServiceVersion, IAstoriaStringResourceVerifiers verifiers, IODataPayloadElementMetadataResolver metadataResolver, out ExpectedErrorMessage expectedErrorMessage) { var requestBody = request.Body; if (requestBody != null && requestBody.RootElement != null) { var payload = requestBody.RootElement; if (metadataResolver != null && !IsStreamRequest(request) && !request.Uri.IsAction()) { metadataResolver.ResolveMetadata(payload, request.Uri); } if (TryCalculateReaderError(payload, dataServiceVersion, verifiers, out expectedErrorMessage)) { return(true); } } expectedErrorMessage = null; return(false); }