package com.constellio.app.modules.es.ui.pages; import com.constellio.app.ui.entities.RecordVO; import com.constellio.app.ui.framework.components.RecordForm; import com.constellio.app.ui.pages.base.BaseViewImpl; import com.constellio.model.frameworks.validation.ValidationException; import com.vaadin.navigator.ViewChangeListener.ViewChangeEvent; import com.vaadin.ui.Button.ClickEvent; import com.vaadin.ui.Button.ClickListener; import com.vaadin.ui.Component; import com.vaadin.ui.VerticalLayout; public class EditConnectorInstanceViewImpl extends BaseViewImpl implements EditConnectorInstanceView { private VerticalLayout mainLayout; private RecordVO recordVO; private Component addConnectorInstanceComponent; private EditConnectorInstancePresenter presenter; public EditConnectorInstanceViewImpl() { presenter = new EditConnectorInstancePresenter(this); } @Override protected ClickListener getBackButtonClickListener() { return new ClickListener() { @Override public void buttonClick(ClickEvent event) { presenter.backButtonClicked(); } }; } @Override protected void initBeforeCreateComponents(ViewChangeEvent event) { presenter.forParams(event.getParameters()); } @Override protected Component buildMainComponent(ViewChangeEvent event) { mainLayout = new VerticalLayout(); mainLayout.setSizeFull(); mainLayout.setSpacing(true); addConnectorInstanceComponent = newForm(); mainLayout.addComponents(addConnectorInstanceComponent); return mainLayout; } @Override public void setRecordVO(RecordVO recordVO) { this.recordVO = recordVO; } @Override protected String getTitle() { return presenter.getTitle(); } private RecordForm newForm() { RecordForm recordForm = new RecordForm(recordVO, new ConnectorInstanceFieldFactory()) { @Override protected void saveButtonClick(RecordVO viewObject) throws ValidationException { presenter.saveButtonClicked(viewObject); } @Override protected void cancelButtonClick(RecordVO viewObject) { presenter.cancelButtonClicked(); } }; return recordForm; } }