package cz.cvut.fel.restauracefel.smeny.smeny_gui; import cz.cvut.fel.restauracefel.smeny.SmenyController.SmenyController; import java.awt.event.ActionEvent; import java.io.FileNotFoundException; import java.rmi.NotBoundException; import java.rmi.RemoteException; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.AbstractAction; import javax.swing.JTable; /** * Trida akce pro odhlaseni aktualne prihlaseneho uzivatele ze smeny v kontextove nabidce pro formular OverViewShiftForm. * * @author Martin Kosek */ public class LogoutCurrentUserAction extends AbstractAction { private JTable table = null; private OverviewEmployeeShiftForm parent = null; public LogoutCurrentUserAction(OverviewEmployeeShiftForm parent, JTable table) { super("Odhlásit"); this.parent = parent; this.table = table; } public void actionPerformed(ActionEvent e) { int rowNumber = table.getSelectedRow(); //bude slouzit jako index pro datovou strukturu ve ktere bude ulozeno id smeny if (rowNumber > -1) { try { int idWorkshift = SmenyController.getInstance().getWorkShiftIdFromOverViewTable(rowNumber); SmenyController.getInstance().logoutCurrentUserFromWorkShift(idWorkshift); parent.reloadTable(parent.getCurrentFilter()); } catch (FileNotFoundException ex) { Logger.getLogger(OverviewEmployeeShiftForm.class.getName()).log(Level.SEVERE, null, ex); } catch (NotBoundException ex) { Logger.getLogger(OverviewEmployeeShiftForm.class.getName()).log(Level.SEVERE, null, ex); } catch (RemoteException ex) { Logger.getLogger(OverviewEmployeeShiftForm.class.getName()).log(Level.SEVERE, null, ex); } catch (Exception ex) { Logger.getLogger(CreateTemplateForm.class.getName()).log(Level.SEVERE, null, ex); } } else { SmenyController.getInstance().showMessageDialogInformation("Vyberte řádek", "Informace"); } } }