package com.constellio.app.ui.pages.management.reindexation; import static com.constellio.app.ui.i18n.i18n.$; import com.constellio.app.ui.framework.buttons.BaseButton; import com.constellio.app.ui.pages.base.BaseViewImpl; import com.vaadin.navigator.ViewChangeListener.ViewChangeEvent; import com.vaadin.ui.Button; import com.vaadin.ui.Component; import com.vaadin.ui.TextArea; import com.vaadin.ui.VerticalLayout; import com.vaadin.ui.themes.ValoTheme; public class ForcedReindexViewImpl extends BaseViewImpl implements ForcedReindexView { private final ForcedReindexPresenter presenter; TextArea hashes; public ForcedReindexViewImpl() { presenter = new ForcedReindexPresenter(this); } @Override protected String getTitle() { return $("ForceReindexView.viewTitle"); } @Override protected Component buildMainComponent(ViewChangeEvent event) { hashes = new TextArea($("ForceReindexView.hashes")); hashes.setWidth("100%"); Button reindex = new BaseButton($("ForceReindexView.reindex")) { @Override protected void buttonClick(ClickEvent event) { presenter.reindex(hashes.getValue()); } }; reindex.addStyleName(ValoTheme.BUTTON_PRIMARY); VerticalLayout layout = new VerticalLayout(hashes, reindex); layout.setSpacing(true); layout.setWidth("100%"); return layout; } @Override public void reindexFinished() { hashes.setValue(""); showMessage($("ForceReindexView.reindex.finished")); } }