// 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.Collections.Generic;
namespace Microsoft.AspNetCore.ResponseCaching.Internal
{
public interface IResponseCachingKeyProvider
{
///
/// Create a base key for a response cache entry.
///
/// The .
/// The created base key.
string CreateBaseKey(ResponseCachingContext context);
///
/// Create a vary key for storing cached responses.
///
/// The .
/// The created vary key.
string CreateStorageVaryByKey(ResponseCachingContext context);
///
/// Create one or more vary keys for looking up cached responses.
///
/// The .
/// An ordered containing the vary keys to try when looking up items.
IEnumerable CreateLookupVaryByKeys(ResponseCachingContext context);
}
}