Index: lams_tool_notebook/.classpath
===================================================================
diff -u -re59bc835a5ec91886980d67af70c0f05a0f7ae73 -raebd696e1f508380e9154cf50fb2d61821287b0c
--- lams_tool_notebook/.classpath (.../.classpath) (revision e59bc835a5ec91886980d67af70c0f05a0f7ae73)
+++ lams_tool_notebook/.classpath (.../.classpath) (revision aebd696e1f508380e9154cf50fb2d61821287b0c)
@@ -20,5 +20,10 @@
+
+
+
+
+
Index: lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/service/NotebookService.java
===================================================================
diff -u -r61e93f3e13e9e2c7cade09a54b751e4be730cf01 -raebd696e1f508380e9154cf50fb2d61821287b0c
--- lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/service/NotebookService.java (.../NotebookService.java) (revision 61e93f3e13e9e2c7cade09a54b751e4be730cf01)
+++ lams_tool_notebook/src/java/org/lamsfoundation/lams/tool/notebook/service/NotebookService.java (.../NotebookService.java) (revision aebd696e1f508380e9154cf50fb2d61821287b0c)
@@ -33,6 +33,8 @@
import java.util.SortedMap;
import org.apache.log4j.Logger;
+import org.apache.tomcat.util.json.JSONException;
+import org.apache.tomcat.util.json.JSONObject;
import org.lamsfoundation.lams.contentrepository.client.IToolContentHandler;
import org.lamsfoundation.lams.events.IEventNotificationService;
import org.lamsfoundation.lams.learning.service.ILearnerService;
@@ -41,6 +43,7 @@
import org.lamsfoundation.lams.learningdesign.service.ImportToolContentException;
import org.lamsfoundation.lams.notebook.model.NotebookEntry;
import org.lamsfoundation.lams.notebook.service.ICoreNotebookService;
+import org.lamsfoundation.lams.rest.ToolRestManager;
import org.lamsfoundation.lams.tool.ToolContentImport102Manager;
import org.lamsfoundation.lams.tool.ToolContentManager;
import org.lamsfoundation.lams.tool.ToolOutput;
@@ -61,6 +64,7 @@
import org.lamsfoundation.lams.tool.notebook.util.NotebookException;
import org.lamsfoundation.lams.tool.service.ILamsToolService;
import org.lamsfoundation.lams.usermanagement.dto.UserDTO;
+import org.lamsfoundation.lams.util.JsonUtil;
import org.lamsfoundation.lams.util.MessageService;
import org.lamsfoundation.lams.util.WebUtil;
import org.lamsfoundation.lams.util.audit.IAuditService;
@@ -72,7 +76,7 @@
*/
public class NotebookService implements ToolSessionManager, ToolContentManager, INotebookService,
- ToolContentImport102Manager {
+ ToolContentImport102Manager, ToolRestManager {
static Logger logger = Logger.getLogger(NotebookService.class.getName());
@@ -601,4 +605,32 @@
public Class[] getSupportedToolOutputDefinitionClasses(int definitionType) {
return getNotebookOutputFactory().getSupportedDefinitionClasses(definitionType);
}
+
+ // ****************** REST methods *************************
+
+ @Override
+ public void createRestToolContent(Integer userID, Long toolContentID, JSONObject toolContentJSON) throws JSONException {
+ Date updateDate = new Date();
+
+ Notebook nb = new Notebook();
+ nb.setToolContentId(toolContentID);
+ nb.setTitle(toolContentJSON.getString("title"));
+ nb.setInstructions(toolContentJSON.getString("instructions"));
+ nb.setCreateBy(userID.longValue());
+ nb.setCreateDate(updateDate);
+ nb.setUpdateDate(updateDate);
+
+ nb.setLockOnFinished(JsonUtil.opt(toolContentJSON, "lockOnFinished", Boolean.FALSE));
+ nb.setAllowRichEditor(JsonUtil.opt(toolContentJSON, "allowRichTextEditor", Boolean.FALSE));
+ nb.setSubmissionDeadline((Date)JsonUtil.opt(toolContentJSON, "submissionDeadline", null));
+
+ nb.setContentInUse(false);
+ nb.setDefineLater(false);
+ this.saveOrUpdateNotebook(nb);
+
+ // TODO
+ // nb.setConditions(conditions);
+
+ }
+
}
\ No newline at end of file