/// <summary> /// Detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>The set of <see cref="ODataPayloadKind"/>s that are supported with the specified payload.</returns> public override IEnumerable<ODataPayloadKind> DetectPayloadKind( ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); return DetectPayloadKindImplementation(messageInfo.MediaType); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>Task which represents the pending create operation.</returns> public override Task <ODataOutputContext> CreateOutputContextAsync( ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); throw new ODataException(Strings.General_InternalError(InternalErrorCodes.ODataMetadataFormat_CreateOutputContextAsync)); }
public CsvOutputContext( ODataFormat format, ODataMessageWriterSettings settings, ODataMessageInfo messageInfo, bool synchronous) : base(format, settings, messageInfo.IsResponse, synchronous, messageInfo.Model, messageInfo.UrlResolver) { this.stream = messageInfo.GetMessageStream(); this.Writer = new StreamWriter(this.stream); }
public override System.Threading.Tasks.Task<ODataInputContext> CreateInputContextAsync(ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings) { return messageInfo.GetMessageStreamAsync() .ContinueWith( (streamTask) => (ODataInputContext) new VCardInputContext( this, streamTask.Result, messageInfo.MediaType, messageInfo.Encoding, messageReaderSettings, messageInfo.IsResponse, /*sync*/ false, messageInfo.Model, messageInfo.UrlResolver), TaskContinuationOptions.NotOnFaulted); }
/// <summary> /// Asynchronously detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>A task that when completed returns the set of <see cref="ODataPayloadKind"/>s /// that are supported with the specified payload.</returns> public override Task <IEnumerable <ODataPayloadKind> > DetectPayloadKindAsync( ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); return(messageInfo.IsResponse ? messageInfo.GetMessageStreamAsync() .FollowOnSuccessWith(streamTask => DetectPayloadKindImplementation( streamTask.Result, new ODataPayloadKindDetectionInfo( messageInfo.MediaType, messageInfo.Encoding, settings, messageInfo.Model))) : TaskUtils.GetCompletedTask(Enumerable.Empty <ODataPayloadKind>())); }
/// <summary> /// Detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>The set of <see cref="ODataPayloadKind"/>s that are supported with the specified payload.</returns> public override IEnumerable <ODataPayloadKind> DetectPayloadKind( ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); // Metadata is not supported in requests! return(messageInfo.IsResponse ? DetectPayloadKindImplementation( messageInfo.GetMessageStream(), new ODataPayloadKindDetectionInfo( messageInfo.MediaType, messageInfo.Encoding, settings, messageInfo.Model)) : Enumerable.Empty <ODataPayloadKind>()); }
/// <summary> /// Detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>The set of <see cref="ODataPayloadKind"/>s that are supported with the specified payload.</returns> public override IEnumerable<ODataPayloadKind> DetectPayloadKind( ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); // Metadata is not supported in requests! return messageInfo.IsResponse ? DetectPayloadKindImplementation( messageInfo.GetMessageStream(), new ODataPayloadKindDetectionInfo( messageInfo.MediaType, messageInfo.Encoding, settings, messageInfo.Model)) : Enumerable.Empty<ODataPayloadKind>(); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>The newly created output context.</returns> public override ODataOutputContext CreateOutputContext( ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); return(new ODataRawOutputContext( this, messageInfo.GetMessageStream(), messageInfo.Encoding, messageWriterSettings, messageInfo.IsResponse, /*synchronous*/ true, messageInfo.Model, messageInfo.UrlResolver)); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>The newly created output context.</returns> public override ODataOutputContext CreateOutputContext( ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); return new ODataRawOutputContext( this, messageInfo.GetMessageStream(), messageInfo.Encoding, messageWriterSettings, messageInfo.IsResponse, /*synchronous*/ true, messageInfo.Model, messageInfo.UrlResolver); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>Task which represents the pending create operation.</returns> public override Task <ODataOutputContext> CreateOutputContextAsync( ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); return(messageInfo.GetMessageStreamAsync() .FollowOnSuccessWith( (streamTask) => (ODataOutputContext) new ODataRawOutputContext( this, streamTask.Result, messageInfo.Encoding, messageWriterSettings, messageInfo.IsResponse, /*synchronous*/ false, messageInfo.Model, messageInfo.UrlResolver))); }
/// <summary> /// Asynchronously detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>A task that when completed returns the set of <see cref="ODataPayloadKind"/>s /// that are supported with the specified payload.</returns> /// <remarks> /// The stream returned by GetMessageStream of <paramref name="messageInfo"/> could be used for reading for /// payload kind detection. Reading this stream won't affect later reading operations of payload processing. /// </remarks> public abstract Task<IEnumerable<ODataPayloadKind>> DetectPayloadKindAsync(ODataMessageInfo messageInfo, ODataMessageReaderSettings settings);
public override System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<ODataPayloadKind>> DetectPayloadKindAsync(ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { throw new System.NotImplementedException(); }
public override ODataInputContext CreateInputContext(ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings) { throw new System.NotImplementedException(); }
/// <summary> /// Asynchronously creates an instance of the input context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageReaderSettings">Configuration settings of the OData reader.</param> /// <returns>Task which when completed returned the newly created input context.</returns> public abstract Task <ODataInputContext> CreateInputContextAsync(ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings);
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>The newly created output context.</returns> public abstract ODataOutputContext CreateOutputContext(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings);
/// <summary> /// Detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>The set of <see cref="ODataPayloadKind"/>s that are supported with the specified payload.</returns> /// <remarks> /// The stream returned by GetMessageStream of <paramref name="messageInfo"/> could be used for reading for /// payload kind detection. Reading this stream won't affect later reading operations of payload processing. /// </remarks> public abstract IEnumerable <ODataPayloadKind> DetectPayloadKind(ODataMessageInfo messageInfo, ODataMessageReaderSettings settings);
/// <summary> /// Creates an instance of the input context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageReaderSettings">Configuration settings of the OData reader.</param> /// <returns>The newly created input context.</returns> public abstract ODataInputContext CreateInputContext(ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings);
public override ODataOutputContext CreateOutputContext(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { return new VCardOutputContext(this, messageInfo.GetMessageStream(), messageInfo.Encoding, messageWriterSettings, messageInfo.IsResponse, true, messageInfo.Model, messageInfo.UrlResolver); }
public override ODataInputContext CreateInputContext(ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings) { return new VCardInputContext(this, messageInfo.GetMessageStream(), messageInfo.MediaType, messageInfo.Encoding, messageReaderSettings, messageInfo.IsResponse, true, messageInfo.Model, messageInfo.UrlResolver); }
public override IEnumerable<ODataPayloadKind> DetectPayloadKind(ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { throw new System.NotImplementedException(); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>Task which represents the pending create operation.</returns> public abstract Task<ODataOutputContext> CreateOutputContextAsync(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings);
/// <summary> /// Asynchronously creates an instance of the input context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageReaderSettings">Configuration settings of the OData reader.</param> /// <returns>Task which when completed returned the newly created input context.</returns> public abstract Task<ODataInputContext> CreateInputContextAsync(ODataMessageInfo messageInfo, ODataMessageReaderSettings messageReaderSettings);
/// <summary> /// Asynchronously detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>A task that when completed returns the set of <see cref="ODataPayloadKind"/>s /// that are supported with the specified payload.</returns> public override Task<IEnumerable<ODataPayloadKind>> DetectPayloadKindAsync( ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); return messageInfo.IsResponse ? messageInfo.GetMessageStreamAsync() .FollowOnSuccessWith(streamTask => DetectPayloadKindImplementation( streamTask.Result, new ODataPayloadKindDetectionInfo( messageInfo.MediaType, messageInfo.Encoding, settings, messageInfo.Model))) : TaskUtils.GetCompletedTask(Enumerable.Empty<ODataPayloadKind>()); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>Task which represents the pending create operation.</returns> public override Task<ODataOutputContext> CreateOutputContextAsync( ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); throw new ODataException(Strings.General_InternalError(InternalErrorCodes.ODataMetadataFormat_CreateOutputContextAsync)); }
/// <summary> /// Detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>The set of <see cref="ODataPayloadKind"/>s that are supported with the specified payload.</returns> /// <remarks> /// The stream returned by GetMessageStream of <paramref name="messageInfo"/> could be used for reading for /// payload kind detection. Reading this stream won't affect later reading operations of payload processing. /// </remarks> public abstract IEnumerable<ODataPayloadKind> DetectPayloadKind(ODataMessageInfo messageInfo, ODataMessageReaderSettings settings);
/// <summary> /// Asynchronously detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>A task that when completed returns the set of <see cref="ODataPayloadKind"/>s /// that are supported with the specified payload.</returns> /// <remarks> /// The stream returned by GetMessageStream of <paramref name="messageInfo"/> could be used for reading for /// payload kind detection. Reading this stream won't affect later reading operations of payload processing. /// </remarks> public abstract Task <IEnumerable <ODataPayloadKind> > DetectPayloadKindAsync(ODataMessageInfo messageInfo, ODataMessageReaderSettings settings);
/// <summary> /// Asynchronously detects the payload kinds supported by this format for the specified message payload. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="settings">Configuration settings of the OData reader.</param> /// <returns>A task that when completed returns the set of <see cref="ODataPayloadKind"/>s /// that are supported with the specified payload.</returns> public override Task<IEnumerable<ODataPayloadKind>> DetectPayloadKindAsync( ODataMessageInfo messageInfo, ODataMessageReaderSettings settings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); return TaskUtils.GetTaskForSynchronousOperation(() => DetectPayloadKindImplementation(messageInfo.MediaType)); }
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>Task which represents the pending create operation.</returns> public abstract Task <ODataOutputContext> CreateOutputContextAsync(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings);
/// <summary> /// Creates an instance of the output context for this format. /// </summary> /// <param name="messageInfo">The context information for the message.</param> /// <param name="messageWriterSettings">Configuration settings of the OData writer.</param> /// <returns>Task which represents the pending create operation.</returns> public override Task<ODataOutputContext> CreateOutputContextAsync( ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { ExceptionUtils.CheckArgumentNotNull(messageInfo, "messageInfo"); ExceptionUtils.CheckArgumentNotNull(messageWriterSettings, "messageWriterSettings"); return messageInfo.GetMessageStreamAsync() .FollowOnSuccessWith( (streamTask) => (ODataOutputContext)new ODataRawOutputContext( this, streamTask.Result, messageInfo.Encoding, messageWriterSettings, messageInfo.IsResponse, /*synchronous*/ false, messageInfo.Model, messageInfo.UrlResolver)); }
public override System.Threading.Tasks.Task<ODataOutputContext> CreateOutputContextAsync(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { throw new System.NotImplementedException(); }
public override ODataOutputContext CreateOutputContext(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { throw new NotImplementedException(); }
public override ODataOutputContext CreateOutputContext(ODataMessageInfo messageInfo, ODataMessageWriterSettings messageWriterSettings) { return new CsvOutputContext(this, messageWriterSettings, messageInfo, synchronous: true); }