public void startStreaming(FileDetailBean fileDetailBean) {
    this.fileDetailBean = fileDetailBean;
    pi.setValue(0f);
    pi.setVisible(true);
    textualProgress.setVisible(true);
    setFileName(fileDetailBean.getFileName());

    Button newCancelBtn = createNewCancelButton();
    cancelLayout.replaceComponent(cancelButton, newCancelBtn);
    cancelButton = newCancelBtn;
    cancelButton.addStyleName(CANCEL_BUTTON_STYLE_CLASS);
  }
  private void initForm() {
    layout = new VerticalLayout();
    addComponent(layout);

    layout.addComponent(fileName);

    pi.setVisible(false);
    pi.setWidth(100, Unit.PERCENTAGE);
    layout.addComponent(pi);

    textualProgress.setVisible(false);

    cancelLayout = new HorizontalLayout();
    cancelLayout.addStyleName(CANCEL_BUTTON_LAYOUT_STYLE_CLASS);
    cancelLayout.setWidth(100, Unit.PERCENTAGE);
    cancelLayout.addComponent(textualProgress);
    cancelButton = new Button();
    cancelLayout.addComponent(cancelButton);
    cancelLayout.setComponentAlignment(cancelButton, Alignment.TOP_RIGHT);
    layout.addComponent(cancelLayout);
  }