From: <se...@us...> - 2008-05-10 08:20:20
|
Revision: 115 http://acmcontester.svn.sourceforge.net/acmcontester/?rev=115&view=rev Author: sem62 Date: 2008-05-10 01:20:21 -0700 (Sat, 10 May 2008) Log Message: ----------- * Added auto save every Settings.autoSaveInterval milliseconds. * now updateItemResource is one for all models Modified Paths: -------------- WebEditor/src/edu/lnu/FireFly/WebEditor/Data/SummaryPageManager.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterItemData.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemData.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureData.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionData.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageData.java WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java WebEditor/src/edu/lnu/FireFly/WebEditor/Settings.java WebEditor/src/edu/lnu/FireFly/WebEditor/WSClients/WebEditorServiceClient.java WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java Added Paths: ----------- WebEditor/src/edu/lnu/FireFly/WebEditor/Data/AutoSaveThread.java Added: WebEditor/src/edu/lnu/FireFly/WebEditor/Data/AutoSaveThread.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/Data/AutoSaveThread.java (rev 0) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/Data/AutoSaveThread.java 2008-05-10 08:20:21 UTC (rev 115) @@ -0,0 +1,26 @@ +package edu.lnu.FireFly.WebEditor.Data; + +import edu.lnu.FireFly.FFManifest.parser.TestDocException; +import edu.lnu.FireFly.WebEditor.Settings; +import edu.lnu.FireFly.WebEditor.WebEditor; + +public class AutoSaveThread implements Runnable { + + @Override + public void run() { + try { + while (true) { + Thread.sleep(Settings.getInstance().getAutoSaveInterval()); + try { + WebEditor.instance.saveManifest(); + } catch (TestDocException e) { + System.out.println("WARNING: Can't save manifest."); + } + } + } catch (InterruptedException e) { + // If interrupt sleepping. + // Do nothing + } + } + +} Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/Data/SummaryPageManager.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/Data/SummaryPageManager.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/Data/SummaryPageManager.java 2008-05-10 08:20:21 UTC (rev 115) @@ -64,7 +64,7 @@ insertAllNeededObjectivesIntoSummaryPage(root); - ((SummaryPageModel) model).updateItemResource(summaryPage, true); + ((SummaryPageModel) model).updateItemResource(summaryPage, false); } else { deleteSummaryPageIfExists(root); } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterItemData.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterItemData.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterItemData.java 2008-05-10 08:20:21 UTC (rev 115) @@ -3,6 +3,7 @@ import java.io.Reader; import org.dom4j.Document; +import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.SAXReader; @@ -11,6 +12,22 @@ public class ChapterItemData extends ItemData { private boolean showSummaryPage = true; + @Override + public String marshal(TreeItem anItem) { + Document doc = DocumentHelper.createDocument(); + Element root = doc.addElement("ChapterItemData"); + root.addElement("ShowSummaryPage").setText( + String.valueOf(isShowSummaryPage())); + + root.addElement("ShowOnSummaryPage").setText( + String.valueOf(getShowOnSummaryPage())); + + root.addElement("Configuration").setText( + String.valueOf(getConfiguration())); + + return doc.asXML(); + } + private boolean flow; private boolean choice; Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Chapter/ChapterModel.java 2008-05-10 08:20:21 UTC (rev 115) @@ -1,40 +1,13 @@ package edu.lnu.FireFly.WebEditor.ItemModels.Chapter; -import org.dom4j.Document; -import org.dom4j.DocumentHelper; -import org.dom4j.Element; - -import edu.lnu.FireFly.FFManifest.Organization; import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.FFManifest.item.Item; -import edu.lnu.FireFly.WebEditor.Data.SummaryPageManager; import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.GUI.Dialogs.ChapterPropertiestsDlg; import edu.lnu.FireFly.WebEditor.ItemModels.ItemData; import edu.lnu.FireFly.WebEditor.ItemModels.ResourcedItemModel; -import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; public class ChapterModel extends ResourcedItemModel { - @Override - protected String getDefaultTitle() { - return "New chapter"; - } - - @Override - public boolean getLimitConditionsMenuVisible() { - return false; - } - - @Override - public boolean getShowOnSummaryPageMenuVisible() { - return true; - } - - @Override - public boolean getShowSummaryPageMenuVisible() { - return true; - } - public ChapterModel() { super(); modelName = "ChapterModel"; @@ -60,6 +33,35 @@ TreeDataModel.getInstance().treeNodesChanged(item); } + @Override + protected ItemData createItemDataInstance() { + return new ChapterItemData(); + } + + @Override + protected String getConfFileName(TreeItem anItem) { + return getIdentifier(anItem); + } + + private ChapterItemData getData(TreeItem anItem) { + return (ChapterItemData) getItemData(anItem); + } + + @Override + protected String getDefaultTitle() { + return "New chapter"; + } + + @Override + public boolean getLimitConditionsMenuVisible() { + return false; + } + + @Override + public boolean getShowOnSummaryPageMenuVisible() { + return true; + } + public boolean getShowSummaryPage(TreeItem anItem) { ChapterItemData itemData = getData(anItem); @@ -74,6 +76,11 @@ } @Override + public boolean getShowSummaryPageMenuVisible() { + return true; + } + + @Override public boolean isApplaingForItem(TreeItem treeItem) { if (treeItem.getClass() != Item.class) { return false; @@ -127,45 +134,9 @@ } } - private ChapterItemData getData(TreeItem anItem) { - return (ChapterItemData) getItemData(anItem); - } - @Override - public boolean updateItemResource(TreeItem anItem, - boolean updateSummaryPages) { - ChapterItemData itemData = getData(anItem); - - Document doc = DocumentHelper.createDocument(); - Element root = doc.addElement(modelName); - root.addElement("ShowSummaryPage").setText( - String.valueOf(itemData.isShowSummaryPage())); - - root.addElement("ShowOnSummaryPage").setText( - String.valueOf(itemData.getShowOnSummaryPage())); - - root.addElement("Configuration").setText( - String.valueOf(itemData.getConfiguration())); - - String identifier = "unknown"; - if (anItem.getClass() == Organization.class) { - identifier = ((Organization) anItem).identifier; - } else { - identifier = ((Item) anItem).identifier; - } - - WebEditorServiceClient.getInstance().setFileContent( - identifier + ".conf", doc.asXML()); - - if (updateSummaryPages) { - SummaryPageManager.getInstance().updateSummaryPages(); - } - - return true; + protected void updateResourceFile(TreeItem anItem) { + // do nothing. + // Chapter currently haven't resource file } - - @Override - protected ItemData createItemDataInstance() { - return new ChapterItemData(); - } } \ No newline at end of file Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemData.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemData.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemData.java 2008-05-10 08:20:21 UTC (rev 115) @@ -16,4 +16,5 @@ } public abstract boolean unmarshal(Reader res, TreeItem anItem); + public abstract String marshal(TreeItem anItem); } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ItemModel.java 2008-05-10 08:20:21 UTC (rev 115) @@ -84,9 +84,9 @@ return resource.identifier; } - public ItemData getItemData(TreeItem item) { - if (questionsData.containsKey(item)) { - return questionsData.get(item); + public ItemData getItemData(TreeItem anItem) { + if (questionsData.containsKey(anItem)) { + return questionsData.get(anItem); } return null; @@ -141,6 +141,14 @@ public abstract boolean getShowSummaryPageMenuVisible(); + public final String getIdentifierRef(TreeItem anItem) { + if (anItem.getClass() == Item.class){ + return ((Item)anItem).identifierref; + } + + return null; + } + public final String getIdentifier(TreeItem anItem) { if (anItem.getClass() == Item.class){ return ((Item)anItem).identifier; Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureData.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureData.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureData.java 2008-05-10 08:20:21 UTC (rev 115) @@ -3,6 +3,7 @@ import java.io.Reader; import org.dom4j.Document; +import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.SAXReader; @@ -52,4 +53,17 @@ return true; } + + @Override + public String marshal(TreeItem anItem) { + Document doc = DocumentHelper.createDocument(); + Element root = doc.addElement("LectureData"); + root.addElement("caption").setText(getCaption()); + root.addElement("content").setText(getContent()); + + root.addElement("ShowOnSummaryPage").setText( + String.valueOf(getShowOnSummaryPage())); + + return doc.asXML(); + } } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/Lecture/LectureModel.java 2008-05-10 08:20:21 UTC (rev 115) @@ -1,20 +1,14 @@ package edu.lnu.FireFly.WebEditor.ItemModels.Lecture; -import org.dom4j.Document; -import org.dom4j.DocumentHelper; -import org.dom4j.Element; - import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.FFManifest.item.Item; import edu.lnu.FireFly.FFManifest.resource.Resource; import edu.lnu.FireFly.WebEditor.WebEditor; -import edu.lnu.FireFly.WebEditor.Data.SummaryPageManager; import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.GUI.Dialogs.LecturePropertiestsDlg; import edu.lnu.FireFly.WebEditor.ItemModels.ItemData; import edu.lnu.FireFly.WebEditor.ItemModels.ResourcedItemModel; import edu.lnu.FireFly.WebEditor.ItemModels.Template; -import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; public class LectureModel extends ResourcedItemModel { @Override @@ -69,8 +63,7 @@ } @Override - public boolean updateItemResource(TreeItem anItem, - boolean updateSummaryPages) { + protected void updateResourceFile(TreeItem anItem) { Resource resource = WebEditor.instance.getManifest().resources .findResourceByIdentifier(((Item) anItem).identifierref); @@ -82,21 +75,6 @@ template.setProperty("content", itemData.getContent()); template.updateResource(); - - Document doc = DocumentHelper.createDocument(); - Element root = doc.addElement(modelName); - root.addElement("caption").setText(itemData.getCaption()); - root.addElement("content").setText(itemData.getContent()); - - root.addElement("ShowOnSummaryPage").setText( - String.valueOf(itemData.getShowOnSummaryPage())); - - WebEditorServiceClient.getInstance().setFileContent( - resource.identifier + ".conf", doc.asXML()); - - SummaryPageManager.getInstance().updateSummaryPages(); - - return true; } @Override Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/ResourcedItemModel.java 2008-05-10 08:20:21 UTC (rev 115) @@ -5,6 +5,9 @@ import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.FFManifest.item.Item; +import edu.lnu.FireFly.FFManifest.resource.Resource; +import edu.lnu.FireFly.WebEditor.WebEditor; +import edu.lnu.FireFly.WebEditor.Data.SummaryPageManager; import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; @@ -88,7 +91,7 @@ public final boolean synchronizeItemWithResource(TreeItem anItem, String location) { - String res = loadResource(location, getIdentifier(anItem)); + String res = loadResource(location, getConfFileName(anItem)); if (res == null || res.trim().equals("")) { return false; @@ -106,6 +109,13 @@ return true; } + protected String getConfFileName(TreeItem anItem) { + Resource resource = WebEditor.instance.getManifest().resources + .findResourceByIdentifier(getIdentifierRef(anItem)); + + return resource.identifier; + } + protected final void initializeDataForItem(Item anItem){ ItemData itemData = createItemDataInstance(); @@ -115,4 +125,22 @@ setItemData(anItem, itemData); } + + protected abstract void updateResourceFile(TreeItem anItem); + + public boolean updateItemResource(TreeItem anItem, + boolean updateSummaryPages) { + + updateResourceFile(anItem); + ItemData itemData = getItemData(anItem); + + WebEditorServiceClient.getInstance().setFileContent( + getConfFileName(anItem) + ".conf", itemData.marshal(anItem)); + + if (updateSummaryPages) { + SummaryPageManager.getInstance().updateSummaryPages(); + } + + return true; + } } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionData.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionData.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionData.java 2008-05-10 08:20:21 UTC (rev 115) @@ -4,6 +4,7 @@ import java.util.Iterator; import org.dom4j.Document; +import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.SAXReader; @@ -11,6 +12,36 @@ import edu.lnu.FireFly.WebEditor.ItemModels.ItemData; public class SimpleQuestionData extends ItemData { + @Override + public String marshal(TreeItem anItem) { + Document doc = DocumentHelper.createDocument(); + Element root = doc.addElement("SimpleQuestion"); + root.addElement("caption").setText(getCaption()); + root.addElement("question").setText(getQuestion()); + + root.addElement("ShowOnSummaryPage").setText( + String.valueOf(getShowOnSummaryPage())); + + Element ans = root.addElement("answers"); + + ans.addAttribute("singleVariant", String.valueOf(getAnswers() + .getSingleVariant())); + + Iterator<SimpleQuestionAnswer> iter = getAnswers().answers.iterator(); + + while (iter.hasNext()) { + SimpleQuestionAnswer answer = iter.next(); + + Element ansEl = ans.addElement("answer"); + ansEl + .addAttribute("point", String.valueOf(answer + .getAnswerPoint())); + ansEl.setText(answer.getAnswerText()); + } + + return doc.asXML(); + } + private SimpleQuestionAnswersDataModel answers = new SimpleQuestionAnswersDataModel(); private String caption = ""; private String question = ""; Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SimpleQuestion/SimpleQuestionModel.java 2008-05-10 08:20:21 UTC (rev 115) @@ -2,21 +2,15 @@ import java.util.Iterator; -import org.dom4j.Document; -import org.dom4j.DocumentHelper; -import org.dom4j.Element; - import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.FFManifest.item.Item; import edu.lnu.FireFly.FFManifest.resource.Resource; import edu.lnu.FireFly.WebEditor.WebEditor; -import edu.lnu.FireFly.WebEditor.Data.SummaryPageManager; import edu.lnu.FireFly.WebEditor.GUI.TreeDataModel; import edu.lnu.FireFly.WebEditor.GUI.Dialogs.SimpleQuestionPropertiestsDlg; import edu.lnu.FireFly.WebEditor.ItemModels.ItemData; import edu.lnu.FireFly.WebEditor.ItemModels.ResourcedItemModel; import edu.lnu.FireFly.WebEditor.ItemModels.Template; -import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; public class SimpleQuestionModel extends ResourcedItemModel { @Override @@ -100,8 +94,7 @@ } @Override - public boolean updateItemResource(TreeItem anItem, - boolean updateSummaryPages) { + protected void updateResourceFile(TreeItem anItem) { Resource resource = WebEditor.instance.getManifest().resources .findResourceByIdentifier(((Item) anItem).identifierref); @@ -125,38 +118,6 @@ template.setProperty("answers", answers); template.updateResource(); - - Document doc = DocumentHelper.createDocument(); - Element root = doc.addElement(modelName); - root.addElement("caption").setText(itemData.getCaption()); - root.addElement("question").setText(itemData.getQuestion()); - - root.addElement("ShowOnSummaryPage").setText( - String.valueOf(itemData.getShowOnSummaryPage())); - - Element ans = root.addElement("answers"); - - ans.addAttribute("singleVariant", String.valueOf(itemData.getAnswers() - .getSingleVariant())); - - iter = itemData.getAnswers().answers.iterator(); - - while (iter.hasNext()) { - SimpleQuestionAnswer answer = iter.next(); - - Element ansEl = ans.addElement("answer"); - ansEl - .addAttribute("point", String.valueOf(answer - .getAnswerPoint())); - ansEl.setText(answer.getAnswerText()); - } - - WebEditorServiceClient.getInstance().setFileContent(resource.identifier + ".conf", - doc.asXML()); - - SummaryPageManager.getInstance().updateSummaryPages(); - - return true; } @Override Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageData.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageData.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageData.java 2008-05-10 08:20:21 UTC (rev 115) @@ -2,12 +2,23 @@ import java.io.Reader; +import org.dom4j.Document; +import org.dom4j.DocumentHelper; + import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.WebEditor.ItemModels.ItemData; public class SummaryPageData extends ItemData { @Override + public String marshal(TreeItem anItem) { + Document doc = DocumentHelper.createDocument(); + doc.addElement(this.getClass().getSimpleName()); + + return doc.asXML(); + } + + @Override public boolean unmarshal(Reader res, TreeItem anItem) { // TODO Auto-generated method stub return true; Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/ItemModels/SummaryPageModel/SummaryPageModel.java 2008-05-10 08:20:21 UTC (rev 115) @@ -1,8 +1,5 @@ package edu.lnu.FireFly.WebEditor.ItemModels.SummaryPageModel; -import org.dom4j.Document; -import org.dom4j.DocumentHelper; - import edu.lnu.FireFly.FFManifest.TreeItem; import edu.lnu.FireFly.FFManifest.item.Item; import edu.lnu.FireFly.FFManifest.resource.Resource; @@ -16,7 +13,6 @@ import edu.lnu.FireFly.WebEditor.ItemModels.Chapter.ChapterModel; import edu.lnu.FireFly.WebEditor.ItemModels.Lecture.LectureModel; import edu.lnu.FireFly.WebEditor.ItemModels.SimpleQuestion.SimpleQuestionModel; -import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; public class SummaryPageModel extends ResourcedItemModel { @Override @@ -38,40 +34,13 @@ modelName = "SummaryPageModel"; } - @Override - public boolean updateItemResource(TreeItem anItem, - boolean updateSummaryPages) { - Resource resource = WebEditor.instance.getManifest().resources - .findResourceByIdentifier(((Item) anItem).identifierref); - - Template template = new Template(resource.getFullHref(), this); - - String content = "<script type=\"text/javascript\">" - + getSummaryPageContent(anItem.getParent()) + "</script>"; - - template.setProperty("content", content); - template.setProperty("title", anItem.getTitle()); - - template.updateResource(); - - Document doc = DocumentHelper.createDocument(); - - /* Element root = */doc.addElement(this.getClass().getSimpleName()); - // root.addElement("content").setText(getData(item).getContent()); - - WebEditorServiceClient.getInstance().setFileContent(resource.identifier + ".conf", - doc.asXML()); - - return true; - } - private String getSummaryPageContent(TreeItem parent) { int childsCount = parent.getChildCount(); ItemModel model = ItemModels.getModelFromItem(parent); String res = "openBlock(\"" + parent.getTitle() + "\", \"" - + model.getModelName() + "\", \"" - + model.getIdentifier(parent) + "\");\n"; + + model.getModelName() + "\", \"" + model.getIdentifier(parent) + + "\");\n"; for (int i = 0; i < childsCount; i++) { TreeItem item = parent.getChild(i); @@ -141,4 +110,20 @@ return new SummaryPageData(); } + @Override + protected void updateResourceFile(TreeItem anItem) { + Resource resource = WebEditor.instance.getManifest().resources + .findResourceByIdentifier(((Item) anItem).identifierref); + + Template template = new Template(resource.getFullHref(), this); + + String content = "<script type=\"text/javascript\">" + + getSummaryPageContent(anItem.getParent()) + "</script>"; + + template.setProperty("content", content); + template.setProperty("title", anItem.getTitle()); + + template.updateResource(); + } + } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/Settings.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/Settings.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/Settings.java 2008-05-10 08:20:21 UTC (rev 115) @@ -1,11 +1,13 @@ package edu.lnu.FireFly.WebEditor; public class Settings { - private String courseLocation = ""; - private String templateLocation = ""; - private String serviceLocation = ""; - private String resourceLocation = ""; + private String courseLocation = "http://127.0.0.1/sem/course/"; + private String templateLocation = "http://127.0.0.1/sem/WebEditor/template/"; + private String serviceLocation = "http://127.0.0.1/sem/WebEditor/service/"; + private String resourceLocation = "http://127.0.0.1/sem/WebEditor/"; + private long autoSaveInterval = 5 * 60 * 1000; + public static Settings obj = null; public static Settings getInstance(){ @@ -48,4 +50,12 @@ public void setResourceLocation(String resourceLocation) { this.resourceLocation = resourceLocation; } + + public long getAutoSaveInterval() { + return autoSaveInterval; + } + + public void setAutoSaveInterval(long autoSaveInterval) { + this.autoSaveInterval = autoSaveInterval; + } } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/WSClients/WebEditorServiceClient.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/WSClients/WebEditorServiceClient.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/WSClients/WebEditorServiceClient.java 2008-05-10 08:20:21 UTC (rev 115) @@ -92,7 +92,6 @@ contents.put(fName, result); } - System.out.print("result: " + result); return result; } @@ -140,8 +139,5 @@ } catch (Exception e) { e.printStackTrace(); } - - System.out.println("setFileContent(). result is:"); - System.out.println(result); } } Modified: WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java =================================================================== --- WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java 2008-05-09 19:42:16 UTC (rev 114) +++ WebEditor/src/edu/lnu/FireFly/WebEditor/WebEditor.java 2008-05-10 08:20:21 UTC (rev 115) @@ -18,6 +18,7 @@ import edu.lnu.FireFly.FFManifest.parser.Parser; import edu.lnu.FireFly.FFManifest.parser.TestDocException; import edu.lnu.FireFly.FFManifest.resource.Resource; +import edu.lnu.FireFly.WebEditor.Data.AutoSaveThread; import edu.lnu.FireFly.WebEditor.Data.ManifestFactory; import edu.lnu.FireFly.WebEditor.Data.SummaryPageManager; import edu.lnu.FireFly.WebEditor.GUI.CourseTreePopupMenu; @@ -30,8 +31,8 @@ import edu.lnu.FireFly.WebEditor.ItemModels.SummaryPageModel.SummaryPageModel; import edu.lnu.FireFly.WebEditor.WSClients.WebEditorServiceClient; -public class WebEditor extends AppletWithWYSIWYGEditor implements ActionListener, - TreeSelectionListener { +public class WebEditor extends AppletWithWYSIWYGEditor implements + ActionListener, TreeSelectionListener { /** * @@ -63,13 +64,13 @@ } } - private void saveManifest() throws TestDocException { + public void saveManifest() throws TestDocException { Parser parser = new Parser(); WebEditorServiceClient.getInstance().setFileContent("imsmanifest.xml", parser.toXML(manifest)); } - private void openManifest() throws TestDocException { + public void openManifest() throws TestDocException { Parser parser = new Parser(); manifest = parser.fromXML(WebEditorServiceClient.getInstance() .getFileContent("imsmanifest.xml", "course")); @@ -85,15 +86,24 @@ @Override public void init() { - Settings.getInstance() - .setCourseLocation(getParameter("courseLocation")); - Settings.getInstance().setServiceLocation( - getParameter("serviceLocation")); - Settings.getInstance().setTemplateLocation( - getParameter("templateLocation")); - Settings.getInstance().setResourceLocation( - getParameter("resourceLocation")); + String paramCourseLocation = getParameter("courseLocation"); + String paramServiceLocation = getParameter("serviceLocation"); + String paramTemplateLocation = getParameter("templateLocation"); + String paramResourceLocation = getParameter("resourceLocation"); + if (paramCourseLocation != null){ + Settings.getInstance().setCourseLocation(paramCourseLocation); + } + if (paramServiceLocation != null){ + Settings.getInstance().setServiceLocation(paramServiceLocation); + } + if (paramTemplateLocation != null){ + Settings.getInstance().setTemplateLocation(paramTemplateLocation); + } + if (paramResourceLocation != null){ + Settings.getInstance().setResourceLocation(paramResourceLocation); + } + instance = this; initMenu(); @@ -104,15 +114,23 @@ ItemModels.registerModel(new OrganizationModel()); ItemModels.registerModel(new SummaryPageModel()); - CreateNewCourse(); + try { + openManifest(); + } catch (TestDocException e) { + System.out.println("Can't load course. Creating new..."); + CreateNewCourse(); + } + Thread autoSaveThread = new Thread(new AutoSaveThread()); + + autoSaveThread.start(); + tree = new JTree(TreeDataModel.getInstance()); this.add(new JScrollPane(tree)); tree.addTreeSelectionListener(this); tree.addMouseListener(new CourseTreePopupMenu()); - } private void CreateNewCourse() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |