remove tryExecute and call listener on reject instead