Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/events/EmailNotificationArchive.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/events/Event.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/events/Subscription.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/integration/ExtCourseClassMap.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/integration/ExtServerLessonMap.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/integration/ExtServerOrgMap.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/integration/ExtServerToolAdapterMap.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/integration/ExtUserUseridMap.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/outcome/Outcome.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/outcome/OutcomeMapping.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/outcome/OutcomeResult.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/outcome/OutcomeScale.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 5b1fbc89c883857eace8c043a594a79cb0f60bc4 refers to a dead (removed) revision in file `lams_common/conf/hibernate/mappings/org/lamsfoundation/lams/outcome/OutcomeScaleItem.hbm.xml'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_common/src/java/org/lamsfoundation/lams/commonContext.xml =================================================================== diff -u -rcbe532f585efe39250986f20d58cbef855115cf3 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision cbe532f585efe39250986f20d58cbef855115cf3) +++ lams_common/src/java/org/lamsfoundation/lams/commonContext.xml (.../commonContext.xml) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -26,10 +26,13 @@ org.lamsfoundation.lams.config org.lamsfoundation.lams.contentrepository + org.lamsfoundation.lams.events org.lamsfoundation.lams.gradebook + org.lamsfoundation.lams.integration org.lamsfoundation.lams.learningdesign org.lamsfoundation.lams.lesson org.lamsfoundation.lams.logevent + org.lamsfoundation.lams.outcome org.lamsfoundation.lams.planner org.lamsfoundation.lams.policies org.lamsfoundation.lams.themes Index: lams_common/src/java/org/lamsfoundation/lams/events/EmailNotificationArchive.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/events/EmailNotificationArchive.java (.../EmailNotificationArchive.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/events/EmailNotificationArchive.java (.../EmailNotificationArchive.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -3,24 +3,53 @@ import java.io.Serializable; import java.util.Date; import java.util.Set; +import java.util.TreeSet; +import javax.persistence.Column; +import javax.persistence.ElementCollection; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.JoinTable; +import javax.persistence.Table; + /** * An archived lesson or organisation notification sent by email. * * @author Marcin Cieslak * */ +@Entity +@Table(name = "lams_email_notification_archive") public class EmailNotificationArchive implements Serializable { private static final long serialVersionUID = 3394158938976463492L; + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long uid; + + @Column(name = "organisation_id") private Integer organisationId; + + @Column(name = "lesson_id") private Long lessonId; + + @Column(name = "search_type") private Integer searchType; + + @Column(name = "sent_on") private Date sentOn; + @Column private String body; - private Set recipients; + @ElementCollection + @JoinTable(name = "lams_email_notification_recipient_archive", joinColumns = @JoinColumn(name = "email_notification_uid")) + @Column(name = "user_id") + private Set recipients = new TreeSet(); + public EmailNotificationArchive() { } Index: lams_common/src/java/org/lamsfoundation/lams/events/Event.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/events/Event.java (.../Event.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/events/Event.java (.../Event.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -5,63 +5,86 @@ import java.util.HashSet; import java.util.Set; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.OneToMany; +import javax.persistence.Table; + import org.apache.commons.lang.StringUtils; +import org.hibernate.annotations.Fetch; +import org.hibernate.annotations.FetchMode; /** * A event that users can subscribe to and at some point can be triggered, notifing the users. * - * * @author Marcin Cieslak - * */ +@Entity +@Table(name = "lams_notification_event") public class Event { - // --------- persistent fields ------------- /** * Unique ID for Hibernate needs. */ + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long uid; /** * Name of the event. */ + @Column private String name; /** * Scope of the event. For events that are common for the whole LAMS environment, * {@link EventNotificationService#CORE_EVENTS_SCOPE} should be used. For tools their signature should be used. */ + @Column private String scope; /** * Identifier for a session in which the event is valid. or events that are common for the whole LAMS environment * null can be used. For tools their content ID should be used. */ + @Column(name = "event_session_id") private Long eventSessionId; /** * Set of users that are subscribed to this event, along with the required data. */ + @OneToMany(mappedBy = "event", cascade = CascadeType.ALL, orphanRemoval = true, fetch = FetchType.EAGER) + @Fetch(FetchMode.JOIN) private Set subscriptions = new HashSet(); /** * Message that will be send when the event is triggered. */ + @Column private String message; /** * Subject of the message that will be send when the event is triggered. */ + @Column private String subject; /** * Boolean indicates whether the message should be sent as text/html content or regular text/plain one */ + @Column(name = "html_format") private boolean htmlFormat; /** * If sending notifications fails, this property holds the time of this failure. */ + @Column(name = "fail_time") private Date failTime; public Event() { @@ -116,7 +139,8 @@ * @throws InvalidParameterException * if scope is null or name is blank */ - public Event(String scope, String name, Long sessionId, String subject, String message, boolean isHtmlContentType, Date failTime) throws InvalidParameterException { + public Event(String scope, String name, Long sessionId, String subject, String message, boolean isHtmlContentType, + Date failTime) throws InvalidParameterException { if (scope == null) { throw new InvalidParameterException("Event scope can not be null."); } @@ -137,77 +161,38 @@ return new Event(scope, name, eventSessionId, subject, message, htmlFormat, failTime); } - /** - * - * @return - */ public Long getEventSessionId() { return eventSessionId; } - /** - * - * @return - */ public Date getFailTime() { return failTime; } - /** - * - * @return - */ public String getMessage() { return message; } - /** - * - * @return - */ public String getName() { return name; } - /** - * - * @return - */ public String getScope() { return scope; } - /** - * - * @return - */ public String getSubject() { return subject; } - /** - * - * - * - * - * - * @return - */ public Set getSubscriptions() { return subscriptions; } - /** - * - */ public Long getUid() { return uid; } - /** - * - * @return - */ public boolean isHtmlFormat() { return htmlFormat; } Index: lams_common/src/java/org/lamsfoundation/lams/events/Subscription.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/events/Subscription.java (.../Subscription.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/events/Subscription.java (.../Subscription.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -2,6 +2,16 @@ import java.security.InvalidParameterException; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; +import javax.persistence.Transient; + /** * Subscription for an event notification. This class binds an user to an event and stores some information on the * notification attempts. @@ -10,33 +20,43 @@ * @author Marcin Cieslak * */ +@Entity +@Table(name = "lams_notification_subscription") public class Subscription { /** * Unique ID for Hibernate needs. */ + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long uid; /** * ID of the subscribed user */ + @Column(name = "user_id") private Integer userId; + @ManyToOne + @JoinColumn(name = "event_uid") private Event event; /** * ID of the delivery method used to send a message for this subscription. */ + @Column(name = "deliver_method_id") private Short deliveryMethodId; /** * Message returned by a delivery methond during the last notification attempt */ + @Column(name = "last_operation_message") private String lastOperationMessage; - // --------- non-persitent fields ---------- /** * Delivery method used to send a message. */ + @Transient private AbstractDeliveryMethod deliveryMethod; /** @@ -47,10 +67,6 @@ /** * Standard consctructor used by Events. - * - * @param userId - * @param deliveryMethod - * @param periodicity */ public Subscription(Integer userId, AbstractDeliveryMethod deliveryMethod) { if (deliveryMethod == null) { @@ -77,42 +93,22 @@ return deliveryMethod; } - /** - * - * @return - */ public Short getDeliveryMethodId() { return deliveryMethodId; } - /** - * - * - * @return - */ public Event getEvent() { return event; } - /** - * - * @return - */ public String getLastOperationMessage() { return lastOperationMessage; } - /** - * - */ public Long getUid() { return uid; } - /** - * - * @return - */ public Integer getUserId() { return userId; } Index: lams_common/src/java/org/lamsfoundation/lams/integration/ExtCourseClassMap.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/integration/ExtCourseClassMap.java (.../ExtCourseClassMap.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/integration/ExtCourseClassMap.java (.../ExtCourseClassMap.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -2,33 +2,39 @@ import java.io.Serializable; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + import org.apache.commons.lang.builder.ToStringBuilder; import org.lamsfoundation.lams.usermanagement.Organisation; +@Entity +@Table(name = "lams_ext_course_class_map") public class ExtCourseClassMap implements Serializable { - private static final long serialVersionUID = -6179393464356966543L; - /** identifier field */ + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer sid; - /** persistent field */ + @Column private String courseid; - /** persistent field */ + @ManyToOne + @JoinColumn(name = "ext_server_org_map_id") private ExtServer extServer; - /** persistent field */ + @ManyToOne + @JoinColumn(name = "classid") private Organisation organisation; - /** full constructor */ - public ExtCourseClassMap(String courseid, ExtServer extServer, Organisation organisation) { - this.courseid = courseid; - this.extServer = extServer; - this.organisation = organisation; - } - - /** default constructor */ public ExtCourseClassMap() { } @@ -68,5 +74,4 @@ public String toString() { return new ToStringBuilder(this).append("sid", getSid()).append("courseid", getCourseid()).toString(); } - -} +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/integration/ExtServer.java =================================================================== diff -u -r62aaf160878735888d077bf28fac3c1989bb8fbd -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/integration/ExtServer.java (.../ExtServer.java) (revision 62aaf160878735888d077bf28fac3c1989bb8fbd) +++ lams_common/src/java/org/lamsfoundation/lams/integration/ExtServer.java (.../ExtServer.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -1,96 +1,118 @@ package org.lamsfoundation.lams.integration; import java.io.Serializable; +import java.util.HashSet; import java.util.Set; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.OneToMany; +import javax.persistence.Table; + import org.apache.commons.lang.builder.ToStringBuilder; -public class ExtServer implements Serializable, Comparable { - +@Entity +@Table(name = "lams_ext_server_org_map") +public class ExtServer implements Serializable, Comparable { + private static final long serialVersionUID = 337894825609071182L; /* - * static final variables indicating the type of servers available. + * variables indicating the type of servers available. */ /* **************************************************************** */ public static final int INTEGRATION_SERVER_TYPE = 1; public static final int LTI_CONSUMER_SERVER_TYPE = 2; - /** *************************************************************** */ + /* *************************************************************** */ - /** identifier field */ + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer sid; - /** persistent field */ + @Column private String serverid; - /** persistent field */ + @Column private String serverkey; - /** persistent field */ + @Column private String servername; - /** persistent field */ + @Column private String serverdesc; - /** The type of activity */ + @Column(name = "server_type_id") private Integer serverTypeId; - /** persistent field */ + @Column private String prefix; - /** persistent field */ + @Column(name = "userinfo_url") private String userinfoUrl; - /** persistent field */ + @Column(name = "lesson_finish_url") private String lessonFinishUrl; + @Column(name = "ext_groups_url") private String extGroupsUrl; - /** persistent field */ + @Column private Boolean disabled; + @Column(name = "time_to_live_login_request_enabled") private Boolean timeToLiveLoginRequestEnabled; - /** persistent field */ + @Column(name = "time_to_live_login_request") private int timeToLiveLoginRequest; + @Column(name = "learner_presence_avail") private Boolean learnerPresenceAvailable; + @Column(name = "learner_im_avail") private Boolean learnerImAvailable; + @Column(name = "live_edit_enabled") private Boolean liveEditEnabled; + @Column(name = "enable_lesson_notifications") private Boolean enableLessonNotifications; /** * Should Learner start the lesson from the beginning each time he enters it. * Content is not removed, LessonProgress is deleted, not archived. */ + @Column(name = "force_restart") private Boolean forceLearnerRestart; /** * Should Learners be allowed to restart the lesson after finishing it. * Content is not removed, LessonProgress is archived and then deleted. */ + @Column(name = "allow_restart") private Boolean allowLearnerRestart; /** * Should learners be displayed activity gradebook on lesson complete. */ + @Column(name = "gradebook_on_complete") private Boolean gradebookOnComplete; - /** persistent field */ - private Set extCourseClassMaps; + @OneToMany(mappedBy = "extServer") + private Set extCourseClassMaps = new HashSet(); - /** persistent field */ - private Set extUserUseridMaps; + @OneToMany(mappedBy = "extServer") + private Set extUserUseridMaps = new HashSet(); /** * Comma-separated list of roles that LTI tool consumer uses to indicate user monitor role */ + @Column(name = "lti_consumer_monitor_roles") private String ltiToolConsumerMonitorRoles; - /** default constructor */ public ExtServer() { timeToLiveLoginRequest = 80; } @@ -193,8 +215,6 @@ /** * Measured in minutes. - * - * @return */ public int getTimeToLiveLoginRequest() { return this.timeToLiveLoginRequest; @@ -204,19 +224,19 @@ this.timeToLiveLoginRequest = timeToLiveLoginRequest; } - public Set getExtCourseClassMaps() { + public Set getExtCourseClassMaps() { return this.extCourseClassMaps; } - public void setExtCourseClassMaps(Set extCourseClassMaps) { + public void setExtCourseClassMaps(Set extCourseClassMaps) { this.extCourseClassMaps = extCourseClassMaps; } - public Set getExtUserUseridMaps() { + public Set getExtUserUseridMaps() { return this.extUserUseridMaps; } - public void setExtUserUseridMaps(Set extUserUseridMaps) { + public void setExtUserUseridMaps(Set extUserUseridMaps) { this.extUserUseridMaps = extUserUseridMaps; } @@ -235,8 +255,8 @@ } @Override - public int compareTo(Object o) { - return serverid.compareToIgnoreCase(((ExtServer) o).getServerid()); + public int compareTo(ExtServer o) { + return serverid.compareToIgnoreCase(o.getServerid()); } public boolean isIntegrationServer() { Index: lams_common/src/java/org/lamsfoundation/lams/integration/ExtServerLessonMap.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/integration/ExtServerLessonMap.java (.../ExtServerLessonMap.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/integration/ExtServerLessonMap.java (.../ExtServerLessonMap.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -20,26 +20,42 @@ * **************************************************************** */ - package org.lamsfoundation.lams.integration; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + /** * Maps a lesson to multiple integrated server instances */ +@Entity +@Table(name = "lams_ext_server_lesson_map") public class ExtServerLessonMap { + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long uid; + + @Column(name = "lesson_id") private Long lessonId; + + @Column(name = "resource_link_id") private String resourceLinkId; + + @ManyToOne + @JoinColumn(name = "ext_server_org_map_id") private ExtServer extServer; public ExtServerLessonMap() { } - /** - * - * - */ public Long getUid() { return uid; } @@ -48,27 +64,20 @@ this.uid = uid; } - /** - * - * - */ public Long getLessonId() { return lessonId; } public void setLessonId(Long lessonId) { this.lessonId = lessonId; } - + /** * Used only for LTI tool consumer servers. Stores value of the resource_link_id parameter. Which is an opaque * unique identifier that the TC guarantees will be unique within the TC for every placement of the link. If the * tool / activity is placed multiple times in the same context, each of those placements will be distinct. This * value will also change if the item is exported from one system or context and imported into another system or * context. This parameter is required. - * - * @hibernate.property column="resource_link_id" - * */ public String getResourceLinkId() { return resourceLinkId; @@ -78,16 +87,11 @@ this.resourceLinkId = resourceLinkId; } - /** - * - * - * - */ public ExtServer getExtServer() { return extServer; } public void setExtServer(ExtServer extServer) { this.extServer = extServer; } -} +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/integration/ExtServerToolAdapterMap.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/integration/ExtServerToolAdapterMap.java (.../ExtServerToolAdapterMap.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/integration/ExtServerToolAdapterMap.java (.../ExtServerToolAdapterMap.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -20,34 +20,42 @@ * **************************************************************** */ - package org.lamsfoundation.lams.integration; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + import org.lamsfoundation.lams.tool.Tool; /** * Maps a tool adapter to multiple integrated server instances - * - * */ +@Entity +@Table(name = "lams_ext_server_tool_map") public class ExtServerToolAdapterMap { + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long uid; + + @ManyToOne + @JoinColumn(name = "tool_id") private Tool tool; + + @ManyToOne + @JoinColumn(name = "ext_server_org_map_id") private ExtServer extServer; public ExtServerToolAdapterMap() { } - public ExtServerToolAdapterMap(Tool tool, ExtServer extServer) { - this.tool = tool; - this.extServer = extServer; - } - - /** - * - * - */ public Long getUid() { return uid; } @@ -56,11 +64,6 @@ this.uid = uid; } - /** - * - * - * - */ public Tool getTool() { return tool; } @@ -69,16 +72,11 @@ this.tool = tool; } - /** - * - * - * - */ public ExtServer getExtServer() { return extServer; } public void setExtServer(ExtServer extServer) { this.extServer = extServer; } -} +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/integration/ExtUserUseridMap.java =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/integration/ExtUserUseridMap.java (.../ExtUserUseridMap.java) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_common/src/java/org/lamsfoundation/lams/integration/ExtUserUseridMap.java (.../ExtUserUseridMap.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -2,39 +2,44 @@ import java.io.Serializable; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + import org.apache.commons.lang.builder.ToStringBuilder; import org.lamsfoundation.lams.usermanagement.User; -/** - * - */ +@Entity +@Table(name = "lams_ext_user_userid_map") public class ExtUserUseridMap implements Serializable { private static final long serialVersionUID = 1755818193730728064L; - /** identifier field */ + @Id + @Column + @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer sid; - /** persistent field */ + @Column(name = "external_username") private String extUsername; - /** persistent field */ + @ManyToOne + @JoinColumn(name = "user_id") private User user; - /** persistent field */ + @ManyToOne + @JoinColumn(name = "ext_server_org_map_id") private ExtServer extServer; - + /** id of gradebook item in LTI tool consumer */ + @Column(name = "tc_gradebook_id") private String tcGradebookId; - /** full constructor */ - public ExtUserUseridMap(String extUsername, User user, ExtServer extServer) { - this.extUsername = extUsername; - this.user = user; - this.extServer = extServer; - } - - /** default constructor */ public ExtUserUseridMap() { } @@ -69,7 +74,7 @@ public void setExtServer(ExtServer extServer) { this.extServer = extServer; } - + public String getTcGradebookId() { return this.tcGradebookId; } @@ -82,5 +87,4 @@ public String toString() { return new ToStringBuilder(this).append("sid", getSid()).append("extUsername", getExtUsername()).toString(); } - -} +} \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/outcome/Outcome.java =================================================================== diff -u -ra1bfe9d7972867fa2a0bcacc2bf263a9e34c856b -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/outcome/Outcome.java (.../Outcome.java) (revision a1bfe9d7972867fa2a0bcacc2bf263a9e34c856b) +++ lams_common/src/java/org/lamsfoundation/lams/outcome/Outcome.java (.../Outcome.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -3,20 +3,54 @@ import java.io.Serializable; import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + import org.lamsfoundation.lams.usermanagement.Organisation; import org.lamsfoundation.lams.usermanagement.User; +@Entity +@Table(name = "lams_outcome") public class Outcome implements Serializable { + private static final long serialVersionUID = -7175245687448269571L; + @Id + @Column(name = "outcome_id") + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long outcomeId; + + @ManyToOne + @JoinColumn(name = "organisation_id") private Organisation organisation; + + @ManyToOne + @JoinColumn(name = "scale_id") private OutcomeScale scale; + + @Column private String name; + + @Column private String code; + + @Column private String description; + + @Column(name = "content_folder_id") private String contentFolderId; + + @ManyToOne + @JoinColumn(name = "create_by") private User createBy; + + @Column(name = "create_date_time") private Date createDateTime; public Long getOutcomeId() { Index: lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeMapping.java =================================================================== diff -u -ra1bfe9d7972867fa2a0bcacc2bf263a9e34c856b -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeMapping.java (.../OutcomeMapping.java) (revision a1bfe9d7972867fa2a0bcacc2bf263a9e34c856b) +++ lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeMapping.java (.../OutcomeMapping.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -2,13 +2,36 @@ import java.io.Serializable; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + +@Entity +@Table(name = "lams_outcome_mapping") public class OutcomeMapping implements Serializable { private static final long serialVersionUID = -2195345501533401085L; + @Id + @Column(name = "mapping_id") + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long mappingId; + + @ManyToOne + @JoinColumn(name = "outcome_id") private Outcome outcome; + + @Column(name = "lesson_id") private Long lessonId; + + @Column(name = "tool_content_id") private Long toolContentId; + + @Column(name = "item_id") private Long itemId; public Long getMappingId() { @@ -50,5 +73,4 @@ public void setItemId(Long itemId) { this.itemId = itemId; } - } \ No newline at end of file Index: lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeResult.java =================================================================== diff -u -ra1bfe9d7972867fa2a0bcacc2bf263a9e34c856b -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeResult.java (.../OutcomeResult.java) (revision a1bfe9d7972867fa2a0bcacc2bf263a9e34c856b) +++ lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeResult.java (.../OutcomeResult.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -3,16 +3,43 @@ import java.io.Serializable; import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + import org.lamsfoundation.lams.usermanagement.User; +@Entity +@Table(name = "lams_outcome_result") public class OutcomeResult implements Serializable { private static final long serialVersionUID = 1703649292232336661L; + @Id + @Column(name = "result_id") + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long resultId; + + @ManyToOne + @JoinColumn(name = "mapping_id") private OutcomeMapping mapping; + + @ManyToOne + @JoinColumn(name = "user_id") private User user; + + @Column private Integer value; + + @ManyToOne + @JoinColumn(name = "create_by") private User createBy; + + @Column(name = "create_date_time") private Date createDateTime; public Long getResultId() { Index: lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeScale.java =================================================================== diff -u -ra1bfe9d7972867fa2a0bcacc2bf263a9e34c856b -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeScale.java (.../OutcomeScale.java) (revision a1bfe9d7972867fa2a0bcacc2bf263a9e34c856b) +++ lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeScale.java (.../OutcomeScale.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -7,22 +7,58 @@ import java.util.List; import java.util.Set; +import javax.persistence.CascadeType; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.OneToMany; +import javax.persistence.OrderBy; +import javax.persistence.Table; + import org.apache.commons.lang.StringUtils; import org.lamsfoundation.lams.usermanagement.Organisation; import org.lamsfoundation.lams.usermanagement.User; +@Entity +@Table(name = "lams_outcome_scale") public class OutcomeScale implements Serializable { private static final long serialVersionUID = 216274187123917942L; + @Id + @Column(name = "scale_id") + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long scaleId; + + @ManyToOne + @JoinColumn(name = "organisation_id") private Organisation organisation; + + @Column private String name; + + @Column private String code; + + @Column private String description; + + @Column(name = "content_folder_id") private String contentFolderId; + + @ManyToOne + @JoinColumn(name = "create_by") private User createBy; + + @Column(name = "create_date_time") private Date createDateTime; + @OneToMany(mappedBy = "scale", fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true) + @OrderBy("value") private Set items = new LinkedHashSet(); /** Index: lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeScaleItem.java =================================================================== diff -u -ra1bfe9d7972867fa2a0bcacc2bf263a9e34c856b -r5b1fbc89c883857eace8c043a594a79cb0f60bc4 --- lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeScaleItem.java (.../OutcomeScaleItem.java) (revision a1bfe9d7972867fa2a0bcacc2bf263a9e34c856b) +++ lams_common/src/java/org/lamsfoundation/lams/outcome/OutcomeScaleItem.java (.../OutcomeScaleItem.java) (revision 5b1fbc89c883857eace8c043a594a79cb0f60bc4) @@ -2,12 +2,33 @@ import java.io.Serializable; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + +@Entity +@Table(name = "lams_outcome_scale_item") public class OutcomeScaleItem implements Serializable { private static final long serialVersionUID = -4386671601427980092L; + @Id + @Column(name = "item_id") + @GeneratedValue(strategy = GenerationType.IDENTITY) private Long itemId; + + @ManyToOne + @JoinColumn(name = "scale_id") private OutcomeScale scale; + + @Column private Integer value; + + @Column private String name; public Long getItemId() { @@ -41,5 +62,4 @@ public void setName(String name) { this.name = name; } - } \ No newline at end of file