提交 f35179ea 编写于 作者: S Serge Rider

DB2 session editor

上级 d7ef507a
......@@ -45,11 +45,11 @@ public abstract class AbstractSessionEditor extends SinglePageDatabaseEditor<IDa
@Override
public void createPartControl(Composite parent) {
final DBCExecutionContext executionContext = getExecutionContext();
assert executionContext != null;
setPartName("Sessions - " + executionContext.getDataSource().getContainer().getName());
sessionsViewer = createSessionViewer(executionContext, parent);
sessionsViewer.refreshSessions();
if (executionContext != null) {
setPartName("Sessions - " + executionContext.getDataSource().getContainer().getName());
sessionsViewer = createSessionViewer(executionContext, parent);
sessionsViewer.refreshSessions();
}
}
protected abstract SessionManagerViewer createSessionViewer(DBCExecutionContext executionContext, Composite parent);
......
......@@ -23,15 +23,15 @@ import org.eclipse.jface.action.IContributionManager;
import org.eclipse.jface.action.Separator;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.widgets.Composite;
import org.jkiss.dbeaver.ui.DBeaverIcons;
import org.jkiss.dbeaver.ui.UIIcon;
import org.jkiss.dbeaver.ui.editors.IDatabaseEditorInput;
import org.jkiss.dbeaver.ext.db2.DB2Messages;
import org.jkiss.dbeaver.ext.db2.model.DB2DataSource;
import org.jkiss.dbeaver.model.admin.sessions.DBAServerSession;
import org.jkiss.dbeaver.model.admin.sessions.DBAServerSessionManager;
import org.jkiss.dbeaver.model.exec.DBCExecutionContext;
import org.jkiss.dbeaver.ui.DBeaverIcons;
import org.jkiss.dbeaver.ui.UIIcon;
import org.jkiss.dbeaver.ui.UIUtils;
import org.jkiss.dbeaver.ui.editors.SinglePageDatabaseEditor;
import org.jkiss.dbeaver.ui.views.session.AbstractSessionEditor;
import org.jkiss.dbeaver.ui.views.session.SessionManagerViewer;
import java.util.HashMap;
......@@ -42,22 +42,19 @@ import java.util.Map;
*
* @author Denis Forveille
*/
public class DB2ServerApplicationEditor extends SinglePageDatabaseEditor<IDatabaseEditorInput> {
private SessionManagerViewer applicationViewer;
public class DB2ServerApplicationEditor extends AbstractSessionEditor {
private ForceApplicationAction forceApplicationAction;
@Override
public void dispose()
public void createPartControl(Composite parent)
{
applicationViewer.dispose();
super.dispose();
forceApplicationAction = new ForceApplicationAction();
super.createPartControl(parent);
}
@Override
public void createPartControl(Composite parent)
{
forceApplicationAction = new ForceApplicationAction();
applicationViewer = new SessionManagerViewer(this, parent, new DB2ServerApplicationManager((DB2DataSource) getExecutionContext().getDataSource())) {
protected SessionManagerViewer createSessionViewer(DBCExecutionContext executionContext, Composite parent) {
return new SessionManagerViewer(this, parent, new DB2ServerApplicationManager((DB2DataSource) executionContext.getDataSource())) {
@Override
@SuppressWarnings("rawtypes")
......@@ -74,14 +71,6 @@ public class DB2ServerApplicationEditor extends SinglePageDatabaseEditor<IDataba
forceApplicationAction.setEnabled(session != null);
}
};
applicationViewer.refreshSessions();
}
@Override
public void refreshPart(Object source, boolean force)
{
applicationViewer.refreshSessions();
}
private class ForceApplicationAction extends Action {
......@@ -94,12 +83,12 @@ public class DB2ServerApplicationEditor extends SinglePageDatabaseEditor<IDataba
@Override
public void run()
{
final DBAServerSession session = applicationViewer.getSelectedSession();
final DBAServerSession session = getSessionsViewer().getSelectedSession();
final String action = DB2Messages.editors_db2_application_editor_action_force;
if (UIUtils.confirmAction(getSite().getShell(), "Confirm force application",
NLS.bind(DB2Messages.editors_db2_application_editor_confirm_action, action.toLowerCase(), session))) {
Map<String, Object> options = new HashMap<>();
applicationViewer.alterSession(session, options);
getSessionsViewer().alterSession(session, options);
}
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册