UploadStatusInfoWindow(
      final UIEventBus eventBus, final ArtifactUploadState artifactUploadState, final I18N i18n) {
    this.eventBus = eventBus;
    this.artifactUploadState = artifactUploadState;
    this.i18n = i18n;

    setPopupProperties();
    createStatusPopupHeaderComponents();

    mainLayout = new VerticalLayout();
    mainLayout.setSpacing(Boolean.TRUE);
    mainLayout.setSizeUndefined();
    setPopupSizeInMinMode();

    uploads = getGridContainer();
    grid = createGrid();
    setGridColumnProperties();

    mainLayout.addComponents(getCaptionLayout(), grid);
    mainLayout.setExpandRatio(grid, 1.0F);
    setContent(mainLayout);
    eventBus.subscribe(this);
    ui = UI.getCurrent();

    createConfirmDialog();
  }
  public TargetFilterTable(
      final I18N i18n,
      final UINotification notification,
      final UIEventBus eventBus,
      final FilterManagementUIState filterManagementUIState,
      final TargetFilterQueryManagement targetFilterQueryManagement,
      final ManageDistUIState manageDistUIState,
      final TargetManagement targetManagement) {
    this.i18n = i18n;
    this.notification = notification;
    this.eventBus = eventBus;
    this.filterManagementUIState = filterManagementUIState;
    this.targetFilterQueryManagement = targetFilterQueryManagement;
    this.dsSelectWindow =
        new DistributionSetSelectWindow(
            i18n, eventBus, targetManagement, targetFilterQueryManagement, manageDistUIState);

    setStyleName("sp-table");
    setSizeFull();
    setImmediate(true);
    setHeight(100.0F, Unit.PERCENTAGE);
    addStyleName(ValoTheme.TABLE_NO_VERTICAL_LINES);
    addStyleName(ValoTheme.TABLE_SMALL);
    addCustomGeneratedColumns();
    populateTableData();
    setColumnCollapsingAllowed(true);
    setColumnProperties();
    setId(UIComponentIdProvider.TARGET_FILTER_TABLE_ID);
    eventBus.subscribe(this);
  }
  public CountMessageLabel(
      final UIEventBus eventBus,
      final TargetManagement targetManagement,
      final I18N i18n,
      final ManagementUIState managementUIState,
      final TargetTable targetTable) {
    this.targetManagement = targetManagement;
    this.i18n = i18n;
    this.managementUIState = managementUIState;
    this.targetTable = targetTable;

    applyStyle();
    eventBus.subscribe(this);
  }