@Override public void run() { Runnable task = new Runnable() { @Override public void run() { doSearch(config.getCoronataObserver()); } }; if (config.isSynchronous()) task.run(); else new Thread(task).start(); }