private void initComponents() {
    setSpacing(true);
    HorizontalLayout layout = new HorizontalLayout();
    layout.setSpacing(true);
    layout.setWidth("100%");
    cardNuberField = new TextField();
    cardNuberField.setWidth("100%");
    cardNuberField.setInputPrompt("Ноомер социальной карты, либо e-mail");
    layout.addComponent(cardNuberField);
    layout.setComponentAlignment(cardNuberField, Alignment.MIDDLE_RIGHT);
    layout.setExpandRatio(cardNuberField, 1.0f);
    addComponent(layout);

    layout = new HorizontalLayout();
    layout.setSpacing(true);
    layout.setWidth("100%");
    checkwordField = new TextField();
    checkwordField.setWidth("100%");
    checkwordField.setInputPrompt("Проверочное слово");
    layout.addComponent(checkwordField);
    layout.setComponentAlignment(checkwordField, Alignment.MIDDLE_RIGHT);
    layout.setExpandRatio(checkwordField, 1.0f);
    addComponent(layout);

    Button btnSearch = new Button("Найти");
    btnSearch.addClickListener(getSearchClickListener());
    addComponent(btnSearch);
  }
Ejemplo n.º 2
0
  public UserSelect() {
    loginInfo = new Label("");
    loginInfo.addStyleName("error-font");
    loginInfo.addStyleName("margin15");
    loginInfo.addStyleName("margin-top40");
    loginInfo.setVisible(false);
    selected = null;
    loginField = new PasswordField("");
    loginField.setWidth("200px");
    loginField.addStyleName("margin15");
    loginField.addStyleName("margin-bot40");
    loginBut = new Button("login");
    loginBut.addStyleName("margin15");
    loginBut.addClickListener(
        e -> {
          if (loginField.getValue().equals(selected.getPassword())) {
            hidePass();
            Globals.user = selected;
            Globals.root.changeScreen(Globals.user);
          } else {
            loginInfo.setVisible(true);
            loginInfo.setValue("Wrong password");
            loginField.setValue("");
          }
        });

    loginBox = new HorizontalLayout();
    loginBox.addStyleName("popup-box");
    loginBox.addComponents(loginField, loginBut, loginInfo);
    loginBox.setComponentAlignment(loginField, Alignment.MIDDLE_LEFT);
    loginBox.setComponentAlignment(loginBut, Alignment.MIDDLE_CENTER);
    loginBox.setComponentAlignment(loginField, Alignment.MIDDLE_RIGHT);
    loginBox.setVisible(false);
    userIcon = new ThemeResource("icons/user.png");
    users = Globals.control.usersData();
    vbox = new VerticalLayout();
    // vbox.setSizeUndefined();
    vbox.setDefaultComponentAlignment(Alignment.MIDDLE_CENTER);
    Panel p = new Panel();
    p.setSizeFull();

    p.setContent(vbox);
    // vbox.addStyleName("border-l-r");
    this.addComponent(p, "left: 25%; right: 25%; top: 15px");
    this.addComponent(loginBox, "left: 25%; right: 25%; top: 40%");

    this.addLayoutClickListener(
        e -> {
          if (!loginBox.isVisible()) return;
          System.out.println(e.getClickedComponent());
          if (e.getClickedComponent() == null || e.getClickedComponent().equals(vbox)) hidePass();
        });
  }
Ejemplo n.º 3
0
 private Layout createTextFieldMail(String title, Component component) {
   HorizontalLayout layout = new HorizontalLayout();
   Label lbTitle = new Label(title);
   lbTitle.setWidth("60px");
   lbTitle.setStyleName("lbmail");
   layout.addComponent(lbTitle);
   layout.setComponentAlignment(lbTitle, Alignment.MIDDLE_RIGHT);
   layout.addComponent(component);
   layout.setComponentAlignment(component, Alignment.MIDDLE_LEFT);
   layout.setWidth("100%");
   layout.setExpandRatio(component, 1.0f);
   return layout;
 }
Ejemplo n.º 4
0
  private com.vaadin.ui.Component buildFields() {
    HorizontalLayout fields = new HorizontalLayout();
    fields.setSpacing(true);
    fields.addStyleName("fields");

    final TextField username = new TextField("Username");
    username.setIcon(FontAwesome.USER);
    username.addStyleName(ValoTheme.TEXTFIELD_INLINE_ICON);

    final PasswordField password = new PasswordField("Password");
    password.setIcon(FontAwesome.LOCK);
    password.addStyleName(ValoTheme.TEXTFIELD_INLINE_ICON);

    final Button signin = new Button("Sign In");
    signin.addStyleName(ValoTheme.BUTTON_PRIMARY);
    signin.setClickShortcut(ShortcutAction.KeyCode.ENTER);
    signin.focus();

    fields.addComponents(username, password, signin);
    fields.setComponentAlignment(signin, Alignment.BOTTOM_LEFT);

    signin.addClickListener(
        new Button.ClickListener() {
          @Override
          public void buttonClick(final Button.ClickEvent event) {
            DashboardEventBus.post(
                new UserLoginRequestedEvent(username.getValue(), password.getValue()));
          }
        });
    return fields;
  }
  private Component buildFooter() {
    HorizontalLayout footer = new HorizontalLayout();
    footer.addStyleName(ValoTheme.WINDOW_BOTTOM_TOOLBAR);
    footer.setWidth(100.0f, Unit.PERCENTAGE);

    Button ok = new Button("OK");
    ok.addStyleName(ValoTheme.BUTTON_PRIMARY);
    ok.addClickListener(
        event -> {
          try {
            fieldGroup.commit();
            // Updated user should also be persisted to database. But
            // not in this demo.

            Notification success = new Notification("Profile updated successfully");
            success.setDelayMsec(2000);
            success.setStyleName("bar success small");
            success.setPosition(Position.BOTTOM_CENTER);
            success.show(Page.getCurrent());

            //                    DashboardEventBus.post(new ProfileUpdatedEvent());
            close();
          } catch (CommitException e) {
            Notification.show("Error while updating profile", Type.ERROR_MESSAGE);
          }
        });
    ok.focus();
    footer.addComponent(ok);
    footer.setComponentAlignment(ok, Alignment.TOP_RIGHT);
    return footer;
  }
  public TableEditorWindow(final Table table, final Object value, Object... dates) {

    for (Object o : dates) dates2.add(o);
    VerticalLayout content = new VerticalLayout();
    Object[] columns = table.getVisibleColumns();
    String[] headers = table.getColumnHeaders();
    int n = columns.length;

    for (int i = 0; i < n; ++i) {
      HorizontalLayout lay = new HorizontalLayout();
      Label l = new Label(headers[i]);
      lay.addComponent(l);
      Component field = dates2.contains(columns[i]) ? new DateField() : new TextField();

      lay.addComponent(field);
      map.put(columns[i], field);
      content.addComponent(lay);
      lay.setComponentAlignment(l, Alignment.MIDDLE_LEFT);
      lay.setComponentAlignment(field, Alignment.MIDDLE_RIGHT);
    }

    if (value != null) {
      Item item = table.getItem(value);
      for (Object o : columns) {
        Object val = item.getItemProperty(o).getValue();
        if (dates2.contains(o)) {
          ((DateField) map.get(o)).setValue((Date) val);
        } else {
          ((TextField) map.get(o)).setValue(val.toString());
        }
      }
    }

    save = new Button("Записать");
    content.addComponent(save);
    save.addClickListener(
        new Button.ClickListener() {
          @Override
          public void buttonClick(Button.ClickEvent clickEvent) {
            if (actionPerformed()) close();
          }
        });

    setContent(content);
  }
Ejemplo n.º 7
0
  public SubsEditViewImpl() {
    ButtonRenderer deleteButton = createDeleteButton();
    Slider percentSlider = createPercentSlider();
    MultiFileUpload uploader = createUploader();

    // need to update the grid a first time for initialization.
    updateGrid(null);
    grid.getColumn("delete").setRenderer(deleteButton);
    fileDownloader = new FileDownloader(generateResource());
    fileDownloader.extend(downloadButton);

    // create the main layout
    VerticalLayout content = new VerticalLayout();

    // layout which contains the uploader and the percentage - in other words : all the
    // configuration information
    HorizontalLayout configHorizontalLayout = new HorizontalLayout();
    configHorizontalLayout.addComponent(uploader);

    // Configure the layout which contains the percentage slider
    AbsoluteLayout sliderLayout = new AbsoluteLayout();
    sliderLayout.setWidth("100px");
    sliderLayout.setHeight("35px");
    sliderLayout.addComponent(percentSlider);

    // Configure the layout which contains the percentage slider layout and the labels linked to the
    // percentage
    HorizontalLayout percentageLayout = new HorizontalLayout();
    percentageLayout.addComponent(percentSliderTitle);
    percentageLayout.addComponent(sliderLayout);
    percentageLayout.addComponent(percentLabel);
    percentageLayout.setComponentAlignment(percentSliderTitle, Alignment.MIDDLE_LEFT);
    percentageLayout.setComponentAlignment(percentLabel, Alignment.MIDDLE_LEFT);

    // add the percentage Layout to the layout which contains the uploader
    configHorizontalLayout.addComponent(percentageLayout);
    configHorizontalLayout.setComponentAlignment(percentageLayout, Alignment.BOTTOM_LEFT);

    // add every layouts to the principal one
    content.addComponent(configHorizontalLayout);
    content.addComponent(new Label("&nbsp;", Label.CONTENT_XHTML));
    content.addComponents(grid);
    content.addComponent(downloadButton);
    setCompositionRoot(content);
  }
Ejemplo n.º 8
0
 private Layout createButtonControls() {
   final HorizontalLayout controlPanel = new HorizontalLayout();
   final Layout controlButtons =
       (new EditFormControlsGenerator<>(editUserForm)).createButtonControls();
   controlButtons.setSizeUndefined();
   controlPanel.addComponent(controlButtons);
   controlPanel.setComponentAlignment(controlButtons, Alignment.MIDDLE_CENTER);
   return controlPanel;
 }
Ejemplo n.º 9
0
  private void init() {
    VerticalLayout root = new VerticalLayout();

    header = new HorizontalLayout();

    tituloLbl.setStyleName("titlePanel");
    header.addComponent(tituloLbl);
    headerLayout = new HorizontalLayout();
    header.addComponent(headerLayout);

    header.setComponentAlignment(headerLayout, Alignment.MIDDLE_RIGHT);

    header.setStyleName("headerPanel");
    header.setWidth("100%");
    header.setHeight("50px");

    body = new VerticalLayout();
    body.setStyleName("bodyPanel");
    body.setWidth("100%");

    footer = new HorizontalLayout();
    footer.setStyleName("footerPanel");
    footerLayout = new HorizontalLayout();
    footer.addComponent(footerLayout);
    footer.setComponentAlignment(footerLayout, Alignment.MIDDLE_CENTER);

    footer.setWidth("100%");
    footer.setHeight("60px");

    root.addComponent(header);
    root.addComponent(body);
    root.addComponent(footer);

    root.setWidth("100%");

    setCompositionRoot(root);
  }
Ejemplo n.º 10
0
  // Private methods -----------------------------------------------------------
  private void createComponent(String labelWidth, String labelCompSpace) {
    HorizontalLayout hl = (HorizontalLayout) viewContents;

    // Label
    Label label = new Label(componentLabel);
    label.setWidth(labelWidth);
    label.addStyleName("small");
    label.addStyleName("catTextAlignRight");
    hl.addComponent(label);
    hl.setComponentAlignment(label, Alignment.MIDDLE_LEFT);

    // Space
    hl.addComponent(UILayoutUtil.createSpace(labelCompSpace, null, true));

    // Component
    hl.addComponent(component);
    hl.setExpandRatio(component, 1.0f);
    hl.setComponentAlignment(component, Alignment.MIDDLE_CENTER);

    // Tail space
    hl.addComponent(UILayoutUtil.createSpace("2px", null, true));

    hl.setComponentAlignment(label, Alignment.MIDDLE_RIGHT);
  }
  private Component createConnectionSelectorLayout() {
    final ProfileInfoPanelHolder infoPanelHolder = new ProfileInfoPanelHolder();
    profileSelector = createProfileSelector(infoPanelHolder);
    HorizontalLayout content = new HorizontalLayout(profileSelector, infoPanelHolder);
    content.setSizeFull();
    content.setExpandRatio(infoPanelHolder, 1);

    Component buttons = createConnectionButtons(infoPanelHolder);
    Component profileManagerToolbar = createProfileManagerToolbar(profileSelector);

    HorizontalLayout footer = new HorizontalLayout(profileManagerToolbar, buttons);
    footer.setWidth("100%");
    footer.addStyleName(ValoTheme.WINDOW_BOTTOM_TOOLBAR);
    footer.setComponentAlignment(buttons, Alignment.MIDDLE_RIGHT);

    VerticalLayout layout = new VerticalLayout(content, footer);
    layout.setSizeFull();
    layout.setExpandRatio(content, 1);

    return layout;
  }
Ejemplo n.º 12
0
    private Layout createBottomPanel() {
      final HorizontalLayout controlPanel = new HorizontalLayout();
      controlPanel.setMargin(true);
      controlPanel.setStyleName("more-info");
      controlPanel.setHeight("40px");
      controlPanel.setWidth("100%");
      Button moreInfoBtn =
          new Button(
              "More information...",
              new Button.ClickListener() {
                private static final long serialVersionUID = 1L;

                @Override
                public void buttonClick(ClickEvent event) {
                  editUserForm.displayAdvancedForm(user);
                }
              });
      moreInfoBtn.addStyleName(UIConstants.THEME_LINK);
      controlPanel.addComponent(moreInfoBtn);
      controlPanel.setComponentAlignment(moreInfoBtn, Alignment.MIDDLE_LEFT);
      return controlPanel;
    }
Ejemplo n.º 13
0
  @Override
  public void init() {
    Window mainWindow = new Window("Test Application");
    Form form = new Form();
    form.setCaption("Form Caption");
    form.setDescription(
        "This is a description of the Form that is "
            + "displayed in the upper part of the form. You normally "
            + "enter some descriptive text about the form and its "
            + "use here.");
    // Add a field and bind it to an named item property.
    form.addField("nom", new TextField("Nom"));
    form.addField("prenom", new TextField("Prenom"));
    form.addField("age", new TextField("Age"));
    // Set the footer layout.
    form.setFooter(new VerticalLayout());

    form.getFooter()
        .addComponent(
            new Label(
                "This is the footer area of the Form. "
                    + "You can use any layout here. "
                    + "This is nice for buttons."));

    // Have a button bar in the footer.
    HorizontalLayout okbar = new HorizontalLayout();
    okbar.setHeight("25px");
    form.getFooter().addComponent(okbar);
    Button okbutton = new Button("OK", form, "commit");
    okbutton.addListener(new OkListener(form));
    okbar.addComponent(okbutton);
    okbar.setComponentAlignment(okbutton, Alignment.TOP_RIGHT);
    Button resetbutton = new Button("Reset", form, "discard");
    resetbutton.addListener(new ResetListener(form));
    okbar.addComponent(resetbutton);
    mainWindow.addComponent(form);
    setMainWindow(mainWindow);
  }
Ejemplo n.º 14
0
  @SuppressWarnings({"deprecation", "serial"})
  private void updateComponents(final User user) {
    if (container != null) {
      container.removeAllComponents();
    }
    container = new Panel();
    root = new Panel();
    root.setStyle(Reindeer.PANEL_LIGHT);
    container.setHeight("100%");
    container.setStyle(Reindeer.PANEL_LIGHT);
    setCompositionRoot(container);

    // Create the Form
    newExpForm = new Form();
    newExpForm.setCaption("New Experiment");
    newExpForm.setWriteThrough(false); // we want explicit 'apply'
    newExpForm.setInvalidCommitted(false); // no invalid values in data model
    // Determines which properties are shown, and in which order:
    expNameField = new TextField("Experiment Name:");
    expNameField.setStyle(Reindeer.TEXTFIELD_SMALL);
    expNameField.setRequired(true);
    expNameField.setRequiredError("EXPERIMENT NAME CAN NOT BE EMPTY!");
    expNameField.setWidth("350px");
    expNameField.setMaxLength(70);

    speciesField = new TextField("Species:");
    speciesField.setStyle(Reindeer.TEXTFIELD_SMALL);
    speciesField.setRequired(true);
    speciesField.setRequiredError("EXPERIMENT SPECIES CAN NOT BE EMPTY!");
    speciesField.setWidth("350px");
    speciesField.setMaxLength(70);

    sampleTypeField = new TextField("Sample Type:");
    sampleTypeField.setStyle(Reindeer.TEXTFIELD_SMALL);
    sampleTypeField.setRequired(true);
    sampleTypeField.setRequiredError("EXPERIMENT SAMPLE TYPE CAN NOT BE EMPTY!");
    sampleTypeField.setWidth("350px");
    sampleTypeField.setMaxLength(70);

    sampleProcessingField = new TextField("Sample Processing:");
    sampleProcessingField.setStyle(Reindeer.TEXTFIELD_SMALL);
    sampleProcessingField.setRequired(true);
    sampleProcessingField.setRequiredError("EXPERIMENT SAMPLE PROCESSING CAN NOT BE EMPTY!");
    sampleProcessingField.setWidth("350px");
    sampleProcessingField.setMaxLength(70);

    instrumentTypeField = new TextField("Instrument Type:");
    instrumentTypeField.setStyle(Reindeer.TEXTFIELD_SMALL);
    instrumentTypeField.setRequired(true);
    instrumentTypeField.setRequiredError("EXPERIMENT INSTURMENT TYPE CAN NOT BE EMPTY!");
    instrumentTypeField.setWidth("350px");
    instrumentTypeField.setMaxLength(70);

    fragModeField = new TextField("Frag Mode:");
    fragModeField.setStyle(Reindeer.TEXTFIELD_SMALL);
    fragModeField.setRequired(true);
    fragModeField.setRequiredError("EXPERIMENT FRAG MODE CAN NOT BE EMPTY!");
    fragModeField.setWidth("350px");
    fragModeField.setMaxLength(70);

    UploadedByNameField = new TextField("Uploaded By:");
    UploadedByNameField.setStyle(Reindeer.TEXTFIELD_SMALL);
    UploadedByNameField.setRequired(true);
    UploadedByNameField.setRequiredError("EXPERIMENT UPLOADED BY CAN NOT BE EMPTY!");
    UploadedByNameField.setValue(user.getUsername());
    UploadedByNameField.setEnabled(false);
    UploadedByNameField.setWidth("350px");
    UploadedByNameField.setMaxLength(70);

    emailField = new TextField("Email:");
    emailField.setStyle(Reindeer.TEXTFIELD_SMALL);
    emailField.setRequired(true);
    emailField.setValue(user.getEmail());
    emailField.setEnabled(false);
    emailField.setRequiredError("EXPERIMENT EMAIL CAN NOT BE EMPTY!");
    emailField.setWidth("350px");
    emailField.setMaxLength(70);

    descriptionField = new TextArea("Description:");
    descriptionField.setStyle(Reindeer.TEXTFIELD_SMALL);
    descriptionField.setRequired(true);
    descriptionField.setRequiredError("EXPERIMENT Description CAN NOT BE EMPTY!");
    descriptionField.setWidth("350px");
    descriptionField.setMaxLength(950);

    publicationLinkField = new TextField("Publication Link:");
    publicationLinkField.setStyle(Reindeer.TEXTFIELD_SMALL);
    publicationLinkField.setWidth("350px");
    publicationLinkField.setMaxLength(300);

    newExpForm.addField(Integer.valueOf(1), expNameField);
    newExpForm.addField(Integer.valueOf(2), descriptionField);

    newExpForm.addField(Integer.valueOf(3), speciesField);
    newExpForm.addField(Integer.valueOf(4), sampleTypeField);
    newExpForm.addField(Integer.valueOf(5), sampleProcessingField);
    newExpForm.addField(Integer.valueOf(6), instrumentTypeField);
    newExpForm.addField(Integer.valueOf(7), fragModeField);
    newExpForm.addField(Integer.valueOf(8), UploadedByNameField);
    newExpForm.addField(Integer.valueOf(9), emailField);
    newExpForm.addField(Integer.valueOf(10), publicationLinkField);

    // Add form to layout
    container.addComponent(newExpForm);

    Panel p = new Panel();
    Label l =
        new Label(
            "<h4 style='color:blue'>Or Update Existing Experiments !</h4><h4 style='color:blue'>For New Experiment Please Leave Experiment ID Blank!</h4><h4 style='color:blue'><strong style='color:red'>* </strong> For New Experiment Please Remember to Upload Protein file first!</h4>");
    l.setContentMode(Label.CONTENT_XHTML);
    p.addComponent(l);
    container.addComponent(p);

    // Create the Form
    Form existExpForm = new Form();
    existExpForm.setCaption("Exist Experiments");
    expList = eh.getExperiments(null);
    List<String> strExpList = new ArrayList<String>();
    for (ExperimentBean exp : expList.values()) {
      if (user.getEmail().equalsIgnoreCase("*****@*****.**")
          || exp.getEmail().equalsIgnoreCase(user.getEmail())) {
        String str = exp.getExpId() + "	" + exp.getName() + "	( " + exp.getUploadedByName() + " )";
        strExpList.add(str);
      }
    }
    select = new Select("Experiment ID", strExpList);
    select.setImmediate(true);
    select.addListener(
        new Property.ValueChangeListener() {
          @Override
          public void valueChange(ValueChangeEvent event) {
            Object o = select.getValue();
            if (o != null) {
              String str = select.getValue().toString();
              String[] strArr = str.split("\t");
              int id = (Integer.valueOf(strArr[0]));
              ExperimentBean expDet = expList.get(id);
              if (expDetails != null) {
                expDetails.removeAllComponents();

                if (expDet.getProteinsNumber() == 0) {
                  Label l = new Label("<h4 style='color:red'>1) Protein File is Missing</h4>");
                  l.setContentMode(Label.CONTENT_XHTML);
                  expDetails.addComponent(l);
                } else {
                  Label l = new Label("<h4 style='color:blue'>1) Protein File is Uploaded</h4>");
                  l.setContentMode(Label.CONTENT_XHTML);
                  expDetails.addComponent(l);
                }
                if (expDet.getFractionsNumber() == 0) {
                  Label l = new Label("<h4 style='color:red'>2) Fraction File is Missing</h4>");
                  l.setContentMode(Label.CONTENT_XHTML);
                  expDetails.addComponent(l);
                } else {
                  Label l = new Label("<h4 style='color:blue'>2) Fraction File Uploaded</h4>");
                  l.setContentMode(Label.CONTENT_XHTML);
                  expDetails.addComponent(l);
                }
                //                        if (expDet.getFractionRange() == 0) {
                //                            Label l = new Label("<h4 style='color:red'>3) Fraction
                // Range File is Missing</h4>");
                //                            l.setContentMode(Label.CONTENT_XHTML);
                //                            expDetails.addComponent(l);
                //                        } else {
                //                            Label l = new Label("<h4 style='color:blue'>3)
                // Fraction Range File Uploaded</h4>");
                //                            l.setContentMode(Label.CONTENT_XHTML);
                //                            expDetails.addComponent(l);
                //                        }
                if (expDet.getPeptidesNumber() == 0) {
                  Label l = new Label("<h4 style='color:red'>3) Peptides File is Missing</h4>");
                  l.setContentMode(Label.CONTENT_XHTML);
                  expDetails.addComponent(l);
                } else {
                  Label l = new Label("<h4 style='color:blue'>3) Peptides File Uploaded</h4>");
                  l.setContentMode(Label.CONTENT_XHTML);
                  expDetails.addComponent(l);
                }
              }
            } else {
              expDetails.removeAllComponents();
              Label labelDetails =
                  new Label(
                      "<h4 style='color:red;'>Please Select Experiment To Show the Details.</h4>");
              labelDetails.setContentMode(Label.CONTENT_XHTML);
              expDetails.addComponent(labelDetails);
            }
          }
        });
    select.setWidth("60%");
    existExpForm.addField(Integer.valueOf(1), select);

    // Add form to layout
    VerticalLayout vlo = new VerticalLayout();

    if (hslo != null) {
      vlo.removeComponent(hslo);
    }
    hslo = new HorizontalLayout();
    hslo.setSizeFull();
    hslo.addComponent(existExpForm);
    vlo.addComponent(hslo);
    if (removeExperimentLayout != null) {
      hslo.removeComponent(removeExperimentLayout);
    }
    removeExperimentLayout = this.getRemoveForm(user.getEmail());
    hslo.addComponent(removeExperimentLayout);
    hslo.setComponentAlignment(removeExperimentForm, Alignment.MIDDLE_CENTER);
    vlo.addComponent(hslo);
    container.addComponent(vlo);

    // Create the Upload component.

    upload = new Upload(null, this);
    upload.setStyleName("small");
    upload.setVisible(true);
    upload.setHeight("30px");
    upload.setButtonCaption("ADD / EDIT EXPERIMENT !");

    // *****************************************************
    upload.addListener(
        new Upload.StartedListener() {
          @SuppressWarnings("static-access")
          @Override
          public void uploadStarted(StartedEvent event) {
            try {

              Thread.currentThread().sleep(1000);
              Thread t =
                  new Thread(
                      new Runnable() {
                        @Override
                        public void run() {
                          pi.setVisible(true);
                        }
                      });
              t.start();
              t.join();
            } catch (InterruptedException e) {
            }

            mainTabs.setReadOnly(true);
            subTabs.setReadOnly(true);
          }
        });

    upload.addListener(
        new Upload.FinishedListener() {
          @Override
          public void uploadFinished(FinishedEvent event) {
            pi.setVisible(false);
            mainTabs.setReadOnly(false);
            subTabs.setReadOnly(false);
            file = new File(event.getFilename());
          }
        });

    // ***********************************

    upload.addListener((Upload.SucceededListener) this);
    upload.addListener((Upload.FailedListener) this);
    if (helpNote != null) {
      vlo.removeComponent(helpNote);
    }
    Label label =
        new Label(
            "<h4 style='color:red;'>Please upload proteins file first</h4><h4 style='color:red;'>Please upload proteins files in (.txt) format.</h4><h4 style='color:red;'>Upload fraction range file after upload protein fraction file.</h4><h4 style='color:red;'>Upload fraction range file in (.xlsx) format.</h4>");
    label.setContentMode(Label.CONTENT_XHTML);
    helpNote = help.getHelpNote(label);
    helpNote.setMargin(false, true, true, true);

    vlo.addComponent(upload);
    vlo.addComponent(pi);
    vlo.addComponent(helpNote);
    vlo.setComponentAlignment(helpNote, Alignment.MIDDLE_RIGHT);

    expDetails = new Panel("Experiment Details");
    Label labelDetails =
        new Label("<h4 style='color:red;'>Please Select Experiment To Show the Details.</h4>");
    labelDetails.setContentMode(Label.CONTENT_XHTML);
    expDetails.addComponent(labelDetails);

    vlo.addComponent(expDetails);
    root.addComponent(vlo);
    container.addComponent(root);
  }
Ejemplo n.º 15
0
  private void initUI() {
    GridLayout mainLayout = new GridLayout(1, 5);
    mainLayout.setWidth("100%");
    mainLayout.setMargin(true);
    mainLayout.setSpacing(true);

    CssLayout inputPanel = new CssLayout();
    inputPanel.setWidth("100%");
    inputPanel.setStyleName("mail-panel");

    inputLayout = new GridLayout(3, 4);
    inputLayout.setSpacing(true);
    inputLayout.setWidth("100%");
    inputLayout.setColumnExpandRatio(0, 1.0f);

    inputPanel.addComponent(inputLayout);

    mainLayout.addComponent(inputPanel);

    tokenFieldMailTo = new EmailTokenField();

    inputLayout.addComponent(createTextFieldMail("To:", tokenFieldMailTo), 0, 0);

    if (lstMail != null) {
      for (String mail : lstMail) {
        if (StringUtils.isNotBlank(mail)) {
          if (mail.indexOf("<") > -1) {
            String strMail = mail.substring(mail.indexOf("<") + 1, mail.lastIndexOf(">"));
            if (strMail != null && !strMail.equalsIgnoreCase("null")) {}

          } else {

          }
        }
      }
    }

    final TextField subject = new TextField();
    subject.setRequired(true);
    subject.setWidth("100%");
    subjectField = createTextFieldMail("Subject:", subject);
    inputLayout.addComponent(subjectField, 0, 1);

    initButtonLinkCcBcc();

    ccField = createTextFieldMail("Cc:", tokenFieldMailCc);
    bccField = createTextFieldMail("Bcc:", tokenFieldMailBcc);

    final RichTextArea noteArea = new RichTextArea();
    noteArea.setWidth("100%");
    noteArea.setHeight("200px");
    mainLayout.addComponent(noteArea, 0, 1);
    mainLayout.setComponentAlignment(noteArea, Alignment.MIDDLE_CENTER);

    HorizontalLayout controlsLayout = new HorizontalLayout();
    controlsLayout.setWidth("100%");

    final AttachmentPanel attachments = new AttachmentPanel();
    attachments.setWidth("500px");

    MultiFileUploadExt uploadExt = new MultiFileUploadExt(attachments);
    uploadExt.addComponent(attachments);

    controlsLayout.addComponent(uploadExt);
    controlsLayout.setExpandRatio(uploadExt, 1.0f);

    controlsLayout.setSpacing(true);

    Button cancelBtn =
        new Button(
            AppContext.getMessage(GenericI18Enum.BUTTON_CANCEL),
            new Button.ClickListener() {
              private static final long serialVersionUID = 1L;

              @Override
              public void buttonClick(ClickEvent event) {
                MailFormWindow.this.close();
              }
            });

    cancelBtn.setStyleName(UIConstants.THEME_GRAY_LINK);
    controlsLayout.addComponent(cancelBtn);
    controlsLayout.setComponentAlignment(cancelBtn, Alignment.MIDDLE_RIGHT);

    Button sendBtn =
        new Button(
            "Send",
            new Button.ClickListener() {
              private static final long serialVersionUID = 1L;

              @Override
              public void buttonClick(ClickEvent event) {

                if (tokenFieldMailTo.getListRecipient().size() <= 0
                    || subject.getValue().equals("")) {
                  NotificationUtil.showErrorNotification(
                      "To Email field and Subject field must be not empty! Please fulfil them before sending email.");
                  return;
                }
                if (AppContext.getUser().getEmail() != null
                    && AppContext.getUser().getEmail().length() > 0) {
                  ExtMailService systemMailService =
                      ApplicationContextUtil.getSpringBean(ExtMailService.class);

                  List<File> listFile = attachments.files();
                  List<EmailAttachementSource> emailAttachmentSource = null;
                  if (listFile != null && listFile.size() > 0) {
                    emailAttachmentSource = new ArrayList<>();
                    for (File file : listFile) {
                      emailAttachmentSource.add(new FileEmailAttachmentSource(file));
                    }
                  }

                  systemMailService.sendHTMLMail(
                      AppContext.getUser().getEmail(),
                      AppContext.getUser().getDisplayName(),
                      tokenFieldMailTo.getListRecipient(),
                      tokenFieldMailCc.getListRecipient(),
                      tokenFieldMailBcc.getListRecipient(),
                      subject.getValue().toString(),
                      noteArea.getValue().toString(),
                      emailAttachmentSource);
                  MailFormWindow.this.close();
                } else {
                  NotificationUtil.showErrorNotification(
                      "Your email is empty value, please fulfil it before sending email!");
                }
              }
            });
    sendBtn.setIcon(FontAwesome.SEND);
    sendBtn.setStyleName(UIConstants.BUTTON_ACTION);
    controlsLayout.addComponent(sendBtn);
    controlsLayout.setComponentAlignment(sendBtn, Alignment.MIDDLE_RIGHT);
    mainLayout.addComponent(controlsLayout, 0, 2);

    this.setContent(mainLayout);
  }
Ejemplo n.º 16
0
  /** @param el */
  public BookImage(Books el, String user) {
    super();
    this.Book = el;

    this.setStyleName("cells");
    this.setHeight("250px");
    this.setWidth("200px");

    rating.setAnimated(true);
    rating.setCaption(null);
    rating.setMaxValue(5);
    rating.setStyleName("rating");
    rating.setReadOnly(true);

    rating_my.setAnimated(true);
    rating_my.setCaption(null);
    rating_my.setMaxValue(5);
    rating_my.setStyleName("rating_my");

    IRaitingService iRaitingService = new IRaitingService();
    try {
      double rate = iRaitingService.getRaiting(el.getId());
      rating.setReadOnly(false);
      rating.setValue(rate);
      rating.setReadOnly(true);
      double myrate = iRaitingService.getRaiting(user, el.getId());
      rating_my.setValue(myrate);
    } catch (SQLException e) {
      e.printStackTrace();
    }

    rating_my.addValueChangeListener(
        e -> {
          try {
            Rating rat =
                iRaitingService.getUser(
                    getUI().getSession().getAttribute("user").toString(), el.getId());

            rat.setRaiting(rating_my.getValue());

            iRaitingService.update(rat);

            double rate = iRaitingService.getRaiting(el.getId());
            rating.setReadOnly(false);
            rating.setValue(rate);
            rating.setReadOnly(true);

            new Notification(String.valueOf(rate), Notification.Type.TRAY_NOTIFICATION)
                .show(Page.getCurrent());
          } catch (SQLException e1) {
            e1.printStackTrace();
          }
        });

    rating_layout.addComponent(rating);
    rating_layout.addComponent(rating_my);
    rating_layout.setComponentAlignment(rating, Alignment.MIDDLE_LEFT);
    rating_layout.setComponentAlignment(rating_my, Alignment.MIDDLE_LEFT);
    rating_layout.setStyleName("ratinglayout");

    imageEmbedded.setSource(new FileResource(new File(Book.getImage())));

    title.setValue(Book.getTitle());
    author.setValue(Book.getAuthor());

    if (Book.getFile().isEmpty()) buttonDownload.setEnabled(false);

    buttonDownload.setWidth("80%");
    imageEmbedded.setWidth("100%");
    imageEmbedded.setHeight("100%");

    title.setWidth(null);
    author.setWidth(null);

    VerticalLayout bodyLayout = new VerticalLayout(title, author, imageEmbedded);

    bodyLayout.setExpandRatio(title, 12);
    bodyLayout.setExpandRatio(author, 8);
    bodyLayout.setExpandRatio(imageEmbedded, 80);
    bodyLayout.setSizeFull();
    bodyLayout.setComponentAlignment(title, Alignment.MIDDLE_CENTER);
    bodyLayout.setComponentAlignment(author, Alignment.MIDDLE_CENTER);
    bodyLayout.setComponentAlignment(imageEmbedded, Alignment.MIDDLE_CENTER);

    buttonDownload.setStyleName("super-button");
    title.setStyleName("name-label");
    author.setStyleName("author-label");

    this.addComponent(rating_layout);
    this.addComponent(bodyLayout);
    this.addComponent(buttonDownload);

    this.setComponentAlignment(rating_layout, Alignment.TOP_CENTER);
    this.setComponentAlignment(bodyLayout, Alignment.TOP_CENTER);
    this.setComponentAlignment(buttonDownload, Alignment.BOTTOM_CENTER);
    this.setExpandRatio(rating_layout, 5);
    this.setExpandRatio(bodyLayout, 85);
    this.setExpandRatio(buttonDownload, 10);

    StreamResource sr = getStream();
    FileDownloader fileDownloader = new FileDownloader(sr);
    fileDownloader.extend(buttonDownload);

    bodyLayout.addLayoutClickListener(
        e -> {
          BookWin win = new BookWin(this.Book);
          UI.getCurrent().addWindow(win);
        });
  }
Ejemplo n.º 17
0
  private void buildFeedControl() {
    mainLayout.addTab(feedControl, "Feed Management");
    feedControl.setSizeFull();

    HorizontalLayout h1 = new HorizontalLayout();
    final TextField feedPath = new TextField("Feeds Folder:");
    h1.addComponent(feedPath);
    final Button updateFeedPath = new Button("Update");
    h1.addComponent(updateFeedPath);
    h1.setComponentAlignment(updateFeedPath, Alignment.BOTTOM_RIGHT);
    feedControl.addComponent(h1);

    updateFeedPath.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            feed.reset();
            feedsPath = feedPath.getValue().toString();
            feed.setFeedsPath(feedsPath);
            buildFeedSelect();
          }
        });

    HorizontalLayout h2 = new HorizontalLayout();
    final Select pairSelect = buildPairSelect();
    h2.addComponent(pairSelect);
    h2.addComponent(feedSelect);
    final Button addPairFeed = new Button("Add");
    h2.addComponent(addPairFeed);
    h2.setComponentAlignment(addPairFeed, Alignment.BOTTOM_RIGHT);
    feedControl.addComponent(h2);

    addPairFeed.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            feed.addPairFeed((Pair) pairSelect.getValue(), feedSelect.getValue().toString());
          }
        });

    HorizontalLayout h3 = new HorizontalLayout();
    final TextField maxPopulation = new TextField("Maximum Population:");
    maxPopulation.setValue("200");
    h3.addComponent(maxPopulation);
    final Button updateMaxPop = new Button("Update");
    h3.addComponent(updateMaxPop);
    h3.setComponentAlignment(updateMaxPop, Alignment.BOTTOM_RIGHT);
    feedControl.addComponent(h3);

    updateMaxPop.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            correlatorPool.setMaxPopulation(Integer.parseInt(maxPopulation.getValue().toString()));
          }
        });

    final Button startSim = new Button("Start Learning");

    feedControl.addComponent(startSim);

    startSim.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            try {
              emulator.startEmulation();
              // emulator.run();
            } catch (Exception e) {
              e.printStackTrace();
            }
          }
        });

    final Button endSim = new Button("End Learning");

    feedControl.addComponent(endSim);

    endSim.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            try {
              emulator.die();
              // emulator.stop();
            } catch (Exception e) {
              e.printStackTrace();
            }
          }
        });

    final Button pauseFeed = new Button("Pause Feed");

    feedControl.addComponent(pauseFeed);

    pauseFeed.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            feed.pause();
          }
        });

    final Button resumeFeed = new Button("Resume Feed");

    feedControl.addComponent(resumeFeed);

    resumeFeed.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            feed.resume();
          }
        });

    final Button testInit = new Button("Use Test Init");

    feedControl.addComponent(testInit);

    testInit.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            feed.reset();
            feedsPath = "C:\\Users\\Oblene\\Desktop\\Sandbox\\Data";
            // feedsPath = "/app/testing/hans/WebApps/Data";
            feed.setFeedsPath(feedsPath);
            buildFeedSelect();

            feed.addPairFeed(Pair.EURUSD, "EURUSD_5 Mins_Bid_2008.01.01_2012.12.31.csv");
            feed.addPairFeed(Pair.GBPUSD, "GBPUSD_5 Mins_Bid_2008.01.01_2012.12.31.csv");
            feed.addPairFeed(Pair.USDCHF, "USDCHF_5 Mins_Bid_2008.01.01_2012.12.31.csv");
            // feed.addPairFeed(Pair.USDJPY, "USDJPY_5 Mins_Bid_2008.01.01_2012.12.31.csv");
            feed.addPairFeed(Pair.AUDUSD, "AUDUSD_5 Mins_Bid_2008.01.01_2012.12.31.csv");
            feed.addPairFeed(Pair.NZDUSD, "NZDUSD_5 Mins_Bid_2008.01.01_2012.12.31.csv");
            feed.addCalendarFeed("Calendar_2008.csv");

            CorrelatorFromCodeFactory.createCorrelator(
                (String) helper.getBean("classPath"),
                "MovingAverageCorrelator",
                "import com.bluesmoke.farm.correlator.CorrelatorPool;\n"
                    + "import com.bluesmoke.farm.correlator.GenericCorrelator;\n"
                    + "import com.bluesmoke.farm.correlator.builder.CorrelatorBuilderManager;\n"
                    + "import com.bluesmoke.farm.model.tickdata.Tick;\n"
                    + "import com.bluesmoke.farm.service.feed.FeedService;\n"
                    + "import com.bluesmoke.farm.enumeration.PairResolution;\n"
                    + "import com.bluesmoke.farm.enumeration.Pair;\n"
                    + "\n"
                    + "import java.util.HashMap;\n"
                    + "import java.util.TreeMap;\n"
                    + "import java.util.Random;\n"
                    + "\n"
                    + "public class MovingAverageCorrelator extends GenericCorrelator{\n"
                    + "\n"
                    + "    private int refresh = 0;\n"
                    + "    private double ma;\n"
                    + "    private double sum = 0;\n"
                    + "    private Pair statePair;"
                    + "    private double statePairResolution;"
                    + "\n"
                    + "    public MovingAverageCorrelator(String id, CorrelatorBuilderManager correlatorBuilderManager, CorrelatorPool pool, FeedService feed, GenericCorrelator aggressiveParent, GenericCorrelator passiveParent, HashMap<String, Object> config)\n"
                    + "    {\n"
                    + "        super(\"MovingAverage_\" + pool.getNextID(), correlatorBuilderManager, pool, feed, aggressiveParent, passiveParent, config);\n"
                    + "        Random rand = new Random();\n"
                    + "        this.config.put(\"price_type\", rand.nextInt(4));\n"
                    + "        TreeMap<Double, Pair> randMap = new TreeMap<Double, Pair>();\n"
                    + "        for(Pair pair : Pair.values())\n"
                    + "        {\n"
                    + "            randMap.put(Math.random(), pair);\n"
                    + "        }\n"
                    + "\n"
                    + "        statePair = randMap.firstEntry().getValue();"
                    + "        this.config.put(\"statePair\", statePair);\n"
                    + "        statePairResolution = PairResolution.getResolution(statePair);\n"
                    + "        this.config.put(\"statePairResolution\", statePairResolution);"
                    + "    }\n"
                    + "\n"
                    + "\n"
                    + "    @Override\n"
                    + "    public void createMutant() {\n"
                    + "        new MovingAverageCorrelator(\"MovingAverage_\" + pool.getNextID(), correlatorBuilderManager, pool, feed, null, null, config);\n"
                    + "    }\n"
                    + "\n"
                    + "    @Override\n"
                    + "    public String createState() {\n"
                    + "\n"
                    + "        if(refresh == 0)\n"
                    + "        {\n"
                    + "            refresh = 1000;\n"
                    + "            sum = 0;\n"
                    + "            boolean passedFirst = false;\n"
                    + "            for(Tick tick : ticks)\n"
                    + "            {\n"
                    + "                   double price = 0;\n"
                    + "                   switch ((Integer)config.get(\"price_type\"))\n"
                    + "                   {\n"
                    + "                       case 0:\n"
                    + "                           price = tick.getPairData(statePair.name()).getOpen();\n"
                    + "                           break;\n"
                    + "                       case 1:\n"
                    + "                           price = tick.getPairData(statePair.name()).getClose();\n"
                    + "                           break;\n"
                    + "                       case 2:\n"
                    + "                           price = tick.getPairData(statePair.name()).getHigh();\n"
                    + "                           break;\n"
                    + "                       case 3:\n"
                    + "                           price = tick.getPairData(statePair.name()).getLow();\n"
                    + "                           break;\n"
                    + "                   }"
                    + "                if(passedFirst)\n"
                    + "                {\n"
                    + "                    sum += price;\n"
                    + "                }\n"
                    + "                else {\n"
                    + "                    passedFirst = true;\n"
                    + "                }\n"
                    + "            }\n"
                    + "            ma = sum/(ticks.size() - 1);\n"
                    + "        }\n"
                    + "        else {\n"
                    + "           double priceRemove = 0;"
                    + "           double priceAdd = 0;"
                    + "           switch ((Integer)config.get(\"price_type\"))\n"
                    + "                   {\n"
                    + "                       case 0:\n"
                    + "                           priceRemove = ticks.get(0).getPairData(statePair.name()).getOpen();\n"
                    + "                           priceAdd = currentTick.getPairData(statePair.name()).getOpen();\n"
                    + "                           break;\n"
                    + "                       case 1:\n"
                    + "                           priceRemove = ticks.get(0).getPairData(statePair.name()).getClose();\n"
                    + "                           priceAdd = currentTick.getPairData(statePair.name()).getClose();\n"
                    + "                           break;\n"
                    + "                       case 2:\n"
                    + "                           priceRemove = ticks.get(0).getPairData(statePair.name()).getHigh();\n"
                    + "                           priceAdd = currentTick.getPairData(statePair.name()).getHigh();\n"
                    + "                           break;\n"
                    + "                       case 3:\n"
                    + "                           priceRemove = ticks.get(0).getPairData(statePair.name()).getLow();\n"
                    + "                           priceAdd = currentTick.getPairData(statePair.name()).getLow();\n"
                    + "                           break;\n"
                    + "                   }"
                    + "            sum -= priceRemove;\n"
                    + "            sum += priceAdd;\n"
                    + "            ma = sum/(ticks.size() - 1);\n"
                    + "        }\n"
                    + "        currentUnderlyingComponents.put(\"MA\", ma);\n"
                    + "        refresh--;\n"
                    + "        return \"\" + (int)(ma/(100 * statePairResolution));\n"
                    + "    }\n"
                    + "}\n",
                correlatorBuilderManager,
                feed,
                correlatorPool,
                null,
                null,
                null);

            CorrelatorFromCodeFactory.createCorrelator(
                (String) helper.getBean("classPath"),
                "PriceCorrelator",
                "import com.bluesmoke.farm.correlator.CorrelatorPool;\n"
                    + "import com.bluesmoke.farm.correlator.GenericCorrelator;\n"
                    + "import com.bluesmoke.farm.correlator.builder.CorrelatorBuilderManager;\n"
                    + "import com.bluesmoke.farm.model.tickdata.Tick;\n"
                    + "import com.bluesmoke.farm.service.feed.FeedService;\n"
                    + "import com.bluesmoke.farm.enumeration.PairResolution;\n"
                    + "import com.bluesmoke.farm.enumeration.Pair;\n"
                    + "\n"
                    + "import java.util.HashMap;\n"
                    + "import java.util.TreeMap;\n"
                    + "import java.util.Random;\n"
                    + "\n"
                    + "public class PriceCorrelator extends GenericCorrelator{\n"
                    + "\n"
                    + "    private Pair statePair;"
                    + "    private double statePairResolution;"
                    + "    public PriceCorrelator(String id, CorrelatorBuilderManager correlatorBuilderManager, CorrelatorPool pool, FeedService feed, GenericCorrelator aggressiveParent, GenericCorrelator passiveParent, HashMap<String, Object> config)\n"
                    + "    {\n"
                    + "        super(\"Price_\" + pool.getNextID(), correlatorBuilderManager, pool, feed, aggressiveParent, passiveParent, config);\n"
                    + "        Random rand = new Random();\n"
                    + "        this.config.put(\"price_type\", rand.nextInt(4));\n"
                    + "        "
                    + "        TreeMap<Double, Pair> randMap = new TreeMap<Double, Pair>();\n"
                    + "        for(Pair pair : Pair.values())\n"
                    + "        {\n"
                    + "            randMap.put(Math.random(), pair);\n"
                    + "        }\n"
                    + "\n"
                    + "        statePair = randMap.firstEntry().getValue();"
                    + "        this.config.put(\"statePair\", statePair);\n"
                    + "        statePairResolution = PairResolution.getResolution(statePair);\n"
                    + "        this.config.put(\"statePairResolution\", statePairResolution);"
                    + "    }\n"
                    + "\n"
                    + "\n"
                    + "    @Override\n"
                    + "    public void createMutant() {\n"
                    + "        new PriceCorrelator(\"Price_\" + pool.getNextID(), correlatorBuilderManager, pool, feed, null, null, config);\n"
                    + "    }\n"
                    + "\n"
                    + "    @Override\n"
                    + "    public String createState() {\n"
                    + "\n"
                    + "        double price = 0;\n"
                    + "        switch ((Integer)config.get(\"price_type\"))\n"
                    + "        {\n"
                    + "            case 0:\n"
                    + "                price = currentTick.getPairData(statePair.name()).getOpen();\n"
                    + "                break;\n"
                    + "            case 1:\n"
                    + "                price = currentTick.getPairData(statePair.name()).getClose();\n"
                    + "                break;\n"
                    + "            case 2:\n"
                    + "                price = currentTick.getPairData(statePair.name()).getHigh();\n"
                    + "                break;\n"
                    + "            case 3:\n"
                    + "                price = currentTick.getPairData(statePair.name()).getLow();\n"
                    + "                break;\n"
                    + "        }\n"
                    + "        currentUnderlyingComponents.put(\"price\", price);\n"
                    + "        return \"\" + (int)(price/(10 * statePairResolution));\n"
                    + "    }\n"
                    + "}\n",
                correlatorBuilderManager,
                feed,
                correlatorPool,
                null,
                null,
                null);
          }
        });

    final Button checkPool = new Button("Check Pool");

    feedControl.addComponent(checkPool);

    checkPool.addListener(
        new Button.ClickListener() {
          public void buttonClick(Button.ClickEvent event) {
            System.out.println(correlatorPool.getHandlesInfo());
          }
        });
  }