Exemplo n.º 1
0
  private void activeAddFields() {
    boolean activate =
        wgetCloserValue.getSelection()
            || (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_DOUBLE_METAPHONE)
            || (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_SOUNDEX)
            || (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_REFINED_SOUNDEX)
            || (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_METAPHONE);

    wlReturn.setEnabled(activate);
    wReturn.setEnabled(activate);
    wGetLU.setEnabled(activate);
  }
Exemplo n.º 2
0
  private void ok() {
    if (Utils.isEmpty(wStepname.getText())) {
      return;
    }

    input.setMainStreamField(wMainStreamField.getText());
    input.setLookupField(wLookupField.getText());

    input.setAlgorithmType(FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText()));
    input.setCaseSensitive(wcaseSensitive.getSelection());
    input.setGetCloserValue(wgetCloserValue.getSelection());
    input.setMaximalValue(wmaxValue.getText());
    input.setMinimalValue(wminValue.getText());

    input.setOutputMatchField(wmatchField.getText());
    input.setOutputValueField(wvalueField.getText());
    input.setSeparator(wseparator.getText());

    int nrvalues = wReturn.nrNonEmpty();
    input.allocate(nrvalues);
    if (isDebug()) {
      logDebug(BaseMessages.getString(PKG, "FuzzyMatchDialog.Log.FoundFields", nrvalues + ""));
    }
    // CHECKSTYLE:Indentation:OFF
    for (int i = 0; i < nrvalues; i++) {
      TableItem item = wReturn.getNonEmpty(i);
      input.getValue()[i] = item.getText(1);
      input.getValueName()[i] = item.getText(2);
      if (input.getValueName()[i] == null || input.getValueName()[i].length() == 0) {
        input.getValueName()[i] = input.getValue()[i];
      }
    }

    StreamInterface infoStream = input.getStepIOMeta().getInfoStreams().get(0);
    infoStream.setStepMeta(transMeta.findStep(wStep.getText()));
    if (infoStream.getStepMeta() == null) {
      MessageBox mb = new MessageBox(shell, SWT.OK | SWT.ICON_ERROR);
      if (Utils.isEmpty(wStep.getText())) {
        mb.setMessage(
            BaseMessages.getString(
                PKG, "FuzzyMatchDialog.NotStepSpecified.DialogMessage", wStep.getText()));
      } else {
        mb.setMessage(
            BaseMessages.getString(
                PKG, "FuzzyMatchDialog.StepCanNotFound.DialogMessage", wStep.getText()));
      }

      mb.setText(BaseMessages.getString(PKG, "FuzzyMatchDialog.StepCanNotFound.DialogTitle"));
      mb.open();
    }

    stepname = wStepname.getText(); // return value

    dispose();
  }
Exemplo n.º 3
0
  private void activegetCloserValue() {
    boolean enableRange =
        (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                    == FuzzyMatchMeta.OPERATION_TYPE_LEVENSHTEIN
                || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                    == FuzzyMatchMeta.OPERATION_TYPE_NEEDLEMAN_WUNSH
                || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                    == FuzzyMatchMeta.OPERATION_TYPE_DAMERAU_LEVENSHTEIN
                || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                    == FuzzyMatchMeta.OPERATION_TYPE_JARO
                || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                    == FuzzyMatchMeta.OPERATION_TYPE_JARO_WINKLER
                || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                    == FuzzyMatchMeta.OPERATION_TYPE_PAIR_SIMILARITY)
            && !wgetCloserValue.getSelection();

    wlseparator.setEnabled(enableRange);
    wseparator.setEnabled(enableRange);
    wlvalueField.setEnabled(wgetCloserValue.getSelection());
    wvalueField.setEnabled(wgetCloserValue.getSelection());

    activeAddFields();
  }
Exemplo n.º 4
0
  private void activeAlgorithm() {
    boolean enable =
        (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_LEVENSHTEIN
            || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_NEEDLEMAN_WUNSH
            || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_DAMERAU_LEVENSHTEIN
            || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_JARO
            || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_JARO_WINKLER
            || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_PAIR_SIMILARITY);

    wlgetCloserValue.setEnabled(enable);
    wgetCloserValue.setEnabled(enable);
    wlminValue.setEnabled(enable);
    wminValue.setEnabled(enable);
    wlmaxValue.setEnabled(enable);
    wmaxValue.setEnabled(enable);

    if (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
            == FuzzyMatchMeta.OPERATION_TYPE_JARO
        || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
            == FuzzyMatchMeta.OPERATION_TYPE_JARO_WINKLER
        || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
            == FuzzyMatchMeta.OPERATION_TYPE_PAIR_SIMILARITY) {
      if (Const.toDouble(transMeta.environmentSubstitute(wminValue.getText()), 0) > 1) {
        wminValue.setText(String.valueOf(1));
      }
      if (Const.toDouble(transMeta.environmentSubstitute(wmaxValue.getText()), 0) > 1) {
        wmaxValue.setText(String.valueOf(1));
      }
    }

    boolean enableCaseSensitive =
        (FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_LEVENSHTEIN
            || FuzzyMatchMeta.getAlgorithmTypeByDesc(wAlgorithm.getText())
                == FuzzyMatchMeta.OPERATION_TYPE_DAMERAU_LEVENSHTEIN);
    wlcaseSensitive.setEnabled(enableCaseSensitive);
    wcaseSensitive.setEnabled(enableCaseSensitive);
    activegetCloserValue();
  }