// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Microsoft.AspNetCore.Http
{
///
/// Provides methods to create middlware.
///
public interface IMiddlewareFactory
{
///
/// Creates a middleware instance for each request.
///
/// The concrete of the .
/// The instance.
IMiddleware Create(Type middlewareType);
///
/// Releases a instance at the end of each request.
///
/// The instance to release.
void Release(IMiddleware middleware);
}
}