Search in sources :

Example 1 with FuncationDependencyParameter

use of org.talend.dq.analysis.parameters.FuncationDependencyParameter in project tdq-studio-se by Talend.

the class NewWizardSelectionPage method addListeners.

protected void addListeners() {
    typeTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            AnalysisTypeNode node = (AnalysisTypeNode) ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (node == null) {
                return;
            }
            AnalysisTypeNode parent = (AnalysisTypeNode) node.getParent();
            IContext context = HelpSystem.getContext(HelpPlugin.getDefault().getAnalysisHelpContextID());
            IHelpResource[] relatedTopics = context.getRelatedTopics();
            String href = null;
            String currentLiteral = node.getLiteral();
            if (AnalysisLabelParameter.FUNCTIONAL_DEPENDENCY_ANALYSIS.equals(currentLiteral)) {
                currentLiteral = AnalysisType.TABLE_FUNCTIONAL_DEPENDENCY.getLiteral();
            } else if (AnalysisLabelParameter.CONNECTION_OVERVIEW_ANALYSIS.equals(currentLiteral)) {
                currentLiteral = AnalysisType.CONNECTION.getLiteral();
            } else if (AnalysisLabelParameter.CATALOG_OVERVIEW_ANALYSIS.equals(currentLiteral)) {
                currentLiteral = AnalysisType.CATALOG.getLiteral();
            } else if (AnalysisLabelParameter.SCHEMA_OVERVIEW_ANALYSIS.equals(currentLiteral)) {
                currentLiteral = AnalysisType.SCHEMA.getLiteral();
            }
            AnalysisType currentType = AnalysisType.get(currentLiteral);
            if (parent == null) {
                setPageComplete(false);
                // MOD hcheng 2009-06-05 add help in analysis wizard
                switch(currentType) {
                    case CONNECTION:
                        href = relatedTopics[0].getHref();
                        break;
                    case COLUMNS_COMPARISON:
                        href = relatedTopics[4].getHref();
                        break;
                    case TABLE:
                        href = relatedTopics[6].getHref();
                        break;
                    case MULTIPLE_COLUMN:
                        href = relatedTopics[11].getHref();
                        break;
                    case COLUMN_CORRELATION:
                        href = relatedTopics[18].getHref();
                        break;
                    default:
                }
            } else {
                AnalysisParameter parameter = null;
                AnalysisType parentType = AnalysisType.get(parent.getLiteral());
                FolderProvider folderProvider = getCurrentFolderProvider() == null ? ((CreateNewAnalysisWizard) getWizard()).getCurrentFolderProvider() : getCurrentFolderProvider();
                switch(parentType) {
                    case COLUMN_CORRELATION:
                        AnalysisParameter correlationColumnParam = new AnalysisLabelParameter();
                        ((AnalysisLabelParameter) correlationColumnParam).setCategoryLabel(node.getName());
                        correlationColumnParam.setFolderProvider(folderProvider);
                        parameter = correlationColumnParam;
                        if (AnalysisLabelParameter.NUMBERIC_CORRELATION.equals(currentLiteral)) {
                            href = relatedTopics[19].getHref();
                        } else if (AnalysisLabelParameter.DATE_CORRELATION.equals(currentLiteral)) {
                            href = relatedTopics[20].getHref();
                        } else if (AnalysisLabelParameter.NOMINAL_CORRELATION.equals(currentLiteral)) {
                            href = relatedTopics[21].getHref();
                        } else {
                            href = relatedTopics[18].getHref();
                        }
                        break;
                    case MULTIPLE_COLUMN:
                        AnalysisParameter multipleColumnParam = new AnalysisLabelParameter();
                        ((AnalysisLabelParameter) multipleColumnParam).setCategoryLabel(node.getName());
                        multipleColumnParam.setFolderProvider(folderProvider);
                        parameter = multipleColumnParam;
                        if (AnalysisLabelParameter.SEMANTIC_DISCOVERY_ANALYSIS.equals(currentLiteral)) {
                            href = relatedTopics[12].getHref();
                        } else if (AnalysisLabelParameter.BASIC_COLUMN_ANALYSIS.equals(currentLiteral)) {
                            href = relatedTopics[13].getHref();
                        } else if (AnalysisLabelParameter.NOMINAL_VALUES_ANALYSIS.equals(currentLiteral)) {
                            href = relatedTopics[14].getHref();
                        } else if (AnalysisLabelParameter.PATTERN_FREQUENCY_ANALYSIS.equals(currentLiteral)) {
                            href = relatedTopics[15].getHref();
                        } else if (AnalysisLabelParameter.DISCRETE_DATA_ANALYSIS.equals(currentLiteral)) {
                            href = relatedTopics[16].getHref();
                        } else if (AnalysisLabelParameter.SUMMARY_STATISTICS_ANALYSIS.equals(currentLiteral)) {
                            href = relatedTopics[17].getHref();
                        } else {
                            href = relatedTopics[13].getHref();
                        }
                        break;
                    case COLUMNS_COMPARISON:
                        AnalysisParameter anaParam = new AnalysisParameter();
                        anaParam.setFolderProvider(folderProvider);
                        parameter = anaParam;
                        href = relatedTopics[5].getHref();
                        break;
                    case CONNECTION:
                        switch(currentType) {
                            case CONNECTION:
                            default:
                                AnalysisFilterParameter connParam = new AnalysisFilterParameter();
                                connParam.setFolderProvider(folderProvider);
                                parameter = connParam;
                                href = relatedTopics[1].getHref();
                                parentType = currentType;
                                break;
                            case CATALOG:
                                PackagesAnalyisParameter catalogParam = new PackagesAnalyisParameter();
                                catalogParam.setFolderProvider(folderProvider);
                                parameter = catalogParam;
                                href = relatedTopics[2].getHref();
                                parentType = currentType;
                                break;
                            case SCHEMA:
                                PackagesAnalyisParameter schemaParam = new PackagesAnalyisParameter();
                                schemaParam.setFolderProvider(folderProvider);
                                parameter = schemaParam;
                                href = relatedTopics[3].getHref();
                                parentType = currentType;
                                break;
                        }
                        break;
                    case TABLE:
                        switch(currentType) {
                            case MATCH_ANALYSIS:
                                parameter = new AnalysisParameter();
                                parameter.setFolderProvider(folderProvider);
                                href = relatedTopics[8].getHref();
                                parentType = currentType;
                                break;
                            case COLUMN_SET:
                                AnalysisParameter corrParam = new AnalysisParameter();
                                corrParam.setFolderProvider(folderProvider);
                                parameter = corrParam;
                                href = relatedTopics[10].getHref();
                                parentType = currentType;
                                break;
                            case TABLE_FUNCTIONAL_DEPENDENCY:
                                FuncationDependencyParameter funcationDependency = new FuncationDependencyParameter();
                                funcationDependency.setFolderProvider(folderProvider);
                                parameter = funcationDependency;
                                href = relatedTopics[9].getHref();
                                parentType = currentType;
                                break;
                            default:
                                NamedColumnSetAnalysisParameter tableParam = new NamedColumnSetAnalysisParameter();
                                tableParam.setFolderProvider(folderProvider);
                                parameter = tableParam;
                                href = relatedTopics[7].getHref();
                                break;
                        }
                        break;
                    default:
                        parameter = new AnalysisParameter();
                }
                selectedWizard = WizardFactory.createAnalysisWizard(parentType, parameter);
                setPageComplete(true);
            }
            // MOD by hcheng,0007483: Add help in analysis wizard
            OpeningHelpWizardDialog dialog = (OpeningHelpWizardDialog) getWizard().getContainer();
            dialog.setHref(href);
            dialog.showHelp();
        }
    });
    typeTreeViewer.addDoubleClickListener(new IDoubleClickListener() {

        public void doubleClick(DoubleClickEvent event) {
            AnalysisTypeNode node = (AnalysisTypeNode) ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (node.getParent() == null) {
                typeTreeViewer.expandToLevel(node, 1);
            } else {
                advanceToNextPageOrFinish();
            }
        }
    });
}
Also used : AnalysisType(org.talend.dataquality.analysis.AnalysisType) AnalysisTypeNode(org.talend.dataprofiler.core.model.nodes.analysis.AnalysisTypeNode) IContext(org.eclipse.help.IContext) ISelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener) SelectionChangedEvent(org.eclipse.jface.viewers.SelectionChangedEvent) OpeningHelpWizardDialog(org.talend.dataprofiler.core.ui.utils.OpeningHelpWizardDialog) DoubleClickEvent(org.eclipse.jface.viewers.DoubleClickEvent) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) NamedColumnSetAnalysisParameter(org.talend.dq.analysis.parameters.NamedColumnSetAnalysisParameter) FuncationDependencyParameter(org.talend.dq.analysis.parameters.FuncationDependencyParameter) FolderProvider(org.talend.cwm.management.api.FolderProvider) PackagesAnalyisParameter(org.talend.dq.analysis.parameters.PackagesAnalyisParameter) NamedColumnSetAnalysisParameter(org.talend.dq.analysis.parameters.NamedColumnSetAnalysisParameter) AnalysisParameter(org.talend.dq.analysis.parameters.AnalysisParameter) IDoubleClickListener(org.eclipse.jface.viewers.IDoubleClickListener) AnalysisFilterParameter(org.talend.dq.analysis.parameters.AnalysisFilterParameter) AnalysisLabelParameter(org.talend.dq.analysis.parameters.AnalysisLabelParameter)

Aggregations

IContext (org.eclipse.help.IContext)1 DoubleClickEvent (org.eclipse.jface.viewers.DoubleClickEvent)1 IDoubleClickListener (org.eclipse.jface.viewers.IDoubleClickListener)1 ISelectionChangedListener (org.eclipse.jface.viewers.ISelectionChangedListener)1 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)1 SelectionChangedEvent (org.eclipse.jface.viewers.SelectionChangedEvent)1 FolderProvider (org.talend.cwm.management.api.FolderProvider)1 AnalysisTypeNode (org.talend.dataprofiler.core.model.nodes.analysis.AnalysisTypeNode)1 OpeningHelpWizardDialog (org.talend.dataprofiler.core.ui.utils.OpeningHelpWizardDialog)1 AnalysisType (org.talend.dataquality.analysis.AnalysisType)1 AnalysisFilterParameter (org.talend.dq.analysis.parameters.AnalysisFilterParameter)1 AnalysisLabelParameter (org.talend.dq.analysis.parameters.AnalysisLabelParameter)1 AnalysisParameter (org.talend.dq.analysis.parameters.AnalysisParameter)1 FuncationDependencyParameter (org.talend.dq.analysis.parameters.FuncationDependencyParameter)1 NamedColumnSetAnalysisParameter (org.talend.dq.analysis.parameters.NamedColumnSetAnalysisParameter)1 PackagesAnalyisParameter (org.talend.dq.analysis.parameters.PackagesAnalyisParameter)1