Tim Van Wassenhove home

A while ago i presented the EffectivityManager. Having used this class for a while i have decided to rename it to Temporal. The implementation of IList is not required anymore because a user is typically only interested in a specific effectivity, not the evolution of the effectivities.

public interface ITemporal<T>
{
	void Modify(T element, DateTime from);
	IEffectivity<T> GetSnapshot(DateTime validityDate);
	bool TryGetSnapshot(DateTime validityDate, out IEffectivity<T> effectivity);
}

In the implementation i have added a constructor that accepts a [DiscreteValuesGenerator](http://www.timvw.be/presenting-a-generic-discreterange/) which makes it possible to create Periods with a resolution of a day instead of seconds.