public Period(Frequency f)
{
switch (f)
{
case Frequency.NoFrequency:
_timeUnit = TimeUnit.Days;
_length = 0;
break;
case Frequency.Once:
_timeUnit = TimeUnit.Years;
_length = 0;
break;
case Frequency.Annual:
_timeUnit = TimeUnit.Years;
_length = 1;
break;
case Frequency.Semiannual:
case Frequency.EveryFourthMonth:
case Frequency.Quarterly:
case Frequency.Bimonthly:
case Frequency.Monthly:
_timeUnit = TimeUnit.Months;
_length = 12 / (int)f;
break;
case Frequency.EveryFourthWeek:
case Frequency.Biweekly:
case Frequency.Weekly:
_timeUnit = TimeUnit.Weeks;
_length = 52 / (int)f;
break;
case Frequency.Daily:
_timeUnit = TimeUnit.Days;
_length = 1;
break;
default:
throw new ApplicationException(UnknownFrequency);
}
}