// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System.Threading.Tasks;
namespace Microsoft.AspNet.Mvc
{
///
/// Reads an object from the request body.
///
public interface IInputFormatter
{
///
/// Determines whether this can de-serialize
/// an object of the specified type.
///
/// Input formatter context associated with this call.
/// True if this supports the passed in
/// request's content-type and is able to de-serialize the request body.
/// False otherwise.
bool CanRead(InputFormatterContext context);
///
/// Called during deserialization to read an object from the request.
///
/// Input formatter context associated with this call.
/// A task that deserializes the request body.
Task