known = true; file  = null;
known  = true; file   = null; prefix = ""; dir    = "";
  public Element writeSaver(Element parent, Object o, String name)      throws Exception {        Element                     node;    weka.core.converters.Saver  saver;    File                        file;    boolean                     known;    // for debugging only    if (DEBUG)       trace(new Throwable(), name);        m_CurrentNode = parent;        saver = (weka.core.converters.Saver) o;    node   = addElement(parent, name, saver.getClass().getName(), false);    known = true;    file  = null;    // file    if (saver instanceof weka.core.converters.ArffSaver)      file = ((weka.core.converters.ArffSaver) saver).retrieveFile();    else if (saver instanceof weka.core.converters.C45Saver)      file = ((weka.core.converters.C45Saver) saver).retrieveFile();    else if (saver instanceof weka.core.converters.CSVSaver)      file = ((weka.core.converters.CSVSaver) saver).retrieveFile();    else if (saver instanceof weka.core.converters.SerializedInstancesSaver)      file = ((weka.core.converters.SerializedInstancesSaver) saver).retrieveFile();    else      known = false;        if (!known)      System.out.println("WARNING: unknown saver class '" + saver.getClass().getName() + "' - cannot retrieve file!");        // only save it, if it's a real file!    if ( (file == null) || (file.isDirectory()) )      invokeWriteToXML(node, "", VAL_FILE);    else      invokeWriteToXML(node, file.getAbsolutePath(), VAL_FILE);        return node;  }