code: public HandlerRegistration addReportFinishedHandler(final Runnable handler) {
  
          m_reportFinishedHandlers.add(handler);
          return new HandlerRegistration() {
  
              @SuppressWarnings("synthetic-access")
              public void removeHandler() {
  
                  m_reportFinishedHandlers.remove(handler);
              }
          };
      }
docs: Adds an action that should be executed if the report is finished.<p>
  
  Note that this action will only be called if the report is finished while the report widget is actually
  displayed. For example, if the user closes the browser window before the report is finished, this will not be executed.
  
  @param handler the handler
  @return the handler registration