Task: Temporal email addressesThe user of the application should be able to register herself with her private email address. After that the user can create temporal email addresses whose messages are redirected to the private email address of the user. There are several use cases for this application: First of all you can use this temporal email addresses for registration at online shops, forums and so on where you don't want to use your private email address to prevent spam emails. Another use case would be to use this application for testing purposes by software developers. They could check whether there own application is sending emails the correct way.
ImplementationMy implementation is based on the JavaEE technology stack. I have used JPA2/Eclipselink as persistence framework with an HSQLDB inmemory database. Dependency-Injection is done by CDI/Weld. In addition I used the Seam Solder library to handle events of the servlet container. The handling of SMTP is done with the SubethaSMTP library. The frontend is based on JSF 2.1 and MyFaces as implementation. Besides this PrettyFaces and PrimeFaces where used. The whole application was developed test driven. For this purpose FEST-Assert and Mockito where used. Additionally Weld-SE was used for integration tests.
p.s. At the end I won the contest and got a Lenovo Thinkpad Edge as an award :-)