@Override
        protected IContributionItem[] getContributionItems() {
            IWorkbenchPage activePage = UIUtils.getActiveWorkbenchWindow().getActivePage();
            if (activePage == null) {
                return EMPTY_MENU;
            }
            IWorkbenchPart activePart = activePage.getActivePart();
            if (activePart == null) {
                return EMPTY_MENU;
            }
            IWorkbenchPartSite site = activePart.getSite();
            if (site == null) {
                return EMPTY_MENU;
            }
            ISelectionProvider selectionProvider = site.getSelectionProvider();
            if (selectionProvider == null) {
                return EMPTY_MENU;
            }
            DBNNode node = getNodeFromSelection(selectionProvider.getSelection());

            List<IContributionItem> createActions = fillCreateMenuItems(site, node);
            return createActions.toArray(new IContributionItem[0]);
        }
Sorry, this is a bit over-complicated handler. Historical reasons.
It can create object of specified type (in parameters) or for current selection.
Dynamic menu "Create" fills elements with parameters. Direct contribution of create command will create nearest
object type according to navigator selection.
plugins/org.jkiss.dbeaver.ui.navigator/src/org/jkiss/dbeaver/ui/navigator/actions/NavigatorHandlerObjectCreateNew.java