From c837da6a702be74daa551794933036c8268b300c Mon Sep 17 00:00:00 2001 From: Evgeny Fradkin Date: Fri, 2 Mar 2018 17:30:21 +0300 Subject: [PATCH] #1599 Mock Data menu item is moved from the Tools menu to the upper level. --- plugins/org.jkiss.dbeaver.core/plugin.xml | 2 + .../org.jkiss.dbeaver.ext.mockdata/plugin.xml | 37 ++++++++----- .../mockdata/handlers/MockDataHandler.java | 54 +++++++++++++++++++ 3 files changed, 81 insertions(+), 12 deletions(-) create mode 100644 plugins/org.jkiss.dbeaver.ext.mockdata/src/org/jkiss/dbeaver/ext/mockdata/handlers/MockDataHandler.java diff --git a/plugins/org.jkiss.dbeaver.core/plugin.xml b/plugins/org.jkiss.dbeaver.core/plugin.xml index 1fe8c0c33f..c135e49e2f 100644 --- a/plugins/org.jkiss.dbeaver.core/plugin.xml +++ b/plugins/org.jkiss.dbeaver.core/plugin.xml @@ -2149,6 +2149,8 @@ + + diff --git a/plugins/org.jkiss.dbeaver.ext.mockdata/plugin.xml b/plugins/org.jkiss.dbeaver.ext.mockdata/plugin.xml index 1204dd6cd6..21180d4c1d 100644 --- a/plugins/org.jkiss.dbeaver.ext.mockdata/plugin.xml +++ b/plugins/org.jkiss.dbeaver.ext.mockdata/plugin.xml @@ -5,18 +5,31 @@ - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/org.jkiss.dbeaver.ext.mockdata/src/org/jkiss/dbeaver/ext/mockdata/handlers/MockDataHandler.java b/plugins/org.jkiss.dbeaver.ext.mockdata/src/org/jkiss/dbeaver/ext/mockdata/handlers/MockDataHandler.java new file mode 100644 index 0000000000..927df177fd --- /dev/null +++ b/plugins/org.jkiss.dbeaver.ext.mockdata/src/org/jkiss/dbeaver/ext/mockdata/handlers/MockDataHandler.java @@ -0,0 +1,54 @@ +/* + * DBeaver - Universal Database Manager + * Copyright (C) 2010-2017 Serge Rider (serge@jkiss.org) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.jkiss.dbeaver.ext.mockdata.handlers; + +import org.eclipse.core.commands.AbstractHandler; +import org.eclipse.core.commands.ExecutionEvent; +import org.eclipse.core.commands.ExecutionException; +import org.eclipse.ui.handlers.HandlerUtil; +import org.jkiss.dbeaver.DBException; +import org.jkiss.dbeaver.Log; +import org.jkiss.dbeaver.ext.mockdata.MockDataGenerateTool; +import org.jkiss.dbeaver.model.struct.DBSObject; +import org.jkiss.dbeaver.ui.navigator.NavigatorUtils; + +import java.util.List; + +public class MockDataHandler extends AbstractHandler { + + private static final Log log = Log.getLog(MockDataHandler.class); + + public MockDataHandler() { + } + + @Override + public Object execute(ExecutionEvent event) throws ExecutionException { + + List selectedObjects = NavigatorUtils.getSelectedObjects( + HandlerUtil.getCurrentSelection(event)); + + MockDataGenerateTool mockDataGenerator = new MockDataGenerateTool(); + try { + mockDataGenerator.execute( + HandlerUtil.getActiveWorkbenchWindow(event), null, selectedObjects); + } catch (DBException e) { + log.error("Error launching the Mock Data Generator", e); + } + + return null; + } +} -- GitLab