Index: lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/tool/ToolContent.hbm.xml
===================================================================
RCS file: /usr/local/cvsroot/lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/tool/ToolContent.hbm.xml,v
diff -u -r1.1 -r1.2
--- lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/tool/ToolContent.hbm.xml 28 Jan 2005 04:08:39 -0000 1.1
+++ lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/tool/ToolContent.hbm.xml 8 Feb 2005 23:48:10 -0000 1.2
@@ -37,20 +37,11 @@
-
-
- @hibernate.property
- column="tool_content_key"
- length="20"
- not-null="true"
-
-
+
+
+
Index: lams_common/src/java/org/lamsfoundation/lams/tool/ToolContent.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/tool/ToolContent.java,v
diff -u -r1.1 -r1.2
--- lams_common/src/java/org/lamsfoundation/lams/tool/ToolContent.java 28 Jan 2005 04:20:45 -0000 1.1
+++ lams_common/src/java/org/lamsfoundation/lams/tool/ToolContent.java 8 Feb 2005 23:48:10 -0000 1.2
@@ -1,6 +1,7 @@
package org.lamsfoundation.lams.tool;
import java.io.Serializable;
+import java.util.HashSet;
import java.util.Set;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
@@ -18,15 +19,18 @@
private Long toolContentId;
/** persistent field */
- private long toolContentKey;
+ private Tool tool;
/** persistent field */
private Set activities;
+ public ToolContent(Tool tool){
+ this(null,tool,new HashSet());
+ }
/** full constructor */
- public ToolContent(Long toolContentId, long toolContentKey, Set activities) {
+ public ToolContent(Long toolContentId, Tool tool, Set activities) {
this.toolContentId = toolContentId;
- this.toolContentKey = toolContentKey;
+ this.tool = tool;
this.activities = activities;
}
@@ -50,18 +54,15 @@
}
/**
- * @hibernate.property
- * column="tool_content_key"
- * length="20"
- * not-null="true"
- *
+ * @hibernate.many-to-one not-null="true"
+ * @hibernate.column name="tool_id"
*/
- public long getToolContentKey() {
- return this.toolContentKey;
+ public Tool getTool() {
+ return this.tool;
}
- public void setToolContentKey(long toolContentKey) {
- this.toolContentKey = toolContentKey;
+ public void setTool(Tool tool) {
+ this.tool = tool;
}
/**
Index: lams_common/src/java/org/lamsfoundation/lams/tool/ToolContentIDGenerator.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/src/java/org/lamsfoundation/lams/tool/ToolContentIDGenerator.java,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ lams_common/src/java/org/lamsfoundation/lams/tool/ToolContentIDGenerator.java 8 Feb 2005 23:48:10 -0000 1.1
@@ -0,0 +1,39 @@
+/* ********************************************************************************
+ * Copyright Notice
+ * =================
+ * This file contains propriety information of LAMS Foundation.
+ * Copying or reproduction with prior written permission is prohibited.
+ * Copyright (c) 2005
+ * Created on 9/02/2005
+ ******************************************************************************** */
+
+package org.lamsfoundation.lams.tool;
+
+import org.lamsfoundation.lams.tool.dao.IToolContentDAO;
+
+
+/**
+ *
+ * @author Jacky Fang 9/02/2005
+ *
+ */
+public class ToolContentIDGenerator
+{
+ private IToolContentDAO toolContentDao;
+
+
+ /**
+ * @param toolContentDao The toolContentDao to set.
+ */
+ public void setToolContentDao(IToolContentDAO toolContentDao)
+ {
+ this.toolContentDao = toolContentDao;
+ }
+
+ public Long getToolContentIDFor(Tool tool)
+ {
+ ToolContent newContent = new ToolContent(tool);
+ toolContentDao.saveToolContent(newContent);
+ return newContent.getToolContentId();
+ }
+}
Index: lams_common/test/java/org/lamsfoundation/lams/tool/TestToolContentIDGenerator.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/tool/Attic/TestToolContentIDGenerator.java,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ lams_common/test/java/org/lamsfoundation/lams/tool/TestToolContentIDGenerator.java 8 Feb 2005 23:48:10 -0000 1.1
@@ -0,0 +1,62 @@
+/* ********************************************************************************
+ * Copyright Notice
+ * =================
+ * This file contains propriety information of LAMS Foundation.
+ * Copying or reproduction with prior written permission is prohibited.
+ * Copyright (c) 2005
+ * Created on 9/02/2005
+ ******************************************************************************** */
+
+package org.lamsfoundation.lams.tool;
+
+
+/**
+ *
+ * @author Jacky Fang 9/02/2005
+ *
+ */
+public class TestToolContentIDGenerator extends ToolDataAccessTestCase
+{
+
+ private ToolContentIDGenerator toolContentIDGenerator;
+ /*
+ * @see ToolDataAccessTestCase#setUp()
+ */
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+ testTool = toolDao.getToolByID(super.TEST_TOOL_ID);
+ toolContentIDGenerator = (ToolContentIDGenerator)this.ac.getBean("toolContentIDGenerator");
+ }
+
+ /*
+ * @see ToolDataAccessTestCase#tearDown()
+ */
+ protected void tearDown() throws Exception
+ {
+ super.tearDown();
+ }
+
+ /**
+ * Constructor for TestToolContentIDGenerator.
+ * @param arg0
+ */
+ public TestToolContentIDGenerator(String arg0)
+ {
+ super(arg0);
+ }
+
+ public void testGetToolContentIDFor()
+ {
+ long id;
+ long nextId;
+ Long newId = toolContentIDGenerator.getToolContentIDFor(testTool);
+ assertNotNull("verify the new id has been created",newId);
+ id = newId.longValue();
+ newId = toolContentIDGenerator.getToolContentIDFor(testTool);
+ assertNotNull("verify the new id has been created",newId);
+ nextId = newId.longValue();
+ assertTrue("verify the new id is larger than old one",nextId==id+1);
+ }
+
+}
Index: lams_common/test/java/org/lamsfoundation/lams/tool/ToolDataAccessTestCase.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/tool/Attic/ToolDataAccessTestCase.java,v
diff -u -r1.1 -r1.2
--- lams_common/test/java/org/lamsfoundation/lams/tool/ToolDataAccessTestCase.java 8 Feb 2005 06:13:45 -0000 1.1
+++ lams_common/test/java/org/lamsfoundation/lams/tool/ToolDataAccessTestCase.java 8 Feb 2005 23:48:10 -0000 1.2
@@ -11,7 +11,9 @@
import org.lamsfoundation.lams.AbstractLamsCommonTestCase;
import org.lamsfoundation.lams.tool.dao.IToolContentDAO;
+import org.lamsfoundation.lams.tool.dao.IToolDAO;
import org.lamsfoundation.lams.tool.dao.hibernate.ToolContentDAO;
+import org.lamsfoundation.lams.tool.dao.hibernate.ToolDAO;
/**
@@ -23,6 +25,11 @@
{
protected IToolContentDAO toolContentDao;
+ protected IToolDAO toolDao;
+
+ //Test tool id - survey tool
+ protected final Long TEST_TOOL_ID = new Long(6);
+ protected Tool testTool;
/*
* @see AbstractLamsCommonTestCase#setUp()
*/
@@ -31,6 +38,8 @@
super.setUp();
toolContentDao = (ToolContentDAO)this.ac.getBean("toolContentDAO");
+ toolDao = (ToolDAO)this.ac.getBean("toolDAO");
+
}
/*
Index: lams_common/test/java/org/lamsfoundation/lams/tool/toolApplicationContext.xml
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/tool/Attic/toolApplicationContext.xml,v
diff -u -r1.1 -r1.2
--- lams_common/test/java/org/lamsfoundation/lams/tool/toolApplicationContext.xml 8 Feb 2005 06:13:45 -0000 1.1
+++ lams_common/test/java/org/lamsfoundation/lams/tool/toolApplicationContext.xml 8 Feb 2005 23:48:10 -0000 1.2
@@ -9,5 +9,24 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRES_NEW,ISOLATION_READ_UNCOMMITTED
+
+
+
+
Index: lams_common/test/java/org/lamsfoundation/lams/tool/dao/TestToolContentDAO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/tool/dao/Attic/TestToolContentDAO.java,v
diff -u -r1.1 -r1.2
--- lams_common/test/java/org/lamsfoundation/lams/tool/dao/TestToolContentDAO.java 8 Feb 2005 06:13:45 -0000 1.1
+++ lams_common/test/java/org/lamsfoundation/lams/tool/dao/TestToolContentDAO.java 8 Feb 2005 23:48:10 -0000 1.2
@@ -9,6 +9,7 @@
package org.lamsfoundation.lams.tool.dao;
+import org.lamsfoundation.lams.tool.ToolContent;
import org.lamsfoundation.lams.tool.ToolDataAccessTestCase;
@@ -26,6 +27,7 @@
protected void setUp() throws Exception
{
super.setUp();
+ testTool = toolDao.getToolByID(super.TEST_TOOL_ID);
}
/*
@@ -47,7 +49,9 @@
public void testSaveToolContent()
{
-
+ ToolContent newContent = new ToolContent(testTool);
+ toolContentDao.saveToolContent(newContent);
+ assertNotNull(newContent.getToolContentId());
}
}
Index: lams_common/test/java/org/lamsfoundation/lams/tool/dao/TestToolDAO.java
===================================================================
RCS file: /usr/local/cvsroot/lams_common/test/java/org/lamsfoundation/lams/tool/dao/Attic/TestToolDAO.java,v
diff -u
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ lams_common/test/java/org/lamsfoundation/lams/tool/dao/TestToolDAO.java 8 Feb 2005 23:48:10 -0000 1.1
@@ -0,0 +1,57 @@
+/* ********************************************************************************
+ * Copyright Notice
+ * =================
+ * This file contains propriety information of LAMS Foundation.
+ * Copying or reproduction with prior written permission is prohibited.
+ * Copyright (c) 2005
+ * Created on 9/02/2005
+ ******************************************************************************** */
+
+package org.lamsfoundation.lams.tool.dao;
+
+import org.lamsfoundation.lams.tool.ToolDataAccessTestCase;
+
+
+/**
+ *
+ * @author Jacky Fang 9/02/2005
+ *
+ */
+public class TestToolDAO extends ToolDataAccessTestCase
+{
+
+ /*
+ * @see ToolDataAccessTestCase#setUp()
+ */
+ protected void setUp() throws Exception
+ {
+ super.setUp();
+ }
+
+ /*
+ * @see ToolDataAccessTestCase#tearDown()
+ */
+ protected void tearDown() throws Exception
+ {
+ super.tearDown();
+ }
+
+ /**
+ * Constructor for TestToolDAO.
+ * @param arg0
+ */
+ public TestToolDAO(String arg0)
+ {
+ super(arg0);
+ }
+
+ public void testGetToolByID()
+ {
+ testTool = toolDao.getToolByID(super.TEST_TOOL_ID);
+ assertEquals("verify signature","survey_signature",testTool.getToolSignature());
+ assertEquals("verify service name","surveyService",testTool.getServiceName());
+ assertEquals("verify display name","Survey",testTool.getToolDisplayName());
+ assertEquals("verify default content id",6,testTool.getDefaultToolContentId());
+ }
+
+}