You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2015/02/06 06:19:28 UTC

svn commit: r1657747 - in /openmeetings: branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/ branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/calendar/ branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/calendar/ bran...

Author: solomax
Date: Fri Feb  6 05:19:28 2015
New Revision: 1657747

URL: http://svn.apache.org/r1657747
Log:
[OPENMEETINGS-1157] getNextAppointment* methods are fixed, code clean-up

Modified:
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java
    openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebServiceFacade.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/calendar/Appointment.java
    openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/calendar/management/AppointmentLogic.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java
    openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
    openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java

Modified: openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebService.java Fri Feb  6 05:19:28 2015
@@ -152,7 +152,7 @@ public class CalendarWebService {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
 			if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
-				return new AppointmentDTO(appointmentLogic.getNextAppointment());
+				return new AppointmentDTO(appointmentDao.getNextAppointment(users_id, new Date()));
 			}
 		} catch (Exception err) {
 			log.error("[getNextAppointmentById]", err);
@@ -172,8 +172,8 @@ public class CalendarWebService {
 	public AppointmentDTO getNextAppointmentForUserId(String SID, long userId) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
-				return new AppointmentDTO(appointmentLogic.getNextAppointment());
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return new AppointmentDTO(appointmentDao.getNextAppointment(userId, new Date()));
 			}
 		} catch (Exception err) {
 			log.error("[getNextAppointmentById]", err);
@@ -192,11 +192,11 @@ public class CalendarWebService {
 	 *            
 	 * @return - calendar event list
 	 */
-	public List<AppointmentDTO> searchAppointmentByName(String SID, String appointmentName) {
+	public List<AppointmentDTO> searchAppointmentByTitle(String SID, String appointmentName) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
 			if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
-				return getAppointments(appointmentLogic.searchAppointmentByName(appointmentName));
+				return getAppointments(appointmentDao.searchAppointmentsByTitle(users_id, appointmentName));
 			}
 		} catch (Exception err) {
 			log.error("[searchAppointmentByName]", err);

Modified: openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebServiceFacade.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebServiceFacade.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebServiceFacade.java (original)
+++ openmeetings/branches/3.0.x/src/axis/java/org/apache/openmeetings/axis/services/CalendarWebServiceFacade.java Fri Feb  6 05:19:28 2015
@@ -45,8 +45,8 @@ public class CalendarWebServiceFacade ex
 		return getBean(CalendarWebService.class).getNextAppointmentForUserId(SID, userId);
 	}
 
-	public List<AppointmentDTO> searchAppointmentByName(String SID, String appointmentName) throws AxisFault {
-		return getBean(CalendarWebService.class).searchAppointmentByName(SID, appointmentName);
+	public List<AppointmentDTO> searchAppointmentByTitle(String SID, String appointmentName) throws AxisFault {
+		return getBean(CalendarWebService.class).searchAppointmentByTitle(SID, appointmentName);
 	}
 
 	public Long saveAppointment(String SID, String appointmentName,

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java Fri Feb  6 05:19:28 2015
@@ -277,47 +277,15 @@ public class AppointmentDao {
 	}
 
 	// next appointment to select date
-	public Appointment getNextAppointment(Date appointmentStarttime) {
-		try {
-
-			String hql = "select a from Appointment a "
-					+ "WHERE a.deleted false "
-					+ "AND a.start > :appointmentStarttime ";
-
-			TypedQuery<Appointment> query = em.createQuery(hql, Appointment.class);
-			query.setParameter("appointmentStarttime", appointmentStarttime);
-
-			Appointment appoint = null;
-			try {
-				appoint = query.getSingleResult();
-			} catch (NoResultException ex) {
-			}
-
-			return appoint;
-		} catch (Exception ex2) {
-			log.error("[getNextAppointmentById]: ", ex2);
-		}
-		return null;
+	public Appointment getNextAppointment(Long userId, Date start) {
+		List<Appointment> list = em.createNamedQuery("getNextAppointment", Appointment.class)
+				.setParameter("start", start).setParameter("userId", userId).getResultList();
+		return list == null || list.isEmpty() ? null : list.get(0);
 	}
 
-	public List<Appointment> searchAppointmentsByName(String name) {
-		try {
-
-			String hql = "select a from Appointment a "
-					+ "WHERE a.deleted false "
-					+ "AND a.title LIKE :appointmentName";
-
-			TypedQuery<Appointment> query = em.createQuery(hql,
-					Appointment.class);
-			query.setParameter("appointmentName", name);
-
-			List<Appointment> listAppoints = query.getResultList();
-
-			return listAppoints;
-		} catch (Exception ex2) {
-			log.error("[searchAppointmentsByName]: ", ex2);
-		}
-		return null;
+	public List<Appointment> searchAppointmentsByTitle(Long userId, String title) {
+		return em.createNamedQuery("getNextAppointment", Appointment.class)
+				.setParameter("title", title).setParameter("userId", userId).getResultList();
 	}
 
 	/**

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/calendar/Appointment.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/calendar/Appointment.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/calendar/Appointment.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/calendar/Appointment.java Fri Feb  6 05:19:28 2015
@@ -104,6 +104,8 @@ import org.simpleframework.xml.Root;
 			+ "		OR (a.start < :starttime AND a.end > :endtime) "
 			+ "	)"
 	    )
+    , @NamedQuery(name="getNextAppointment", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.start > :start AND a.owner.user_id = :userId")
+    , @NamedQuery(name="getAppointmentsByTitle", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.title LIKE :title AND a.owner.user_id = :userId")
 })
 @Root(name="appointment")
 public class Appointment implements Serializable {

Modified: openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/calendar/management/AppointmentLogic.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/calendar/management/AppointmentLogic.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/calendar/management/AppointmentLogic.java (original)
+++ openmeetings/branches/3.0.x/src/main/java/org/apache/openmeetings/data/calendar/management/AppointmentLogic.java Fri Feb  6 05:19:28 2015
@@ -30,7 +30,6 @@ import java.util.List;
 import java.util.TimeZone;
 
 import org.apache.openmeetings.data.conference.InvitationManager;
-import org.apache.openmeetings.data.conference.RoomManager;
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentCategoryDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
@@ -76,8 +75,6 @@ public class AppointmentLogic {
 	@Autowired
 	private InvitationDao invitationDao;
 	@Autowired
-	private RoomManager roomManager;
-	@Autowired
 	private UserDao userDao;
 	@Autowired
 	private MeetingMemberDao meetingMemberDao;
@@ -122,25 +119,6 @@ public class AppointmentLogic {
 
 	// --------------------------------------------------------------------------------------------
 
-	// next appointment to current date
-	public Appointment getNextAppointment() {
-		try {
-			return appointmentDao.getNextAppointment(new Date());
-		} catch (Exception err) {
-			log.error("[getNextAppointmentById]", err);
-		}
-		return null;
-	}
-
-	public List<Appointment> searchAppointmentByName(String appointmentName) {
-		try {
-			return appointmentDao.searchAppointmentsByName(appointmentName);
-		} catch (Exception err) {
-			log.error("[searchAppointmentByName]", err);
-		}
-		return null;
-	}
-
 	private void sendReminder(User u, Appointment a) throws Exception {
 		Invitation i = new Invitation();
 		i.setInvitedBy(u);

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java Fri Feb  6 05:19:28 2015
@@ -241,47 +241,15 @@ public class AppointmentDao {
 	}
 
 	// next appointment to select date
-	public Appointment getNextAppointment(Date appointmentStarttime) {
-		try {
-
-			String hql = "select a from Appointment a "
-					+ "WHERE a.deleted false "
-					+ "AND a.start > :appointmentStarttime ";
-
-			TypedQuery<Appointment> query = em.createQuery(hql, Appointment.class);
-			query.setParameter("appointmentStarttime", appointmentStarttime);
-
-			Appointment appoint = null;
-			try {
-				appoint = query.getSingleResult();
-			} catch (NoResultException ex) {
-			}
-
-			return appoint;
-		} catch (Exception ex2) {
-			log.error("[getNextAppointmentById]: ", ex2);
-		}
-		return null;
+	public Appointment getNextAppointment(Long userId, Date start) {
+		List<Appointment> list = em.createNamedQuery("getNextAppointment", Appointment.class)
+				.setParameter("start", start).setParameter("userId", userId).getResultList();
+		return list == null || list.isEmpty() ? null : list.get(0);
 	}
 
-	public List<Appointment> searchAppointmentsByName(String name) {
-		try {
-
-			String hql = "select a from Appointment a "
-					+ "WHERE a.deleted false "
-					+ "AND a.title LIKE :appointmentName";
-
-			TypedQuery<Appointment> query = em.createQuery(hql,
-					Appointment.class);
-			query.setParameter("appointmentName", name);
-
-			List<Appointment> listAppoints = query.getResultList();
-
-			return listAppoints;
-		} catch (Exception ex2) {
-			log.error("[searchAppointmentsByName]: ", ex2);
-		}
-		return null;
+	public List<Appointment> searchAppointmentsByTitle(Long userId, String title) {
+		return em.createNamedQuery("getNextAppointment", Appointment.class)
+				.setParameter("title", title).setParameter("userId", userId).getResultList();
 	}
 
 	/**

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java Fri Feb  6 05:19:28 2015
@@ -104,6 +104,8 @@ import org.simpleframework.xml.Root;
 			+ "		OR (a.start < :starttime AND a.end > :endtime) "
 			+ "	)"
 	    )
+    , @NamedQuery(name="getNextAppointment", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.start > :start AND a.owner.id = :userId")
+    , @NamedQuery(name="getAppointmentsByTitle", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.title LIKE :title AND a.owner.id = :userId")
 })
 @Root(name="appointment")
 public class Appointment implements IDataProviderEntity {

Modified: openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java Fri Feb  6 05:19:28 2015
@@ -30,7 +30,6 @@ import java.util.Date;
 import java.util.List;
 import java.util.TimeZone;
 
-import org.apache.openmeetings.core.data.conference.RoomManager;
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentCategoryDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
@@ -77,8 +76,6 @@ public class AppointmentLogic {
 	@Autowired
 	private InvitationDao invitationDao;
 	@Autowired
-	private RoomManager roomManager;
-	@Autowired
 	private UserDao userDao;
 	@Autowired
 	private MeetingMemberDao meetingMemberDao;
@@ -87,25 +84,6 @@ public class AppointmentLogic {
 
 	// --------------------------------------------------------------------------------------------
 
-	// next appointment to current date
-	public Appointment getNextAppointment() {
-		try {
-			return appointmentDao.getNextAppointment(new Date());
-		} catch (Exception err) {
-			log.error("[getNextAppointmentById]", err);
-		}
-		return null;
-	}
-
-	public List<Appointment> searchAppointmentByName(String appointmentName) {
-		try {
-			return appointmentDao.searchAppointmentsByName(appointmentName);
-		} catch (Exception err) {
-			log.error("[searchAppointmentByName]", err);
-		}
-		return null;
-	}
-
 	private void sendReminder(User u, Appointment a) throws Exception {
 		Invitation i = new Invitation();
 		i.setInvitedBy(u);

Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java?rev=1657747&r1=1657746&r2=1657747&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java Fri Feb  6 05:19:28 2015
@@ -162,7 +162,7 @@ public class CalendarWebService {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
 			if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
-				return new AppointmentDTO(appointmentLogic.getNextAppointment());
+				return new AppointmentDTO(appointmentDao.getNextAppointment(users_id, new Date()));
 			}
 		} catch (Exception err) {
 			log.error("[getNextAppointmentById]", err);
@@ -182,8 +182,8 @@ public class CalendarWebService {
 	public AppointmentDTO getNextAppointmentForUserId(String SID, long userId) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
-			if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
-				return new AppointmentDTO(appointmentLogic.getNextAppointment());
+			if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) {
+				return new AppointmentDTO(appointmentDao.getNextAppointment(userId, new Date()));
 			}
 		} catch (Exception err) {
 			log.error("[getNextAppointmentById]", err);
@@ -202,11 +202,11 @@ public class CalendarWebService {
 	 *            
 	 * @return - calendar event list
 	 */
-	public List<AppointmentDTO> searchAppointmentByName(String SID, String appointmentName) {
+	public List<AppointmentDTO> searchAppointmentByTitle(String SID, String appointmentName) {
 		try {
 			Long users_id = sessiondataDao.checkSession(SID);
 			if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
-				return getAppointments(appointmentLogic.searchAppointmentByName(appointmentName));
+				return getAppointments(appointmentDao.searchAppointmentsByTitle(users_id, appointmentName));
 			}
 		} catch (Exception err) {
 			log.error("[searchAppointmentByName]", err);