Index: E:/tw/workspace/svnmifos/test/org/mifos/application/meeting/persistence/NewMeetingPersistenceTest.java
===================================================================
--- E:/tw/workspace/svnmifos/test/org/mifos/application/meeting/persistence/NewMeetingPersistenceTest.java	(revision 0)
+++ E:/tw/workspace/svnmifos/test/org/mifos/application/meeting/persistence/NewMeetingPersistenceTest.java	(revision 0)
@@ -0,0 +1,53 @@
+package org.mifos.application.meeting.persistence;
+
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+
+import org.hibernate.Session;
+import org.hibernate.Transaction;
+import org.mifos.application.meeting.business.MeetingBO;
+import org.mifos.framework.MifosTestCase;
+import org.mifos.framework.hibernate.helper.HibernateUtil;
+import org.mifos.framework.util.helpers.DateUtils;
+import org.mifos.framework.util.helpers.TestObjectFactory;
+
+public class NewMeetingPersistenceTest extends MifosTestCase {
+	private Transaction transaction;
+	private MeetingBO meeting;
+	private Session session;
+	private MeetingPersistence meetingPersistence;
+
+	public void testSaveAndRetrieveMeetingsForGivenDate() throws Exception {
+		session.save(meeting);
+		List<MeetingBO> retrievedMeetings = meetingPersistence
+				.getMeetingsForDate(meeting.getStartDate());
+		assertFalse(retrievedMeetings.isEmpty());
+		assertEquals(1, retrievedMeetings.size());
+		assertEquals(meeting, retrievedMeetings.get(0));
+	}
+
+	public void testSaveAndRetrieveMeetingsForGivenPlace() throws Exception {
+		session.save(meeting);
+		List<MeetingBO> retrievedMeetings = meetingPersistence
+				.getMeetingsForPlace(meeting.getMeetingPlace());
+		assertFalse(retrievedMeetings.isEmpty());
+		assertEquals(1, retrievedMeetings.size());
+		assertEquals(meeting, retrievedMeetings.get(0));
+	}
+
+	@Override
+	protected void tearDown() throws Exception {
+		super.tearDown();
+		transaction.rollback();
+	}
+
+	@Override
+	protected void setUp() throws Exception {
+		session = HibernateUtil.getSessionTL();
+		meetingPersistence = new MeetingPersistence();
+		transaction = HibernateUtil.startTransaction();
+		meeting = TestObjectFactory.getTypicalMeeting();
+		meeting.setStartDate(DateUtils.getDate(2008, Calendar.JANUARY, 1));
+	}
+}
Index: E:/tw/workspace/svnmifos/src/org/mifos/application/meeting/persistence/MeetingPersistence.java
===================================================================
--- E:/tw/workspace/svnmifos/src/org/mifos/application/meeting/persistence/MeetingPersistence.java	(revision 12347)
+++ E:/tw/workspace/svnmifos/src/org/mifos/application/meeting/persistence/MeetingPersistence.java	(working copy)
@@ -38,6 +38,8 @@
 package org.mifos.application.meeting.persistence;
 
 import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 
 import org.mifos.application.master.business.MasterDataEntity;
@@ -70,4 +72,17 @@
 	public MeetingBO getMeeting(Integer meetingId)throws PersistenceException{
 		return (MeetingBO) getPersistentObject(MeetingBO.class, meetingId);
 	}
+	
+
+	public List<MeetingBO> getMeetingsForDate(Date startDate) throws PersistenceException {
+		HashMap<String, Object> params = new HashMap<String, Object>();
+		params.put("MEETING_DATE", startDate);
+		return executeNamedQuery("meetingDate.getMeetingsForDate", params);
+	}
+
+	public List<MeetingBO> getMeetingsForPlace(String meetingPlace) throws PersistenceException {
+		HashMap<String, Object> params = new HashMap<String, Object>();
+		params.put("MEETING_PLACE", meetingPlace);
+		return executeNamedQuery("meetingDate.getMeetingsForPlace", params);
+	}		
 }
Index: E:/tw/workspace/svnmifos/src/org/mifos/application/meeting/business/MeetingBO.hbm.xml
===================================================================
--- E:/tw/workspace/svnmifos/src/org/mifos/application/meeting/business/MeetingBO.hbm.xml	(revision 12347)
+++ E:/tw/workspace/svnmifos/src/org/mifos/application/meeting/business/MeetingBO.hbm.xml	(working copy)
@@ -15,4 +15,16 @@
         <property name="meetingPlace" column="MEETING_PLACE" type="string" />
         <property name="meetingStartDate" column="START_DATE" type="date" access="field"/>  
     </class>
+    
+	<query name="meetingDate.getMeetingsForDate">
+		<![CDATA[ from org.mifos.application.meeting.business.MeetingBO meeting
+					where meeting.meetingStartDate = :MEETING_DATE
+		]]>
+	</query>    
+	
+	<query name="meetingDate.getMeetingsForPlace">
+		<![CDATA[ from org.mifos.application.meeting.business.MeetingBO meeting
+					where meeting.meetingPlace = :MEETING_PLACE
+		]]>
+	</query>    
 </hibernate-mapping>
\ No newline at end of file
