/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * Copyright (c) 2013, MPL CodeInside http://codeinside.ru */ package ru.codeinside.gses.webui.manager; import com.vaadin.ui.Button; import com.vaadin.ui.Form; import com.vaadin.ui.TextField; import org.tepi.filtertable.FilterTable; import ru.codeinside.adm.AdminServiceProvider; import ru.codeinside.gses.beans.DirectoryBeanProvider; import ru.codeinside.gses.service.impl.DeclarantServiceImpl; import ru.codeinside.gses.webui.DeclarantTypeChanged; import ru.codeinside.gses.webui.Flash; public class CreateDirectoryButtonListener implements Button.ClickListener{ private static final long serialVersionUID = 1132332423432431L; final TextField field; final Form createDirectory; final FilterTable directoryTable; public CreateDirectoryButtonListener(TextField field, Form createDirectory, FilterTable directoryTable) { this.field = field; this.createDirectory = createDirectory; this.directoryTable = directoryTable; } @Override public void buttonClick(Button.ClickEvent event) { try { String dirName = field.getValue().toString().trim(); if (dirName.equals("")) { return; } createDirectory.commit(); DirectoryBeanProvider.get().create(dirName); AdminServiceProvider.get().createLog(Flash.getActor(), "Directory", dirName, "create", "Manual create", true); ManagerWorkplace.refreshDirectoryTable(directoryTable); if(DeclarantServiceImpl.DECLARANT_TYPES.equals(dirName)){ Flash.fire(new DeclarantTypeChanged(this)); } } catch (Exception e) { // Ignored, we'll let the Form handle the errors } } }