@Override public void execute() throws Exception { final String theName = getName(); if (getNeedConfirmation()) { UnicaseConfirmationDialog.show( UI.getCurrent(), theName + " işlemini yapmak istediğinizden emin misiniz ?", new Listener() { public void onClose(ConfirmDialog dialog) { if (dialog.isConfirmed()) { // Confirmed to continue try { if (isCheckLock()) { if (!((IEntity) controller.getEntity()).isLocked() || (((IEntity) controller.getEntity()).getCk_owner() != null) && !(((IEntity) controller.getEntity()).getCk_owner().isLocked())) operate(theName); else Notification.show( "Ekran verileri kilitlenmistir. Yaptiginiz degisiklikler uygulanmayacaktir. Kilidi kaldirmak icin sistem yoneticiniz ile gorusunuz.", Type.ERROR_MESSAGE); } else operate(theName); } catch (Exception e) { e.printStackTrace(); Notification.show("HATA : " + e.getMessage(), Type.ERROR_MESSAGE); } } } }); } else { try { if (isCheckLock()) { if (!((IEntity) controller.getEntity()).isLocked() || (((IEntity) controller.getEntity()).getCk_owner() != null) && !(((IEntity) controller.getEntity()).getCk_owner().isLocked())) operate(theName); else Notification.show( "Ekran verileri kilitlenmistir. Yaptiginiz degisiklikler uygulanmayacaktir. Kilidi kaldirmak icin sistem yoneticiniz ile gorusunuz.", Type.ERROR_MESSAGE); } else { operate(theName); } } catch (Exception e) { Notification.show("HATA : " + e.getMessage(), Type.ERROR_MESSAGE); } } }
public void operate(String theName) throws Exception { if (controller.getEntity() != null) view.setViewToEntity(); Method method = null; try { method = controller.getClass().getMethod(theName, controller.getEntity().getClass()); if (method != null) method.invoke(controller, controller.getEntity()); log(); executeAfterController(); } catch (Exception e) { Notification.show( theName + " Islemi Sirasinda Hata Olustu. " + e.getMessage(), Type.ERROR_MESSAGE); throw e; } }