Javadoc
Should be called in the case isSetUp() returned false.
In this case client should call setUp and check return value;
if it returns true, record can be selected, otherewise it can not.
Setup can take a while; however it's natural to call this method from UI thread.
Implementor carries a responsibility of displaying a modal message dialog
and giving user ability to cancel (in which case the function should return false)