001    package org.springframework.richclient.command.support;
002    
003    import org.springframework.richclient.widget.Widget;
004    import org.springframework.richclient.widget.editor.AbstractDataEditorWidget;
005    import org.springframework.richclient.widget.editor.DefaultDataEditorWidget;
006    import org.springframework.util.Assert;
007    
008    import java.util.Map;
009    
010    /**
011     * Widget command om een DefaultDataEditorWidget te tonen (of een widget
012     * die daarvan extend)
013     *
014     * @author ldo
015     * @since 0.4.4
016     */
017    public class DataEditorWidgetViewCommand extends WidgetViewCommand
018    {
019        /**
020         * {@inheritDoc}
021         *
022         * Open de dataeditor.
023         */
024        protected void doExecuteCommand()
025        {
026            Widget widget = super.getWidget();
027            Assert.isInstanceOf(AbstractDataEditorWidget.class, widget);
028            AbstractDataEditorWidget dataEditorWidget = (AbstractDataEditorWidget)widget;
029            Object dataEditorParameters = getParameter(DefaultDataEditorWidget.PARAMETER_MAP);
030            if(dataEditorParameters != null)
031            {
032                dataEditorWidget.executeFilter((Map<String, Object>)dataEditorParameters);
033            }
034    
035            super.doExecuteCommand();
036        }
037    }
038