public Categories GetCategories()
{
lock (_categoryLock)
{
if (_categories != null)
{
return _categories;
}
var filename = CreateFilenameForCategory();
_categories = _categoriesDataAccess.LoadCategories(filename);
if (_categories == null)
{
RetrieveCategories();
}
return _categories;
}
}