private CaseExpanderWrapper(DataWrapper wrapper) {
    DataFilter filter = new CaseExpander();
    DataSet columnDataModel = (DataSet) wrapper.getSelectedDataModel();
    setDataModel(filter.filter(columnDataModel));
    setSourceGraph(wrapper.getSourceGraph());

    LogDataUtils.logDataModelList(
        "Data in which case multipliers of parent node data have been multiplied out.",
        getDataModelList());
  }
  public RegressionInterpolatorWrapper(DataWrapper data) {
    if (data == null) {
      throw new NullPointerException("The givan data must not be null");
    }
    DataModel model = data.getSelectedDataModel();
    if ((!(model instanceof DataSet))) {
      throw new IllegalArgumentException("Data must be tabular");
    }
    DataFilter interpolator = new RegressionInterpolator();
    this.setDataModel(interpolator.filter((DataSet) model));
    this.setSourceGraph(data.getSourceGraph());

    LogDataUtils.logDataModelList(
        "Parent data in which missing values have been replaced by regression predictions.",
        getDataModelList());
  }
  /** Performs the action of loading a session from a file. */
  public void actionPerformed(ActionEvent e) {
    DataModel dataModel = getDataEditor().getSelectedDataModel();

    if (dataModel instanceof DataSet) {
      DataSet dataSet = (DataSet) dataModel;

      DataFilter interpolator = new ModeInterpolator();
      DataSet newDataSet = interpolator.filter(dataSet);

      DataModelList list = new DataModelList();
      list.add(newDataSet);
      getDataEditor().reset(list);
      getDataEditor().selectFirstTab();
    } else if (dataModel instanceof ICovarianceMatrix) {
      JOptionPane.showMessageDialog(JOptionUtils.centeringComp(), "Must be a tabular data set.");
    }
  }