// 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
{
public interface ICacheKeyProvider
{
///
/// Create a base key for storing items.
///
/// The .
/// The created base key.
string CreateStorageBaseKey(ResponseCachingContext context);
///
/// Create one or more base keys for looking up items.
///
/// The .
/// An ordered containing the base keys to try when looking up items.
IEnumerable CreateLookupBaseKeys(ResponseCachingContext context);
///
/// Create a vary key for storing items.
///
/// The .
/// The created vary key.
string CreateStorageVaryKey(ResponseCachingContext context);
///
/// Create one or more vary keys for looking up items.
///
/// The .
/// An ordered containing the vary keys to try when looking up items.
IEnumerable CreateLookupVaryKeys(ResponseCachingContext context);
}
}