protected override void Calculate() { var cachedProperty = GetFromCache(); if (cachedProperty != null) { value = cachedProperty.Value; return; } value = new NumberOfMapReadings(Session, ParameterizedLocation.Start, Location, RetrieveExternalProperty).Value; AddToCache(); }