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);