From: <se...@us...> - 2008-05-31 10:19:47
|
Revision: 184 http://acmcontester.svn.sourceforge.net/acmcontester/?rev=184&view=rev Author: sem62 Date: 2008-05-31 03:19:53 -0700 (Sat, 31 May 2008) Log Message: ----------- added code for saving / loading ioRecords to / from config.xml Modified Paths: -------------- WebEditor/src/edu/lnu/FireFly/WebEditor/itemConfiguration/CompileQData.java Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/itemConfiguration/CompileQData.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/itemConfiguration/CompileQData.java 2008-05-31 09:03:39 UTC (rev 183) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/itemConfiguration/CompileQData.java 2008-05-31 10:19:53 UTC (rev 184) @@ -6,10 +6,33 @@ import org.dom4j.Element; import edu.lnu.FireFly.WebEditor.ItemModels.CompileQ.CompileQIOModel; +import edu.lnu.FireFly.WebEditor.ItemModels.CompileQ.CompileQIORecord; import edu.lnu.FireFly.WebEditor.ItemModels.CompileQ.CompileQPart; import edu.lnu.FireFly.WebEditor.ItemModels.CompileQ.CompileQPartsTableModel; public class CompileQData extends ItemData { + private String caption = ""; + + private String languge = "Any"; + private CompileQPartsTableModel parts = new CompileQPartsTableModel(); + + private CompileQIOModel ioRecords = new CompileQIOModel(); + + public String getCaption() { + return caption; + } + public CompileQIOModel getIoRecords() { + return ioRecords; + } + + public String getLanguge() { + return languge; + } + + public CompileQPartsTableModel getParts() { + return parts; + } + @Override public Element marshal() { Element root = DocumentHelper.createElement("ItemData"); @@ -38,21 +61,37 @@ partElement.setText(part.getAnswerText()); } + Element ioRecordsElemenet = root.addElement("ioRecords"); + for (int i=0; i < ioRecords.ioRecords.size(); i++){ + CompileQIORecord record = ioRecords.ioRecords.get(i); + + Element ioRecordElemenet = ioRecordsElemenet.addElement("IORecord"); + + ioRecordElemenet.addAttribute("number", String.valueOf(i)); + Element ioInput = ioRecordElemenet.addElement("Input"); + Element ioOutput = ioRecordElemenet.addElement("Output"); + + ioInput.add(DocumentHelper.createCDATA(record.getInputData())); + ioOutput.add(DocumentHelper.createCDATA(record.getOutputData())); + } + return root; } - private String caption = ""; - private String languge = "Any"; + public void setCaption(String caption) { + this.caption = caption; + } - public String getCaption() { - return caption; + public void setIoRecords(CompileQIOModel ioRecords) { + this.ioRecords = ioRecords; } - private CompileQPartsTableModel parts = new CompileQPartsTableModel(); - private CompileQIOModel ioRecords = new CompileQIOModel(); + public void setLanguge(String languge) { + this.languge = languge; + } - public void setCaption(String caption) { - this.caption = caption; + public void setParts(CompileQPartsTableModel parts) { + this.parts = parts; } @Override @@ -88,6 +127,26 @@ getParts().questionParts.add(part); } + + Element ioRecordsElement = root.element("ioRecords"); + Iterator<Element> ioIter = ioRecordsElement.elementIterator("IORecord"); + ioRecords.ioRecords.clear(); + while (ioIter.hasNext()) { + Element ioElement = ioIter.next(); + + int index = Integer.valueOf(ioElement.attributeValue("number")); + + CompileQIORecord record = new CompileQIORecord(); + + record.setInputData(ioElement.elementText("Input")); + record.setOutputData(ioElement.elementText("Output")); + + while (index >= ioRecords.ioRecords.size()){ + ioRecords.ioRecords.add(new CompileQIORecord()); + } + + ioRecords.ioRecords.set(index, record); + } } catch (Exception e) { e.printStackTrace(); return false; @@ -95,28 +154,4 @@ return true; } - - public CompileQPartsTableModel getParts() { - return parts; - } - - public void setParts(CompileQPartsTableModel parts) { - this.parts = parts; - } - - public String getLanguge() { - return languge; - } - - public void setLanguge(String languge) { - this.languge = languge; - } - - public CompileQIOModel getIoRecords() { - return ioRecords; - } - - public void setIoRecords(CompileQIOModel ioRecords) { - this.ioRecords = ioRecords; - } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |