I don't think we gain anything from combining the initialization with the runtime calculation.  I would suggest putting the initialization into the OnAppInit and having this be a simple calculation that can assume it is already initialized.