Is there ever a chance this will get called more than once?  If it succeeded the first time, then it will return true here.   If it did get an answer from a previous call, should that be cached and returned?  If not, why return self.success without setting it?