/**
   * Add a new data access controller, and set it foreground status
   *
   * @param controller data access controller
   * @param foreground foreground status
   */
  public final synchronized void addDataAccessController(
      DataAccessController controller, boolean foreground) {
    // initialize summary report model
    getSummaryReportModel(controller);

    // set left control panel to visible
    setLeftControlPaneVisible(true);

    dataAccessMonitor.addDataAccessController(controller, foreground);
  }