* Run the harvester in the synchronously (in the current thread) and return whether the harvest correctly completed.
*
* @return {@link OperResult#OK} or {@link OperResult#ERROR}
*/
public synchronized OperResult invoke() {
Status oldStatus = status;
try {
status = Status.ACTIVE;
return harvest();
} finally {