Skip to content

Commit

Permalink
TEIIDDES-3049
Browse files Browse the repository at this point in the history
 * replace generate dynamic vdb wizard with single-page wizard
  • Loading branch information
blafond committed Jun 14, 2017
1 parent eea4bb9 commit 0fe338f
Show file tree
Hide file tree
Showing 19 changed files with 1,365 additions and 54 deletions.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions plugins/org.teiid.designer.dqp.ui/plugin.properties
Original file line number Diff line number Diff line change
Expand Up @@ -103,8 +103,8 @@ generateArchiveVdbAction.name = Generate VDB Archive
generateArchiveVdbAction.label = Generate VDB Archive and Models
generateArchiveVdbAction.tooltip = Generate VDB Archive and Models from Dynamic VDB XML

generateDynamicVdbAction.name = Generate Dynamic VDB
generateDynamicVdbAction.label = Generate Dynamic VDB
generateDynamicVdbAction.name = Generate VDB XML
generateDynamicVdbAction.label = Generate VDB XML
generateDynamicVdbAction.tooltip = Generate Dynamic VDB XML from VDB Archive

generateWarAction.name = Generate SOAP War
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ interface Images {
public static final String STANDARD_VDB = PC.OBJ16 + "standard-vdb.png"; //$NON-NLS-1$
public static final String SHOW_VDB_ERRORS = PC.CTOOL16 + "show-vdb-errors.png"; //$NON-NLS-1$
public static final String WARNING_ICON = PC.OBJ16 + "warning.gif"; //$NON-NLS-1$
public static final String GENERATE_DATA_SERVICE = PC.CTOOL16 + "generate-data-service.png"; //$NON-NLS-1$
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,31 @@ public class Messages extends NLS {
public static String PreviewDataWorker_vdbDeploymentErrorTitle;
public static String PreviewDataWorker_previewVdbJndiMissingErrorTitle;

public static String GenerateDynamicVdbDialog_dynamicVdbDefinition;
public static String GenerateDynamicVdbDialog_options;
public static String GenerateDynamicVdbDialog_name;
public static String GenerateDynamicVdbDialog_fileName;
public static String GenerateDynamicVdbDialog_selectedVdbFile;
public static String GenerateDynamicVdbDialog_saveAsVdbXmlFile;
public static String GenerateDynamicVdbDialog_initialMessage;
public static String GenerateDynamicVdbDialog_okMessage;
public static String GenerateDynamicVdbDialog_location;
public static String GenerateDynamicVdbDialog_locationUndefined;
public static String GenerateDynamicVdbDialog_browse;
public static String GenerateDynamicVdbDialog_saveToWorkspace;
public static String GenerateDynamicVdbDialog_saveToFileSystem;
public static String GenerateDynamicVdbDialog_fileContents;
public static String GenerateDynamicVdbDialog_allowEditXml;
public static String GenerateDynamicVdbDialog_reset;
public static String GenerateDynamicVdbDialog_overwriteFilesOptionLabel;
public static String GenerateDynamicVdbDialog_overwriteVDBOptionTooltip;
public static String GenerateDynamicVdbDialog_version;
public static String GenerateDynamicVdbDialog_dynamicVdbNameTooltip;
public static String GenerateDynamicVdbDialog_dynamicVdbFileNameToolTip;
public static String GenerateDynamicVdbDialog_excludeSourceDdlMetadata;
public static String GenerateDynamicVdbDialog_suppressDefaultAttributesOption;
public static String GenerateDynamicVdbDialog_suppressDefaultAttributesOptionTooltip;

static {
NLS.initializeMessages("org.teiid.designer.runtime.ui.messages", Messages.class); //$NON-NLS-1$
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import java.util.Iterator;
import java.util.List;
import org.eclipse.core.resources.IFile;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.wizard.WizardDialog;
Expand All @@ -20,21 +21,25 @@
import org.teiid.designer.runtime.ui.DqpUiConstants;
import org.teiid.designer.runtime.ui.DqpUiPlugin;
import org.teiid.designer.runtime.ui.Messages;
import org.teiid.designer.runtime.ui.DqpUiConstants.Images;
import org.teiid.designer.runtime.ui.wizards.vdbs.GenerateDynamicVdbDialog;
import org.teiid.designer.runtime.ui.wizards.vdbs.GenerateDynamicVdbManager;
import org.teiid.designer.runtime.ui.wizards.vdbs.GenerateDynamicVdbWizard;
import org.teiid.designer.ui.actions.SortableSelectionAction;
import org.teiid.designer.ui.common.actions.ModelActionConstants;
import org.teiid.designer.ui.common.eventsupport.SelectionUtilities;
import org.teiid.designer.ui.viewsupport.ModelUtilities;
import org.teiid.designer.vdb.ui.VdbUiPlugin;

public class GenerateDynamicVdbAction extends SortableSelectionAction implements DqpUiConstants {
private static final String label = DqpUiConstants.UTIL.getString("label"); //$NON-NLS-1$

/**
* @since 5.0
*/
public GenerateDynamicVdbAction() {
super(label, SWT.DEFAULT);
setImageDescriptor(DqpUiPlugin.getDefault().getImageDescriptor(Images.DYNAMIC_VDB));
setId(ModelActionConstants.Resource.GENERATE_VDB_XML);
}

/**
Expand All @@ -53,26 +58,28 @@ public boolean isValidSelection( ISelection selection ) {
*/
@Override
public void run() {
final IWorkbenchWindow iww = VdbUiPlugin.singleton.getCurrentWorkbenchWindow();

Object obj = SelectionUtilities.getSelectedObject(getSelection());
if (obj instanceof IFile) {
IFile vdbXmlFile = (IFile)obj;

try {
GenerateDynamicVdbWizard wizard = new GenerateDynamicVdbWizard(vdbXmlFile);
GenerateDynamicVdbManager vdbManager = new GenerateDynamicVdbManager(vdbXmlFile);

WizardDialog wd = new WizardDialog(getShell(), wizard);
wd.open();
GenerateDynamicVdbDialog dialog = new GenerateDynamicVdbDialog(getShell(), vdbManager);

if( dialog.open() == IDialogConstants.OK_ID) {
vdbManager.write();
}
return;
} catch (Exception ex) {
MessageDialog.openError(iww.getShell(),
MessageDialog.openError(getShell(),
Messages.GenerateDynamicVdbAction_exceptionTitle,
ex.getLocalizedMessage());
}
}

MessageDialog.openInformation(iww.getShell(),
MessageDialog.openInformation(getShell(),
Messages.GenerateDynamicVdbAction_nothingExportedTitle,
Messages.GenerateDynamicVdbAction_nothingExportedMessage);

Expand Down Expand Up @@ -111,4 +118,4 @@ private boolean vdbSelected( ISelection theSelection ) {
private Shell getShell() {
return Display.getCurrent().getActiveShell();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,30 @@ PreviewDataInputDialog_previewXMLLabel=Preview VDB XML Content
PreviewDataWorker_dataSourceMissingTitle=Data Sources Missing
PreviewDataWorker_dataSourceCreationErrorTitle=Data Source Creation Error
PreviewDataWorker_vdbDeploymentErrorTitle=VDB Deployment Error
PreviewDataWorker_previewVdbJndiMissingErrorTitle=Missing JBoss JNDI Names
PreviewDataWorker_previewVdbJndiMissingErrorTitle=Missing JBoss JNDI Names


GenerateDynamicVdbDialog_dynamicVdbDefinition=Dynamic VDB Definition
GenerateDynamicVdbDialog_options=Options
GenerateDynamicVdbDialog_name=Name
GenerateDynamicVdbDialog_fileName=File Name
GenerateDynamicVdbDialog_selectedVdbFile=Selected *.vdb file :
GenerateDynamicVdbDialog_saveAsVdbXmlFile=Save as VDB XML file
GenerateDynamicVdbDialog_initialMessage=Enter VDB xml file information
GenerateDynamicVdbDialog_okMessage=Click OK to save VDB xml file
GenerateDynamicVdbDialog_location=Location:
GenerateDynamicVdbDialog_locationUndefined=Location undefined
GenerateDynamicVdbDialog_browse=Browse...
GenerateDynamicVdbDialog_saveToWorkspace=Save to workspace
GenerateDynamicVdbDialog_saveToFileSystem=Save to file system
GenerateDynamicVdbDialog_fileContents=Dynamic VDB XML Contents
GenerateDynamicVdbDialog_allowEditXml=Allow Edit XML
GenerateDynamicVdbDialog_reset=Reset
GenerateDynamicVdbDialog_overwriteFilesOptionLabel=Overwrite existing VDB file
GenerateDynamicVdbDialog_overwriteVDBOptionTooltip=Overwrite existing VDB file
GenerateDynamicVdbDialog_version=Version
GenerateDynamicVdbDialog_dynamicVdbNameTooltip=Specify name for Dynamic VDB. This name can be the same as the archive VDB name above.
GenerateDynamicVdbDialog_dynamicVdbFileNameToolTip=Specify name for Dynamic VDB file name. This name must end with -vdb.xml.
GenerateDynamicVdbDialog_excludeSourceDdlMetadata=Exclude source DDL metadata
GenerateDynamicVdbDialog_suppressDefaultAttributesOption=Suppress attributes with default values
GenerateDynamicVdbDialog_suppressDefaultAttributesOptionTooltip=Do not generate xml attributes that retain their default values according to the teiid schema
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
package org.teiid.designer.runtime.ui.wizards.vdbs;

import java.io.StringWriter;
import java.lang.reflect.InvocationTargetException;
import java.util.Properties;
import org.eclipse.core.resources.IContainer;
import org.eclipse.core.resources.IFile;
Expand All @@ -24,8 +25,10 @@
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.IJobChangeEvent;
import org.eclipse.core.runtime.jobs.JobChangeAdapter;
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.osgi.util.NLS;
import org.eclipse.swt.widgets.Display;
import org.teiid.core.designer.util.CoreArgCheck;
import org.teiid.core.designer.util.StringConstants;
import org.teiid.core.designer.util.StringUtilities;
Expand Down Expand Up @@ -126,7 +129,9 @@ public void done(final IJobChangeEvent event) {

@Override
public void run() {
wizard.getContainer().updateButtons();
if( wizard != null ) {
wizard.getContainer().updateButtons();
}
}
};

Expand Down Expand Up @@ -204,6 +209,14 @@ public AbstractGenerateVdbManager(AbstractWizard wizard) {
this.wizard = wizard;
}

/**
* @param wizard
*/
public AbstractGenerateVdbManager() {
super();
wizard = null;
}

/**
* @return dynamic vdb
*/
Expand Down Expand Up @@ -413,6 +426,17 @@ protected void validate() {

protected void generateVdbJob(final GeneratorCallback callback) {
GenerateRunnable runnable = new GenerateRunnable(callback);

if( wizard == null ) {
try {
new ProgressMonitorDialog(Display.getCurrent().getActiveShell()).run(true, true, runnable);
} catch (final InterruptedException e) {
} catch (final InvocationTargetException e) {
UiConstants.Util.log(e.getTargetException());
}
return;
}

try {
wizard.getContainer().run(true, true, runnable);
} catch (Exception ex) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@
import org.teiid.core.designer.util.StringConstants;
import org.teiid.designer.runtime.ui.DqpUiConstants;
import org.teiid.designer.runtime.ui.Messages;
import org.teiid.designer.runtime.ui.wizards.vdbs.style.XmlRegion;
import org.teiid.designer.runtime.ui.wizards.vdbs.style.XmlRegionAnalyzer;
import org.teiid.designer.ui.common.graphics.GlobalUiColorManager;
import org.teiid.designer.ui.common.util.WidgetFactory;
import org.teiid.designer.ui.common.util.WizardUtil;
import org.teiid.designer.ui.common.util.style.XmlRegion;
import org.teiid.designer.ui.common.util.style.XmlRegionAnalyzer;
import org.teiid.designer.ui.common.widget.Label;
import org.teiid.designer.ui.common.wizard.AbstractWizardPage;

Expand Down

0 comments on commit 0fe338f

Please sign in to comment.