using System;
using System.Net;
using System.Threading.Tasks;
namespace EmbedIO.Security
{
///
/// Represents a criterion for .
///
public interface IIPBanningCriterion : IDisposable
{
///
/// Validates the IP address should be banned or not.
///
/// The address.
/// true if the IP Address should be banned, otherwise false.
Task ValidateIPAddress(IPAddress address);
///
/// Clears the data generated by an IP address.
///
/// The address.
void ClearIPAddress(IPAddress address);
///
/// Purges the data of the Criterion.
///
void PurgeData();
}
}