[Full Text Search] (40pt)
Enhance the CSNS Mailing List you developed in Homework 3 by allowing the users to perform full text search on message text. For example:
csns-announcements: Messages contain: | |||||||||
|
Note that full text search must work in coordination with other search criteria. For example, if a user selects mailing list "csns-announcements" and "Messages from last 30 days", and then search for "cs520", the system should only display the messages of csns-announcements from the last 30 days that contain the text cs520.
You will receive 15pt extra credit if you use Hibernate Search to solve this exercise.
[Daily Digest] (40pt)
Further enhance your mailing list to allow users to subscribe to a mailing list for daily digest. In other words, instead of receiving every email sent to a mailing list, a daily digest subscriber will receive at most one email from a mailing list per day, and the email will contains the subjects of the messages sent to the mailing list in the previous day, as well as links to CSNS where the user can access the full text of these messages. Note that there is no need to send out a daily digest if there's no message sent in the previous day.
[Libraries]
In this assignment you may need to use additional libraries such as Lucene and Hibernate Search. Please add the necessary jar files to your project, and list the names of the jar files, e.g. lucene-core-2.1.0.jar, in the README file.[Subversion]
Before submitting your work, commit all the changes to your Subversion repository, and create a tag called cs520-hw4.