Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/Activity.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/Activity.java (.../Activity.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/Activity.java (.../Activity.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -29,6 +29,8 @@ public static final int OPTIONS_ACTIVITY_TYPE = 8; public static final int SEQUENCE_ACTIVITY_TYPE = 9; + + public static final String OBJECT_TYPE ="Activity"; /** identifier field */ private Long activityId; @@ -83,7 +85,7 @@ /** persistent field */ private Set transitionsByFromActivityId; - + /** full constructor */ public Activity( Long activityId, @@ -123,6 +125,7 @@ /** default constructor */ public Activity() { + this.grouping = null; } /** minimal constructor */ @@ -388,5 +391,5 @@ */ public void setLibraryActivityUiImage(String libraryActivityUiImage) { this.libraryActivityUiImage = libraryActivityUiImage; - } -} + } +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/ComplexActivity.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/ComplexActivity.java (.../ComplexActivity.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/ComplexActivity.java (.../ComplexActivity.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -5,55 +5,78 @@ import java.util.Set; import org.apache.commons.lang.builder.ToStringBuilder; - /** * @hibernate.class */ -public abstract class ComplexActivity extends Activity implements Serializable -{ - - /** persistent field */ - private Set activities; - - /** full constructor */ - public ComplexActivity(Long activityId, Integer id, String description, String title, Integer xcoord, Integer ycoord, Integer orderId, Boolean defineLater, Date createDateTime, String offlineInstructions, org.lamsfoundation.lams.learningdesign.LearningLibrary learningLibrary, org.lamsfoundation.lams.learningdesign.Activity parentActivity, org.lamsfoundation.lams.learningdesign.LearningDesign learningDesign, org.lamsfoundation.lams.learningdesign.Grouping grouping, Integer activityTypeId, Set transitionsByToActivityId, Set transitionsByFromActivityId, Set activities) - { - super(activityId, id, description, title, xcoord, ycoord, orderId, defineLater, createDateTime, offlineInstructions, learningLibrary, parentActivity, learningDesign, grouping, activityTypeId, transitionsByToActivityId, transitionsByFromActivityId); - this.activities = activities; - } - - /** default constructor */ - public ComplexActivity() - { - } - - /** minimal constructor */ - public ComplexActivity(Long activityId, Boolean defineLater, Date createDateTime, org.lamsfoundation.lams.learningdesign.LearningLibrary learningLibrary, org.lamsfoundation.lams.learningdesign.Activity parentActivity, org.lamsfoundation.lams.learningdesign.LearningDesign learningDesign, org.lamsfoundation.lams.learningdesign.Grouping grouping, Integer activityTypeId, Set transitionsByToActivityId, Set transitionsByFromActivityId, Set activities) - { - super(activityId, defineLater, createDateTime, learningLibrary, parentActivity, learningDesign, grouping, activityTypeId, transitionsByToActivityId, transitionsByFromActivityId); - this.activities = activities; - } - - public String toString() - { - return new ToStringBuilder(this) - .append("activityId", getActivityId()) - .toString(); - } - - /** - * @hibernate.set lazy="true" inverse="true" cascade="none" - * @hibernate.collection-key column="parent_activity_id" - * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.learningdesign.Activity" - * - */ - public Set getActivities() - { - return this.activities; - } - - public void setActivities(Set activities) - { - this.activities = activities; - } -} +public abstract class ComplexActivity extends Activity implements Serializable { + + /** persistent field */ + private Set activities; + + /** full constructor */ + public ComplexActivity( + Long activityId, + Integer id, + String description, + String title, + Integer xcoord, + Integer ycoord, + Integer orderId, + Boolean defineLater, + Date createDateTime, + String offlineInstructions, + LearningLibrary learningLibrary, + Activity parentActivity, + LearningDesign learningDesign, + Grouping grouping, + Integer activityTypeId, Set transitionsByToActivityId, + Set transitionsByFromActivityId, Set activities) { + super(activityId, id, description, title, xcoord, ycoord, orderId, + defineLater, createDateTime, offlineInstructions, + learningLibrary, parentActivity, learningDesign, grouping, + activityTypeId, transitionsByToActivityId, + transitionsByFromActivityId); + this.activities = activities; + } + + /** default constructor */ + public ComplexActivity() { + super(); + } + + /** minimal constructor */ + public ComplexActivity( + Long activityId, + Boolean defineLater, + Date createDateTime, + LearningLibrary learningLibrary, + Activity parentActivity, + LearningDesign learningDesign, + Grouping grouping, + Integer activityTypeId, Set transitionsByToActivityId, + Set transitionsByFromActivityId, Set activities) { + super(activityId, defineLater, createDateTime, learningLibrary, + parentActivity, learningDesign, grouping, activityTypeId, + transitionsByToActivityId, transitionsByFromActivityId); + this.activities = activities; + } + + public String toString() { + return new ToStringBuilder(this).append("activityId", getActivityId()) + .toString(); + } + + /** + * @hibernate.set lazy="true" inverse="true" cascade="none" + * @hibernate.collection-key column="parent_activity_id" + * @hibernate.collection-one-to-many class="org.lamsfoundation.lams.learningdesign.Activity" + * + */ + public Set getActivities() { + return this.activities; + } + + public void setActivities(Set activities) { + this.activities = activities; + } +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/LearningDesign.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/LearningDesign.java (.../LearningDesign.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/LearningDesign.java (.../LearningDesign.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -52,12 +52,6 @@ private Date dateReadOnly; /** nullable persistent field */ - private Long readAccess; - - /** nullable persistent field */ - private Long writeAccess; - - /** nullable persistent field */ private String helpText; /** persistent field */ @@ -96,10 +90,13 @@ /** non-persistent field containing a list * of optional activities in the design*/ private Set optionalActivities; + + private Set paralleActivities; + private Set sequenceActivities; /** full constructor */ - public LearningDesign(Long learningDesignId, Integer id, String description, String title, Activity firstActivity, Integer maxId, Boolean validDesign, Boolean readOnly, Date dateReadOnly, Long readAccess, Long writeAccess, String helpText, Boolean lessonCopy, Date createDateTime, String version, Date openDateTime, Date closeDateTime, User user, org.lamsfoundation.lams.learningdesign.LearningDesign parentLearningDesign, Set childLearningDesigns, Set lessons, Set transitions, Set activities) { + public LearningDesign(Long learningDesignId, Integer id, String description, String title, Activity firstActivity, Integer maxId, Boolean validDesign, Boolean readOnly, Date dateReadOnly,String helpText, Boolean lessonCopy, Date createDateTime, String version, Date openDateTime, Date closeDateTime, User user, org.lamsfoundation.lams.learningdesign.LearningDesign parentLearningDesign, Set childLearningDesigns, Set lessons, Set transitions, Set activities) { this.learningDesignId = learningDesignId; this.id = id; this.description = description; @@ -109,8 +106,6 @@ this.validDesign = validDesign; this.readOnly = readOnly; this.dateReadOnly = dateReadOnly; - this.readAccess = readAccess; - this.writeAccess = writeAccess; this.helpText = helpText; this.lessonCopy = lessonCopy; this.createDateTime = createDateTime; @@ -251,34 +246,9 @@ public void setDateReadOnly(Date dateReadOnly) { this.dateReadOnly = dateReadOnly; } - /** - * - * - */ - public Long getReadAccess() { - return this.readAccess; - } - - public void setReadAccess(Long readAccess) { - this.readAccess = readAccess; - } - - /** * - * */ - public Long getWriteAccess() { - return this.writeAccess; - } - - public void setWriteAccess(Long writeAccess) { - this.writeAccess = writeAccess; - } - - /** - * - */ public String getHelpText() { return this.helpText; } @@ -416,6 +386,14 @@ public void setActivities(Set activities) { this.activities = activities; + /* HashSet designActivities =(HashSet)this.activities; + Iterator iter = designActivities.iterator(); + Activity activity = null; + while(iter.hasNext()){ + activity =(Activity) iter.next(); + Integer activityTypeID = activity.getActivityTypeId(); + populateDesignActivitySets(activity,activityTypeID); + }*/ } public String toString() { @@ -527,5 +505,22 @@ } return activityIds; } + private void populateDesignActivitySets(Activity activity, Integer activityTypeID){ + int typeID = activityTypeID.intValue(); + if(typeID==7){ + if(paralleActivities==null) + paralleActivities = new HashSet(); + paralleActivities.add(activity); + }else if(typeID==8){ + if(optionalActivities==null) + optionalActivities = new HashSet(); + optionalActivities.add(activity); + }else if(typeID==9){ + if(sequenceActivities==null) + sequenceActivities = new HashSet(); + sequenceActivities.add(activity); + } + + } } Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/OptionsActivity.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/OptionsActivity.java (.../OptionsActivity.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/OptionsActivity.java (.../OptionsActivity.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -26,10 +26,10 @@ Boolean defineLater, java.util.Date createDateTime, String offlineInstructions, - org.lamsfoundation.lams.learningdesign.LearningLibrary learningLibrary, - org.lamsfoundation.lams.learningdesign.Activity parentActivity, - org.lamsfoundation.lams.learningdesign.LearningDesign learningDesign, - org.lamsfoundation.lams.learningdesign.Grouping grouping, + LearningLibrary learningLibrary, + Activity parentActivity, + LearningDesign learningDesign, + Grouping grouping, Integer activityTypeId, java.util.Set transitionsByToActivityId, java.util.Set transitionsByFromActivityId, @@ -60,6 +60,7 @@ /** default constructor */ public OptionsActivity() { + } /** minimal constructor */ Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/ParallelActivity.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/ParallelActivity.java (.../ParallelActivity.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/ParallelActivity.java (.../ParallelActivity.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -4,7 +4,6 @@ import org.apache.commons.lang.builder.ToStringBuilder; - /** * @hibernate.class */ Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IActivityDAO.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IActivityDAO.java (.../IActivityDAO.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/IActivityDAO.java (.../IActivityDAO.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -23,7 +23,7 @@ * @param parentActivityId The activityId of the parent activity * @return Activity populated Activity object */ - public Activity getActivityByParentActivityId(Long parentActivityId); + public List getActivitiesByParentActivityId(Long parentActivityId); /** * @return List of all the activities Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/ActivityDAO.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/ActivityDAO.java (.../ActivityDAO.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/ActivityDAO.java (.../ActivityDAO.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -5,15 +5,22 @@ import java.util.List; import org.lamsfoundation.lams.learningdesign.Activity; +import org.lamsfoundation.lams.learningdesign.OptionsActivity; import org.lamsfoundation.lams.learningdesign.dao.IActivityDAO; /** * @author MMINHAS */ public class ActivityDAO extends BaseDAO implements IActivityDAO { - private static final String FIND_BY_PARENT = "from lams_learning_activity activity where activity.parent_activity_id=?" ; - private static final String FIND_BY_LEARNING_DESIGN_ID ="from lams_learning_activity activity where activity.learning_design_id=?" ; + private static final String TABLENAME ="lams_learning_activity"; + + private static final String FIND_BY_PARENT = "from " + TABLENAME +" in class " + Activity.class.getName() + " where parent_activity_id=?" ; + + private static final String FIND_BY_LEARNING_DESIGN_ID = "from " + TABLENAME + + " in class " + Activity.class.getName() + + " where learning_design_id=?" ; + /* * @see org.lamsfoundation.lams.learningdesign.dao.interfaces.IActivityDAO#getActivityById(java.lang.Long) @@ -25,12 +32,9 @@ /* * @see org.lamsfoundation.lams.learningdesign.dao.interfaces.IActivityDAO#getActivityByParentActivityId(java.lang.Long) */ - public Activity getActivityByParentActivityId(Long parentActivityId) { + public List getActivitiesByParentActivityId(Long parentActivityId) { List list = this.getHibernateTemplate().find(FIND_BY_PARENT,parentActivityId); - if(list.size()==0) - return null; - else - return (Activity) list.get(0); + return list; } /* @@ -53,7 +57,11 @@ public void insertActivity(Activity activity) { this.getHibernateTemplate().save(activity); } + public void insertOptActivity(OptionsActivity activity) { + this.getHibernateTemplate().save(activity); + } + /* * @see org.lamsfoundation.lams.learningdesign.dao.interfaces.IActivityDAO#updateActivity(org.lamsfoundation.lams.learningdesign.Activity) */ Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupingDAO.java =================================================================== diff -u -r19c9010eff6be2e29657beed94349a978088650f -r701298e4804b6e63459ae7ce8fe82ae1765a3a82 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupingDAO.java (.../GroupingDAO.java) (revision 19c9010eff6be2e29657beed94349a978088650f) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/dao/hibernate/GroupingDAO.java (.../GroupingDAO.java) (revision 701298e4804b6e63459ae7ce8fe82ae1765a3a82) @@ -21,8 +21,7 @@ * @see org.lamsfoundation.lams.learningdesign.dao.interfaces.IGroupingDAO#getGroupingById(java.lang.Long) */ public Grouping getGroupingById(Long groupingID) { - // TODO Auto-generated method stub - return null; + return (Grouping)super.find(Grouping.class,groupingID); } }