even though the javadocs say onFinish of IsuiteListener should execute once per all the suites run but i saw it getting executed multiple times. so i used IExecutionListener. below is the code i used.
public class MyReporter implements IExecutionListener {
@Override
public void onExecutionStart() {
}
@Override
public void onExecutionFinish() {
ReportDownloadUtil.downloadReport();
}
}