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 2017/09/21 10:34:50 UTC
[1/2] openmeetings git commit: [OPENMEETINGS-1707] smslib is removed,
notifiers are unified
Repository: openmeetings
Updated Branches:
refs/heads/master cb0294886 -> 28cac665b
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
index 380932e..b573a93 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/AppointmentLogic.java
@@ -26,15 +26,13 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import java.util.ArrayList;
import java.util.Calendar;
-import java.util.Date;
import java.util.List;
import java.util.TimeZone;
+import org.apache.openmeetings.core.notifier.NotifierService;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
import org.apache.openmeetings.db.dao.calendar.MeetingMemberDao;
-import org.apache.openmeetings.db.dao.label.LabelDao;
-import org.apache.openmeetings.db.dao.room.IInvitationManager;
import org.apache.openmeetings.db.dao.room.InvitationDao;
import org.apache.openmeetings.db.dao.room.RoomDao;
import org.apache.openmeetings.db.dao.user.UserDao;
@@ -42,17 +40,16 @@ import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.Appointment.Reminder;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
import org.apache.openmeetings.db.entity.room.Invitation;
-import org.apache.openmeetings.db.entity.room.Invitation.MessageType;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.db.util.TimezoneUtil;
-import org.apache.openmeetings.service.mail.template.subject.AbstractSubjectEmailTemplate;
-import org.apache.openmeetings.service.mail.template.subject.AppointmentReminderTemplate;
import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class AppointmentLogic {
private static final Logger log = Red5LoggerFactory.getLogger(AppointmentLogic.class, webAppRootKey);
@@ -63,8 +60,6 @@ public class AppointmentLogic {
@Autowired
private RoomDao roomDao;
@Autowired
- private IInvitationManager invitationManager;
- @Autowired
private TimezoneUtil timezoneUtil;
@Autowired
private InvitationDao invitationDao;
@@ -72,6 +67,8 @@ public class AppointmentLogic {
private UserDao userDao;
@Autowired
private MeetingMemberDao meetingMemberDao;
+ @Autowired
+ private NotifierService notifierService;
// --------------------------------------------------------------------------------------------
@@ -85,26 +82,8 @@ public class AppointmentLogic {
}
private void sendReminder(User u, Appointment a, Invitation inv) throws Exception {
- if (inv == null) {
- log.error(String.format("Error retrieving Invitation for member %s in Appointment %s"
- , u.getAddress().getEmail(), a.getTitle()));
- return;
- }
-
- TimeZone tz = timezoneUtil.getTimeZone(u.getTimeZoneId());
-
- long langId = u.getLanguageId();
- // Get the required labels one time for all meeting members. The
- // Language of the email will be the system default language
-
- String smsSubject = generateSMSSubject(LabelDao.getString("1158", langId), a);
-
- AbstractSubjectEmailTemplate t = AppointmentReminderTemplate.get(u, a, tz);
- invitationManager.sendInvitationLink(inv, MessageType.Create, t.getSubject(), t.getEmail(), false);
-
- invitationManager.sendInvitationReminderSMS(u.getAddress().getPhone(), smsSubject, langId);
+ notifierService.notify(u, a, inv);
if (inv.getHash() != null) {
- inv.setUpdated(new Date());
invitationDao.update(inv);
}
}
@@ -175,11 +154,6 @@ public class AppointmentLogic {
}
}
- private String generateSMSSubject(String labelid1158, Appointment ment) {
- String subj = cfgDao.getString("sms.subject", null);
- return subj == null || subj.length() == 0 ? labelid1158 + " " + ment.getTitle() : subj;
- }
-
public Appointment getAppointment(String appointmentName,
String appointmentLocation, String appointmentDescription,
Calendar appointmentstart, Calendar appointmentend,
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/iCalUtils.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/iCalUtils.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/iCalUtils.java
index 59133e3..ff3fb4d 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/iCalUtils.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/iCalUtils.java
@@ -72,6 +72,7 @@ import net.fortuna.ical4j.model.property.Version;
* Class which provides iCalendar Utilities.
* This class's functions could be made static, as they are not instantiated anyway.
*/
+@org.springframework.stereotype.Component
public class iCalUtils {
private static final Logger log = Red5LoggerFactory.getLogger(iCalUtils.class, webAppRootKey);
public static final String PROD_ID = "-//Events Calendar//Apache Openmeetings//EN";
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
index eaaae1e..cd52067 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/mail/EmailManager.java
@@ -34,11 +34,13 @@ import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
/**
* @author swagner
*
*/
+@Component
public class EmailManager {
private static final Logger log = Red5LoggerFactory.getLogger(EmailManager.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/MailNotifier.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/MailNotifier.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/MailNotifier.java
new file mode 100644
index 0000000..be2399a
--- /dev/null
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/MailNotifier.java
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.service.notifier;
+
+import java.util.TimeZone;
+
+import javax.annotation.PostConstruct;
+
+import org.apache.openmeetings.core.notifier.INotifier;
+import org.apache.openmeetings.core.notifier.NotifierService;
+import org.apache.openmeetings.db.dao.room.IInvitationManager;
+import org.apache.openmeetings.db.entity.calendar.Appointment;
+import org.apache.openmeetings.db.entity.room.Invitation;
+import org.apache.openmeetings.db.entity.room.Invitation.MessageType;
+import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.db.util.TimezoneUtil;
+import org.apache.openmeetings.service.mail.template.subject.AbstractSubjectEmailTemplate;
+import org.apache.openmeetings.service.mail.template.subject.AppointmentReminderTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class MailNotifier implements INotifier {
+ @Autowired
+ private NotifierService notifier;
+ @Autowired
+ private IInvitationManager invitationManager;
+ @Autowired
+ private TimezoneUtil timezoneUtil;
+
+ @PostConstruct
+ private void register() {
+ notifier.addNotifier(this);
+ }
+
+ @Override
+ public void notify(User u, Appointment a, Invitation inv) throws Exception {
+ TimeZone tz = timezoneUtil.getTimeZone(u.getTimeZoneId());
+ AbstractSubjectEmailTemplate t = AppointmentReminderTemplate.get(u, a, tz);
+ invitationManager.sendInvitationLink(inv, MessageType.Create, t.getSubject(), t.getEmail(), false);
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java
new file mode 100644
index 0000000..35f2df0
--- /dev/null
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/notifier/TextNotifier.java
@@ -0,0 +1,71 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.service.notifier;
+
+import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REMINDER_MESSAGE;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+
+import javax.annotation.PostConstruct;
+
+import org.apache.openmeetings.core.notifier.INotifier;
+import org.apache.openmeetings.core.notifier.NotifierService;
+import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
+import org.apache.openmeetings.db.dao.label.LabelDao;
+import org.apache.openmeetings.db.entity.calendar.Appointment;
+import org.apache.openmeetings.db.entity.room.Invitation;
+import org.apache.openmeetings.db.entity.user.User;
+import org.apache.wicket.util.string.Strings;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.task.TaskExecutor;
+import org.springframework.stereotype.Component;
+
+@Component
+public class TextNotifier implements INotifier {
+ private static final Logger log = Red5LoggerFactory.getLogger(TextNotifier.class, webAppRootKey);
+ @Autowired
+ private NotifierService notifier;
+ @Autowired
+ protected TaskExecutor taskExecutor;
+ @Autowired
+ protected ConfigurationDao cfgDao;
+
+ @PostConstruct
+ private void register() {
+ notifier.addNotifier(this);
+ }
+
+ @Override
+ public void notify(User u, Appointment a, Invitation inv) throws Exception {
+ if (u.getAddress() == null || Strings.isEmpty(u.getAddress().getPhone())) {
+ log.debug("User has no Phone, skip sending notification");
+ return;
+ }
+ final String phone = u.getAddress().getPhone();
+ String msg = cfgDao.getString(CONFIG_REMINDER_MESSAGE, null);
+ if (Strings.isEmpty(msg)) {
+ msg = String.format("%s %s", LabelDao.getString("1158", u.getLanguageId()), a.getTitle());
+ }
+ final String reminderMsg = msg;
+ taskExecutor.execute(() -> {
+ log.debug("Sending Text to: {}, msg is: {}", phone, reminderMsg);
+ });
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
index c99107b..13edce1 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/quartz/scheduler/ReminderJob.java
@@ -30,7 +30,9 @@ import org.apache.openmeetings.util.InitializationContainer;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component("reminderJob")
public class ReminderJob extends AbstractJob {
private static Logger log = Red5LoggerFactory.getLogger(ReminderJob.class, webAppRootKey);
@Autowired
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
index a4bf382..ebc0a5e 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
@@ -30,7 +30,6 @@ import java.util.UUID;
import org.apache.openmeetings.IApplication;
import org.apache.openmeetings.core.mail.MailHandler;
-import org.apache.openmeetings.core.mail.SMSHandler;
import org.apache.openmeetings.db.dao.room.IInvitationManager;
import org.apache.openmeetings.db.dao.room.InvitationDao;
import org.apache.openmeetings.db.entity.basic.MailMessage;
@@ -55,12 +54,14 @@ import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
/**
*
* @author swagner
*
*/
+@Component
public class InvitationManager implements IInvitationManager {
private static final Logger log = Red5LoggerFactory.getLogger(InvitationManager.class, webAppRootKey);
@@ -69,8 +70,6 @@ public class InvitationManager implements IInvitationManager {
@Autowired
private MailHandler mailHandler;
@Autowired
- private SMSHandler smsHandler;
- @Autowired
private TimezoneUtil timezoneUtil;
/**
@@ -150,25 +149,6 @@ public class InvitationManager implements IInvitationManager {
}
/**
- * This method sends invitation reminder SMS
- * @param phone user's phone
- * @param subject
- * @return
- */
- @Override
- public boolean sendInvitationReminderSMS(String phone, String subject, long languageId) {
- if (!Strings.isEmpty(phone)) {
- log.debug("sendInvitationReminderSMS to " + phone + ": " + subject);
- try {
- return smsHandler.sendSMS(phone, subject, languageId);
- } catch (Exception e) {
- log.error("sendInvitationReminderSMS", e);
- }
- }
- return false;
- }
-
- /**
* @author vasya
*
* @param member
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
----------------------------------------------------------------------
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
index 34d0c6c..4b5b0af 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/user/UserManager.java
@@ -63,12 +63,14 @@ import org.red5.logging.Red5LoggerFactory;
import org.red5.server.api.scope.IScope;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
/**
*
* @author swagner
*
*/
+@Component
public class UserManager implements IUserManager {
private static final Logger log = Red5LoggerFactory.getLogger(UserManager.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
----------------------------------------------------------------------
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
index b8cc1f6..7fa53a5 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
@@ -85,6 +85,7 @@ public class OpenmeetingsVariables {
public static final String CONFIG_KEYCODE_EXCLUSIVE = "exclusive.audio.keycode";
public static final String CONFIG_KEYCODE_MUTE = "mute.keycode";
public static final String CONFIG_MYROOMS_ENABLED = "personal.rooms.enabled";
+ public static final String CONFIG_REMINDER_MESSAGE = "reminder.message";
public static final String HEADER_XFRAME_SAMEORIGIN = "SAMEORIGIN";
public static final String HEADER_CSP_SELF = "default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src 'self' data:;";
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
----------------------------------------------------------------------
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
index 31fb980..0a5592d 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/mail/IcalHandler.java
@@ -111,14 +111,14 @@ public class IcalHandler {
// ---------------------------------------------------------------------------------------
public String addNewMeeting(Date startDate, Date endDate, String name,
List<Map<String, String>> attendees, String description,
- Map<String, String> organizer, String uid, String javaTzId) throws Exception
+ Map<String, String> organizer, String uid, String javaTzId)
{
TimeZoneRegistry registry = TimeZoneRegistryFactory.getInstance().createRegistry();
TimeZone timeZone = registry.getTimeZone(javaTzId);
if (timeZone == null) {
- throw new Exception("Unable to get time zone by id provided: " + javaTzId);
+ throw new RuntimeException("Unable to get time zone by id provided: " + javaTzId);
}
DateTime start = new DateTime(startDate);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
index f0d267c..bad459e 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
@@ -40,21 +40,6 @@
<context:annotation-config />
<context:component-scan base-package="org.apache.openmeetings" />
- <!-- Start of Services exposed to red5 -->
- <bean id="web.handler" class="org.apache.openmeetings.core.remote.ScopeApplicationAdapter" />
- <bean id="mobile.service" class="org.apache.openmeetings.core.remote.MobileService" />
- <!-- End of Services exposed to red5 -->
-
- <bean id="mainservice" class="org.apache.openmeetings.core.remote.MainService" />
- <bean id="recordingservice" class="org.apache.openmeetings.core.remote.RecordingService" />
- <bean id="openmeetings.SessionManager" class="org.apache.openmeetings.core.session.SessionManager"/>
- <bean id="openmeetings.FileProcessor" class="org.apache.openmeetings.core.data.file.FileProcessor" />
- <bean id="openmeetings.FlvExplorerConverter" class="org.apache.openmeetings.core.converter.FlvExplorerConverter" />
- <bean id="openmeetings.RecordingConverterTask" class="org.apache.openmeetings.core.data.record.converter.RecordingConverterTask" />
- <bean id="openmeetings.InterviewConverterTask" class="org.apache.openmeetings.core.data.record.converter.InterviewConverterTask" />
- <bean id="openmeetings.InterviewConverter" class="org.apache.openmeetings.core.converter.InterviewConverter" />
- <bean id="openmeetings.RecordingConverter" class="org.apache.openmeetings.core.converter.RecordingConverter" />
-
<!--
5000 == 5 sec
300000 == 5 min
@@ -91,7 +76,6 @@
<bean id="triggerCleanExpiredResetHash" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"
p:jobDetail-ref="cleanExpiredResetHashJobDetails" p:startDelay="5000" p:repeatInterval="3600000" />
- <bean id="reminderJob" class="org.apache.openmeetings.service.quartz.scheduler.ReminderJob"/>
<bean id="meetingReminderJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
p:targetObject-ref="reminderJob" p:targetMethod="remindMeetings" p:concurrent="false" />
<bean id="triggerMeetingReminder" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"
@@ -102,7 +86,6 @@
p:jobDetail-ref="expiringRecordingJobDetail" p:startDelay="5000" p:repeatInterval="3600000"/>
<!-- Mail related jobs -->
- <bean id="mailHandler" class="org.apache.openmeetings.core.mail.MailHandler" />
<bean id="resetSendingMailStatus" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
p:targetObject-ref="mailHandler" p:targetMethod="resetSendingStatus" p:concurrent="false" />
<bean id="triggerResetSendingMailStatus" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"
@@ -130,7 +113,6 @@
<!-- End of Services -->
<!-- Interface Transactional -->
- <bean id="roomDao" class="org.apache.openmeetings.db.dao.room.RoomDao"/>
<bean id="sipDao" class="org.apache.openmeetings.db.dao.room.SipDao">
<!-- Should be uncommented and updated with real values for Asterisk
<constructor-arg index="0" value="127.0.0.1"/>
@@ -141,50 +123,8 @@
<property name="uid" value="87dddad4-9ca5-475b-860f-2e0825d02b76"/>
-->
</bean>
- <bean id="invitationDao" class="org.apache.openmeetings.db.dao.room.InvitationDao" />
- <bean id="groupDao" class="org.apache.openmeetings.db.dao.user.GroupDao" />
- <bean id="groupUserDao" class="org.apache.openmeetings.db.dao.user.GroupUserDao" />
- <bean id="pollDao" class="org.apache.openmeetings.db.dao.room.PollDao" />
- <bean id="labelDao" class="org.apache.openmeetings.db.dao.label.LabelDao" />
- <bean id="configurationDao" class="org.apache.openmeetings.db.dao.basic.ConfigurationDao" />
- <bean id="appointmentDao" class="org.apache.openmeetings.db.dao.calendar.AppointmentDao" />
- <bean id="sessionDao" class="org.apache.openmeetings.db.dao.server.SessiondataDao" />
- <bean id="roomModeratorDao" class="org.apache.openmeetings.db.dao.room.RoomModeratorDao" />
- <bean id="roomGroupDao" class="org.apache.openmeetings.db.dao.room.RoomGroupDao"/>
- <bean id="conferenceLogDao" class="org.apache.openmeetings.db.dao.log.ConferenceLogDao" />
- <bean id="fileItemLogDao" class="org.apache.openmeetings.db.dao.file.FileItemLogDao" />
- <bean id="fileItemDao" class="org.apache.openmeetings.db.dao.file.FileItemDao" />
- <bean id="recordingDao" class="org.apache.openmeetings.db.dao.record.RecordingDao" />
- <bean id="recordingMetaDataDao" class="org.apache.openmeetings.db.dao.record.RecordingMetaDataDao" />
- <bean id="recordingMetaDeltaDao" class="org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao" />
- <bean id="ldapConfigDao" class="org.apache.openmeetings.db.dao.server.LdapConfigDao" />
- <bean id="meetingMemberDao" class="org.apache.openmeetings.db.dao.calendar.MeetingMemberDao" />
- <bean id="privateMessageFolderDao" class="org.apache.openmeetings.db.dao.user.PrivateMessageFolderDao" />
- <bean id="privateMessageDao" class="org.apache.openmeetings.db.dao.user.PrivateMessageDao" />
- <bean id="soapLoginDao" class="org.apache.openmeetings.db.dao.server.SOAPLoginDao" />
- <bean id="userContactDao" class="org.apache.openmeetings.db.dao.user.UserContactDao" />
- <bean id="userDao" class="org.apache.openmeetings.db.dao.user.UserDao" />
- <bean id="chatDao" class="org.apache.openmeetings.db.dao.basic.ChatDao" />
- <bean id="mailMessageDao" class="org.apache.openmeetings.db.dao.basic.MailMessageDao" />
- <bean id="oauth2Dao" class="org.apache.openmeetings.db.dao.server.OAuth2Dao" />
- <bean id="omCalendarDao" class="org.apache.openmeetings.db.dao.calendar.OmCalendarDao" />
-
- <bean id="userManager" class="org.apache.openmeetings.service.user.UserManager" />
- <bean id="appointmentLogic" class="org.apache.openmeetings.service.calendar.AppointmentLogic" />
- <bean id="emailManagement" class="org.apache.openmeetings.service.mail.EmailManager" />
- <bean id="invitationManagement" class="org.apache.openmeetings.service.room.InvitationManager" />
- <!-- No Interface -->
- <bean id="imageConverter" class="org.apache.openmeetings.core.converter.ImageConverter" />
- <bean id="documentConverter" class="org.apache.openmeetings.core.converter.DocumentConverter" />
- <bean id="smsHandler" class="org.apache.openmeetings.core.mail.SMSHandler" />
- <bean id="importInitvalues" class="org.apache.openmeetings.installation.ImportInitvalues" />
- <bean id="ldapLoginManagement" class="org.apache.openmeetings.core.ldap.LdapLoginManagement" />
- <bean id="timezoneUtil" class="org.apache.openmeetings.db.util.TimezoneUtil" />
- <bean id="backupExport" class="org.apache.openmeetings.backup.BackupExport" />
- <bean id="backupImport" class="org.apache.openmeetings.backup.BackupImport" />
<bean id="appointmentManager" class="org.apache.openmeetings.service.calendar.caldav.AppointmentManager" destroy-method="destroy"/>
- <bean id="iCalUtils" class="org.apache.openmeetings.service.calendar.caldav.iCalUtils"/>
<!-- Thread Executor -->
<bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-web/src/main/webapp/WEB-INF/classes/cxf-servlet.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/cxf-servlet.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/cxf-servlet.xml
index 4475d20..6fcee68 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/cxf-servlet.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/cxf-servlet.xml
@@ -20,10 +20,12 @@
-->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:context="http://www.springframework.org/schema/context"
xmlns:jaxrs="http://cxf.apache.org/jaxrs"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd"
>
@@ -31,15 +33,8 @@
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
- <bean id="calendarWebService" class="org.apache.openmeetings.webservice.CalendarWebService" />
- <bean id="errorWebService" class="org.apache.openmeetings.webservice.ErrorWebService" />
- <bean id="fileWebService" class="org.apache.openmeetings.webservice.FileWebService" />
- <bean id="groupWebService" class="org.apache.openmeetings.webservice.GroupWebService" />
- <bean id="infoWebService" class="org.apache.openmeetings.webservice.InfoWebService" />
- <bean id="recordWebService" class="org.apache.openmeetings.webservice.RecordingWebService" />
- <bean id="roomWebService" class="org.apache.openmeetings.webservice.RoomWebService" />
- <bean id="userWebService" class="org.apache.openmeetings.webservice.UserWebService"/>
- <bean id="netTestWebService" class="org.apache.openmeetings.webservice.NetTestWebService" />
+ <context:annotation-config />
+ <context:component-scan base-package="org.apache.openmeetings.webservice" />
<!-- (writeXsiType=false) -->
<jaxrs:server id="server" address="/">
@@ -49,10 +44,10 @@
<ref bean="fileWebService"/>
<ref bean="groupWebService"/>
<ref bean="infoWebService"/>
+ <ref bean="netTestWebService"/> <!-- JaxRs only -->
<ref bean="recordWebService"/>
<ref bean="roomWebService"/>
<ref bean="userWebService"/>
- <ref bean="netTestWebService"/> <!-- JaxRs only -->
</jaxrs:serviceBeans>
<jaxrs:providers>
<bean id="appDtoMessageBodyWriter" class="org.apache.openmeetings.webservice.util.AppointmentMessageBodyWriter" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
index 3c55b02..d20f62c 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/logback-config.xml
@@ -23,7 +23,7 @@
<jmxConfigurator contextName="${current_openmeetings_context_name}" />
- <appender name="FLOG2" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>log/${current_openmeetings_context_name}.log</File>
<Append>false</Append>
<Encoding>UTF-8</Encoding>
@@ -45,7 +45,7 @@
<maxHistory>50</maxHistory>
</rollingPolicy>
</appender>
- <appender name="CONSOLE2" class="ch.qos.logback.core.ConsoleAppender">
+ <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%5p %d{MM-dd HH:mm:ss.SSS } %r %L %c{15} [%.15thread] - %m%n</pattern>
</layout>
@@ -59,7 +59,7 @@
<logger name="org.apache.mina.filter.ssl.SslFilter" level="ERROR" />
<logger name="org.apache.wicket" level="WARN" />
<root level="DEBUG">
- <appender-ref ref="FLOG2" />
- <appender-ref ref="CONSOLE2" />
+ <appender-ref ref="FILE" />
+ <appender-ref ref="CONSOLE" />
</root>
</configuration>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-web/src/main/webapp/WEB-INF/red5-web.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/red5-web.xml b/openmeetings-web/src/main/webapp/WEB-INF/red5-web.xml
index a3e0aa2..4723baf 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/red5-web.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/red5-web.xml
@@ -29,7 +29,7 @@
<bean id="web.context" class="org.red5.server.Context" autowire="byType" />
- <bean id="web.scope" class="org.red5.server.scope.WebScope" init-method="register">
+ <bean id="web.scope" class="org.red5.server.scope.WebScope">
<property name="server" ref="red5.server" />
<property name="parent" ref="global.scope" />
<property name="context" ref="web.context" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
index 880d01a..f01512d 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java
@@ -54,6 +54,7 @@ import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.webservice.error.ServiceException;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
* CalendarService contains methods to create, edit delete calendar meetings
@@ -61,6 +62,7 @@ import org.slf4j.Logger;
* @author sebawagner
*
*/
+@Service("calendarWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.CalendarWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
index 2366082..b58ad4e 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
@@ -39,6 +39,7 @@ import org.apache.openmeetings.db.dto.basic.ServiceResult.Type;
import org.apache.openmeetings.db.entity.server.Sessiondata;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
*
@@ -47,6 +48,7 @@ import org.slf4j.Logger;
* @author solomax
*
*/
+@Service("errorWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.ErrorWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
index 1afcef2..9d530f3 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
@@ -56,6 +56,7 @@ import org.apache.openmeetings.util.process.ConverterProcessResultList;
import org.apache.openmeetings.webservice.error.ServiceException;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
*
@@ -65,6 +66,7 @@ import org.slf4j.Logger;
* @author sebawagner
*
*/
+@Service("fileWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.FileWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
index 6960fc3..3a6dbfb 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/GroupWebService.java
@@ -58,6 +58,7 @@ import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.webservice.error.ServiceException;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
*
@@ -67,6 +68,7 @@ import org.slf4j.Logger;
* @author sebawagner
*
*/
+@Service("groupWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.GroupWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java
index 24a9816..2298998 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/InfoWebService.java
@@ -29,14 +29,16 @@ import javax.ws.rs.core.MediaType;
import org.apache.cxf.feature.Features;
import org.apache.openmeetings.db.dto.basic.Info;
+import org.springframework.stereotype.Service;
/**
- *
+ *
* The Service contains methods to get localized errors
- *
+ *
* @author solomax
- *
+ *
*/
+@Service("infoWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.InfoWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
@@ -44,7 +46,7 @@ import org.apache.openmeetings.db.dto.basic.Info;
public class InfoWebService {
/**
* Method to get current OpenMeetings version
- *
+ *
* @return - version
*/
@WebMethod
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
index 5c255be..1ec4e8b 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/NetTestWebService.java
@@ -38,67 +38,69 @@ import javax.ws.rs.core.Response.ResponseBuilder;
import org.apache.cxf.jaxrs.ext.multipart.Multipart;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
+@Service("netTestWebService")
@Path("/networktest")
public class NetTestWebService {
private static final Logger log = Red5LoggerFactory.getLogger(UserWebService.class, webAppRootKey);
- enum TestType {
- UNKNOWN,
- PING,
- JITTER,
- DOWNLOAD_SPEED,
- UPLOAD_SPEED
- }
+ enum TestType {
+ UNKNOWN,
+ PING,
+ JITTER,
+ DOWNLOAD_SPEED,
+ UPLOAD_SPEED
+ }
- private static final int PING_PACKET_SIZE = 64;
- private static final int JITTER_PACKET_SIZE = 1024;
- private static final int DOWNLOAD_PACKET_SIZE = 1024*1024;
+ private static final int PING_PACKET_SIZE = 64;
+ private static final int JITTER_PACKET_SIZE = 1024;
+ private static final int DOWNLOAD_PACKET_SIZE = 1024*1024;
- private final byte[] pingData;
- private final byte[] jitterData;
- private final byte[] downloadData;
+ private final byte[] pingData;
+ private final byte[] jitterData;
+ private final byte[] downloadData;
public NetTestWebService() {
- pingData = new byte[PING_PACKET_SIZE];
- jitterData = new byte[JITTER_PACKET_SIZE];
- downloadData = new byte[DOWNLOAD_PACKET_SIZE];
+ pingData = new byte[PING_PACKET_SIZE];
+ jitterData = new byte[JITTER_PACKET_SIZE];
+ downloadData = new byte[DOWNLOAD_PACKET_SIZE];
- Arrays.fill(pingData, (byte) '0');
- Arrays.fill(jitterData, (byte) '0');
- Arrays.fill(downloadData, (byte) '0');
+ Arrays.fill(pingData, (byte) '0');
+ Arrays.fill(jitterData, (byte) '0');
+ Arrays.fill(downloadData, (byte) '0');
}
@GET
@Produces(MediaType.APPLICATION_OCTET_STREAM)
@Path("/")
public Response get(@QueryParam("type") String type) {
- TestType testType = getTypeByString(type);
- log.debug("Network test:: get");
-
- // choose data to send
- byte[] data = new byte[0];
- switch (testType) {
- case PING:
- data = pingData;
- break;
- case JITTER:
- data = jitterData;
- break;
- case DOWNLOAD_SPEED:
- data = downloadData;
- break;
+ TestType testType = getTypeByString(type);
+ log.debug("Network test:: get");
+
+ // choose data to send
+ byte[] data = new byte[0];
+ switch (testType) {
+ case PING:
+ data = pingData;
+ break;
+ case JITTER:
+ data = jitterData;
+ break;
+ case DOWNLOAD_SPEED:
+ data = downloadData;
+ break;
case UPLOAD_SPEED:
break;
default:
break;
- }
+ }
- ResponseBuilder response = Response.ok().type(MediaType.APPLICATION_OCTET_STREAM).entity(new ByteArrayInputStream(data));
- //response.header("Content-Disposition", "attachment; filename=test.png");
- response.header("Cache-Control", "no-cache");
- response.header("Content-Length", String.valueOf(data.length));
- return response.build();
- }
+ ResponseBuilder response = Response.ok().type(MediaType.APPLICATION_OCTET_STREAM).entity(new ByteArrayInputStream(data));
+ //response.header("Content-Disposition", "attachment; filename=test.png");
+ response.header("Cache-Control", "no-cache");
+ response.header("Content-Length", String.valueOf(data.length));
+ return response.build();
+ }
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@@ -106,20 +108,19 @@ public class NetTestWebService {
public void upload(@Multipart(value = "stream", type = MediaType.APPLICATION_OCTET_STREAM) InputStream stream) throws IOException {
byte[] b = new byte[1024];
while (stream.read(b) >= 0 ) {};
- }
-
-
- private static TestType getTypeByString(String typeString) {
- if ("ping".equals(typeString)) {
- return TestType.PING;
- } else if ("jitter".equals(typeString)) {
- return TestType.JITTER;
- } else if ("download".equals(typeString)) {
- return TestType.DOWNLOAD_SPEED;
- } else if ("upload".equals(typeString)) {
- return TestType.UPLOAD_SPEED;
- }
+ }
- return TestType.UNKNOWN;
- }
+ private static TestType getTypeByString(String typeString) {
+ if ("ping".equals(typeString)) {
+ return TestType.PING;
+ } else if ("jitter".equals(typeString)) {
+ return TestType.JITTER;
+ } else if ("download".equals(typeString)) {
+ return TestType.DOWNLOAD_SPEED;
+ } else if ("upload".equals(typeString)) {
+ return TestType.UPLOAD_SPEED;
+ }
+
+ return TestType.UNKNOWN;
+ }
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
index f51e473..aea9735 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RecordingWebService.java
@@ -43,6 +43,7 @@ import org.apache.openmeetings.db.util.AuthLevelUtil;
import org.apache.openmeetings.webservice.error.ServiceException;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
*
@@ -51,6 +52,7 @@ import org.slf4j.Logger;
* @author solomax
*
*/
+@Service("recordWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.RecordingWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
index 397b3be..3b29664 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
@@ -63,6 +63,7 @@ import org.apache.openmeetings.webservice.error.ServiceException;
import org.apache.wicket.Application;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
* RoomService contains methods to manipulate rooms and create invitation hash
@@ -70,6 +71,7 @@ import org.slf4j.Logger;
* @author sebawagner
*
*/
+@Service("roomWebService")
@WebService(serviceName="org.apache.openmeetings.webservice.RoomWebService", targetNamespace = TNS)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
@@ -452,7 +454,7 @@ public class RoomWebService extends BaseWebService {
@WebMethod
@POST
@Path("/hash")
- private ServiceResult hash(@WebParam(name="sid") @QueryParam("sid") String sid
+ public ServiceResult hash(@WebParam(name="sid") @QueryParam("sid") String sid
, @WebParam(name="invite") @QueryParam("invite") InvitationDTO invite
, @WebParam(name="sendmail") @QueryParam("sendmail") boolean sendmail
) throws ServiceException
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
index a9ea2b5..bec8307 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
@@ -74,6 +74,7 @@ import org.apache.wicket.validation.Validatable;
import org.apache.wicket.validation.ValidationError;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
/**
*
@@ -83,6 +84,7 @@ import org.slf4j.Logger;
* @author sebawagner
*
*/
+@Service("userWebService")
@WebService(serviceName = USER_SERVICE_NAME, targetNamespace = TNS, portName = USER_SERVICE_PORT_NAME)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
@Produces({MediaType.APPLICATION_JSON})
[2/2] openmeetings git commit: [OPENMEETINGS-1707] smslib is removed,
notifiers are unified
Posted by so...@apache.org.
[OPENMEETINGS-1707] smslib is removed, notifiers are unified
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/28cac665
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/28cac665
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/28cac665
Branch: refs/heads/master
Commit: 28cac665b1c7ef2a737067d2b72e495654899f82
Parents: cb02948
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 21 17:34:41 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 21 17:34:41 2017 +0700
----------------------------------------------------------------------
openmeetings-core/pom.xml | 6 -
.../core/converter/DocumentConverter.java | 2 +
.../core/converter/FlvExplorerConverter.java | 2 +
.../core/converter/ImageConverter.java | 2 +
.../core/converter/InterviewConverter.java | 2 +
.../core/converter/RecordingConverter.java | 4 +-
.../core/data/file/FileProcessor.java | 2 +
.../converter/InterviewConverterTask.java | 9 +-
.../converter/RecordingConverterTask.java | 9 +-
.../core/ldap/LdapLoginManagement.java | 2 +
.../openmeetings/core/mail/MailHandler.java | 43 ++++---
.../openmeetings/core/mail/SMSHandler.java | 117 -------------------
.../openmeetings/core/notifier/INotifier.java | 27 +++++
.../core/notifier/NotifierService.java | 62 ++++++++++
.../openmeetings/core/remote/MainService.java | 2 +
.../openmeetings/core/remote/MobileService.java | 2 +
.../core/remote/RecordingService.java | 2 +
.../core/remote/ScopeApplicationAdapter.java | 2 +
.../core/session/SessionManager.java | 2 +
.../openmeetings/db/dao/basic/ChatDao.java | 2 +
.../db/dao/basic/ConfigurationDao.java | 2 +
.../db/dao/basic/MailMessageDao.java | 2 +
.../db/dao/calendar/AppointmentDao.java | 2 +
.../db/dao/calendar/MeetingMemberDao.java | 2 +
.../db/dao/calendar/OmCalendarDao.java | 2 +
.../openmeetings/db/dao/file/FileItemDao.java | 2 +
.../db/dao/file/FileItemLogDao.java | 2 +
.../db/dao/log/ConferenceLogDao.java | 6 +-
.../db/dao/record/RecordingDao.java | 22 ++--
.../db/dao/record/RecordingMetaDataDao.java | 2 +
.../db/dao/record/RecordingMetaDeltaDao.java | 26 +++--
.../db/dao/room/IInvitationManager.java | 4 +-
.../openmeetings/db/dao/room/InvitationDao.java | 2 +
.../openmeetings/db/dao/room/PollDao.java | 12 +-
.../openmeetings/db/dao/room/RoomDao.java | 2 +
.../openmeetings/db/dao/room/RoomGroupDao.java | 2 +
.../db/dao/room/RoomModeratorDao.java | 2 +
.../db/dao/server/LdapConfigDao.java | 2 +
.../openmeetings/db/dao/server/OAuth2Dao.java | 8 +-
.../db/dao/server/SOAPLoginDao.java | 2 +
.../db/dao/server/SessiondataDao.java | 2 +
.../openmeetings/db/dao/user/GroupDao.java | 4 +-
.../openmeetings/db/dao/user/GroupUserDao.java | 2 +
.../db/dao/user/PrivateMessageDao.java | 2 +
.../db/dao/user/PrivateMessageFolderDao.java | 34 +++---
.../db/dao/user/UserContactDao.java | 38 +++---
.../openmeetings/db/dao/user/UserDao.java | 2 +
.../openmeetings/db/util/TimezoneUtil.java | 2 +
.../openmeetings/backup/BackupExport.java | 2 +
.../openmeetings/backup/BackupImport.java | 4 +
.../installation/ImportInitvalues.java | 4 +
.../src/main/resources/logback.xml | 8 +-
.../src/site/xdoc/GeneralConfiguration.xml | 22 +---
openmeetings-service/pom.xml | 4 +
.../service/calendar/AppointmentLogic.java | 38 +-----
.../service/calendar/caldav/iCalUtils.java | 1 +
.../openmeetings/service/mail/EmailManager.java | 2 +
.../service/notifier/MailNotifier.java | 58 +++++++++
.../service/notifier/TextNotifier.java | 71 +++++++++++
.../service/quartz/scheduler/ReminderJob.java | 2 +
.../service/room/InvitationManager.java | 24 +---
.../openmeetings/service/user/UserManager.java | 2 +
.../util/OpenmeetingsVariables.java | 1 +
.../openmeetings/util/mail/IcalHandler.java | 4 +-
.../WEB-INF/classes/applicationContext.xml | 60 ----------
.../main/webapp/WEB-INF/classes/cxf-servlet.xml | 15 +--
.../webapp/WEB-INF/classes/logback-config.xml | 8 +-
.../src/main/webapp/WEB-INF/red5-web.xml | 2 +-
.../webservice/CalendarWebService.java | 2 +
.../webservice/ErrorWebService.java | 2 +
.../openmeetings/webservice/FileWebService.java | 2 +
.../webservice/GroupWebService.java | 2 +
.../openmeetings/webservice/InfoWebService.java | 10 +-
.../webservice/NetTestWebService.java | 113 +++++++++---------
.../webservice/RecordingWebService.java | 2 +
.../openmeetings/webservice/RoomWebService.java | 4 +-
.../openmeetings/webservice/UserWebService.java | 2 +
77 files changed, 522 insertions(+), 442 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-core/pom.xml b/openmeetings-core/pom.xml
index 72ba71b..fac5053 100644
--- a/openmeetings-core/pom.xml
+++ b/openmeetings-core/pom.xml
@@ -30,7 +30,6 @@
<name>Openmeetings Core</name>
<description>Module for OpenMeetings core and red5 related classes and services</description>
<properties>
- <smslib.version>3.5.4</smslib.version>
<mail.version>1.6.0</mail.version>
<site.basedir>${project.parent.basedir}</site.basedir>
</properties>
@@ -73,11 +72,6 @@
<version>1.4.10</version>
</dependency>
<dependency>
- <groupId>org.smslib</groupId>
- <artifactId>smslib</artifactId>
- <version>${smslib.version}</version>
- </dependency>
- <dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-core</artifactId>
<version>${wicket.version}</version>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
index 7e412b5..999440e 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
@@ -38,7 +38,9 @@ import org.artofsolving.jodconverter.office.OfficeManager;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class DocumentConverter {
private static final Logger log = Red5LoggerFactory.getLogger(DocumentConverter.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
index 90d2df6..c9c0f52 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
@@ -35,7 +35,9 @@ import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.apache.openmeetings.util.process.ProcessHelper;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Component;
+@Component
public class FlvExplorerConverter extends BaseConverter {
private static final Logger log = Red5LoggerFactory.getLogger(FlvExplorerConverter.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
index c452fe4..1765765 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
@@ -55,8 +55,10 @@ import org.apache.tika.parser.image.ImageParser;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
import org.xml.sax.helpers.DefaultHandler;
+@Component
public class ImageConverter extends BaseConverter {
private static final Logger log = Red5LoggerFactory.getLogger(ImageConverter.class, webAppRootKey);
private static final String PAGE_TMPLT = DOC_PAGE_PREFIX + "-%04d." + EXTENSION_PNG;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
index 3669316..a07d0db 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/InterviewConverter.java
@@ -41,7 +41,9 @@ import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class InterviewConverter extends BaseConverter implements IRecordingConverter {
private static final Logger log = Red5LoggerFactory.getLogger(InterviewConverter.class, webAppRootKey);
private static class ReConverterParams {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
index bcf8592..8a9b0c9 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/RecordingConverter.java
@@ -41,7 +41,9 @@ import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class RecordingConverter extends BaseConverter implements IRecordingConverter {
private static final Logger log = Red5LoggerFactory.getLogger(RecordingConverter.class, webAppRootKey);
@@ -66,7 +68,7 @@ public class RecordingConverter extends BaseConverter implements IRecordingConve
List<ConverterProcessResult> logs = new ArrayList<>();
List<File> waveFiles = new ArrayList<>();
File streamFolder = getStreamFolder(r);
-
+
RecordingMetaData screenMetaData = metaDataDao.getScreenMetaDataByRecording(r.getId());
if (screenMetaData == null) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
index c9702d3..70cb04a 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
@@ -40,7 +40,9 @@ import org.apache.openmeetings.util.process.ConverterProcessResultList;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class FileProcessor {
private static final Logger log = Red5LoggerFactory.getLogger(FileProcessor.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
index 9f4a4f5..8431b1f 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/InterviewConverterTask.java
@@ -25,7 +25,9 @@ import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.task.TaskExecutor;
+import org.springframework.stereotype.Component;
+@Component
public class InterviewConverterTask {
private static final Logger log = Red5LoggerFactory.getLogger(InterviewConverterTask.class, webAppRootKey);
@@ -38,11 +40,8 @@ public class InterviewConverterTask {
try {
log.debug("[-1-]" + taskExecutor);
- taskExecutor.execute(new Runnable() {
- @Override
- public void run() {
- interviewConverter.startConversion(recordingId);
- }
+ taskExecutor.execute(() -> {
+ interviewConverter.startConversion(recordingId);
});
} catch (Exception err) {
log.error("[startConversionThread]", err);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
index 781004e..1d98db5 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/converter/RecordingConverterTask.java
@@ -25,7 +25,9 @@ import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.task.TaskExecutor;
+import org.springframework.stereotype.Component;
+@Component
public class RecordingConverterTask {
private static final Logger log = Red5LoggerFactory.getLogger(RecordingConverterTask.class, webAppRootKey);
@@ -38,11 +40,8 @@ public class RecordingConverterTask {
try {
log.debug("[-1-]" + taskExecutor);
- taskExecutor.execute(new Runnable() {
- @Override
- public void run() {
- recordingConverter.startConversion(recordingId);
- }
+ taskExecutor.execute(() -> {
+ recordingConverter.startConversion(recordingId);
});
} catch (Exception err) {
log.error("[startConversionThread]", err);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
index b162d92..2a15343 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManagement.java
@@ -70,6 +70,7 @@ import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
/**
* Management of optional LDAP Login
@@ -77,6 +78,7 @@ import org.springframework.beans.factory.annotation.Autowired;
* @author o.becherer
*
*/
+@Component
public class LdapLoginManagement {
private static final Logger log = Red5LoggerFactory.getLogger(LdapLoginManagement.class, webAppRootKey);
// LDAP custom attribute mapping keys
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
index 48703cc..d1f6a12 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/MailHandler.java
@@ -65,6 +65,7 @@ import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.task.TaskExecutor;
+import org.springframework.stereotype.Component;
/**
*
@@ -74,6 +75,7 @@ import org.springframework.core.task.TaskExecutor;
* http://connector.sourceforge.net/doc-files/Properties.html
*
*/
+@Component("mailHandler")
public class MailHandler {
private static final Logger log = Red5LoggerFactory.getLogger(MailHandler.class, webAppRootKey);
private static final int MAIL_SEND_TIMEOUT = 60 * 60 * 1000; // 1 hour
@@ -238,29 +240,26 @@ public class MailHandler {
m.setStatus(Status.SENDING);
mailMessageDao.update(m, null);
}
- taskExecutor.execute(new Runnable() {
- @Override
- public void run() {
- log.debug("Message sending in progress");
- log.debug(" To: " + m.getRecipients());
- log.debug(" Subject: " + m.getSubject());
+ taskExecutor.execute(() -> {
+ log.debug("Message sending in progress");
+ log.debug(" To: " + m.getRecipients());
+ log.debug(" Subject: " + m.getSubject());
- // -- Send the message --
- try {
- Transport.send(getMimeMessage(m));
- m.setLastError("");
- m.setStatus(Status.DONE);
- } catch (Exception e) {
- log.error("Error while sending message", e);
- m.setErrorCount(m.getErrorCount() + 1);
- StringWriter sw = new StringWriter();
- e.printStackTrace(new PrintWriter(sw));
- m.setLastError(sw.getBuffer().toString());
- m.setStatus(m.getErrorCount() < MAXIMUM_ERROR_COUNT ? Status.NONE : Status.ERROR);
- }
- if (m.getId() != null) {
- mailMessageDao.update(m, null);
- }
+ // -- Send the message --
+ try {
+ Transport.send(getMimeMessage(m));
+ m.setLastError("");
+ m.setStatus(Status.DONE);
+ } catch (Exception e) {
+ log.error("Error while sending message", e);
+ m.setErrorCount(m.getErrorCount() + 1);
+ StringWriter sw = new StringWriter();
+ e.printStackTrace(new PrintWriter(sw));
+ m.setLastError(sw.getBuffer().toString());
+ m.setStatus(m.getErrorCount() < MAXIMUM_ERROR_COUNT ? Status.NONE : Status.ERROR);
+ }
+ if (m.getId() != null) {
+ mailMessageDao.update(m, null);
}
});
} else {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/SMSHandler.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/SMSHandler.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/SMSHandler.java
deleted file mode 100644
index 4b46966..0000000
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/mail/SMSHandler.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.core.mail;
-
-import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
-
-import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
-import org.red5.logging.Red5LoggerFactory;
-import org.slf4j.Logger;
-import org.smslib.Message.MessageEncodings;
-import org.smslib.OutboundMessage;
-import org.smslib.Service;
-import org.smslib.http.BulkSmsHTTPGateway;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.core.task.TaskExecutor;
-
-/**
- *
- * @author iarkh
- *
- */
-
-public class SMSHandler {
- private static final Logger log = Red5LoggerFactory.getLogger(SMSHandler.class, webAppRootKey);
-
- @Autowired
- protected ConfigurationDao cfgDao;
- @Autowired
- protected TaskExecutor taskExecutor;
-
- private BulkSmsHTTPGateway gateway = null;
-
- private boolean checkBalance() throws Exception {
- if (gateway == null) {
- String smsProvider = cfgDao.getString("sms.provider", null);
- String smsUsername = cfgDao.getString("sms.username", null);
- String smsUserpass = cfgDao.getString("sms.userpass", null);
-
- if (smsProvider == null || smsProvider.length() == 0 ||
- smsUsername == null || smsUsername.length() == 0) {
- log.error("SMS Provider is not configured properly!");
- return false;
- }
- gateway = new BulkSmsHTTPGateway(smsProvider, smsUsername, smsUserpass);
- gateway.setOutbound(true);
- Service.getInstance().addGateway(gateway);
- Service.getInstance().startService();
- }
- return gateway.queryBalance() >= 1;
- }
-
- public boolean sendSMS(String phone, String subj, long languageId) {
- try {
- taskExecutor.execute(new SMSSenderTask(phone, subj, languageId));
- return true;
- } catch (Exception ex) {
- log.error("sendSMS", ex);
- return false;
- }
- }
-
- protected class SMSSenderTask implements Runnable {
- private final String phone;
- private final String subject;
- private long languageId;
-
- public SMSSenderTask(String phone, String subject, long languageId) {
- this.phone = phone;
- this.subject = subject;
- this.languageId = languageId;
- }
-
- @Override
- public void run() {
- this.send();
- }
-
- /**
- * Sending an SMS with the given values.
- * @return <code>true</code> if sms was sent successfully, <code>false</code> otherwise.
- */
- public boolean send() {
- try {
- log.debug("SMS sending to: " + phone + ", subject is: " + subject);
- if (checkBalance()) {
- OutboundMessage msg = new OutboundMessage(phone, subject);
- if (languageId != 1) {
- msg.setEncoding(MessageEncodings.ENCUCS2);
- }
- return Service.getInstance().sendMessage(msg);
- } else {
- log.error("Error: insufficient funds on SMS provider account!");
- return false;
- }
- } catch (Exception ex) {
- log.error("Error sending sms: ", ex);
- return false;
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/INotifier.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/INotifier.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/INotifier.java
new file mode 100644
index 0000000..5a5682f
--- /dev/null
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/INotifier.java
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.core.notifier;
+
+import org.apache.openmeetings.db.entity.calendar.Appointment;
+import org.apache.openmeetings.db.entity.room.Invitation;
+import org.apache.openmeetings.db.entity.user.User;
+
+public interface INotifier {
+ void notify(User u, Appointment a, Invitation inv) throws Exception;
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java
new file mode 100644
index 0000000..e5ad8d9
--- /dev/null
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/notifier/NotifierService.java
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.core.notifier;
+
+import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.openmeetings.db.entity.calendar.Appointment;
+import org.apache.openmeetings.db.entity.room.Invitation;
+import org.apache.openmeetings.db.entity.user.User;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ * @author iarkh
+ *
+ */
+@Service
+public class NotifierService {
+ private static final Logger log = Red5LoggerFactory.getLogger(NotifierService.class, webAppRootKey);
+
+ private List<INotifier> notifiers = new ArrayList<>();
+
+ public void addNotifier(INotifier n) {
+ notifiers.add(n);
+ }
+
+ public void notify(User u, Appointment a, Invitation inv) {
+ if (inv == null) {
+ log.error(String.format("Error retrieving Invitation for member %s in Appointment %s"
+ , u.getAddress().getEmail(), a.getTitle()));
+ return;
+ }
+ for (INotifier n : notifiers) {
+ try {
+ n.notify(u, a, inv);
+ } catch (Exception e) {
+ log.error("Unexpected exception while sending notifications", e);
+ }
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MainService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MainService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MainService.java
index 4e8735e..4fc7f17 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MainService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MainService.java
@@ -31,12 +31,14 @@ import org.red5.server.api.service.IPendingServiceCall;
import org.red5.server.api.service.IPendingServiceCallback;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
/**
*
* @author swagner
*
*/
+@Service
public class MainService implements IPendingServiceCallback {
private static final Logger log = Red5LoggerFactory.getLogger(MainService.class, OpenmeetingsVariables.webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
index 2be64ac..9ad0c2d 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
@@ -68,7 +68,9 @@ import org.red5.server.api.Red5;
import org.red5.server.api.service.IServiceCapableConnection;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+@Service("mobile.service")
public class MobileService {
private static final Logger log = Red5LoggerFactory.getLogger(MainService.class, webAppRootKey);
@Autowired
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
index 0e117a1..a1239ab 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
@@ -60,9 +60,11 @@ import org.red5.server.api.stream.IStreamListener;
import org.red5.server.stream.ClientBroadcastStream;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
import com.github.openjson.JSONObject;
+@Service
public class RecordingService implements IPendingServiceCallback {
private static final Logger log = Red5LoggerFactory.getLogger(RecordingService.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
index 2c5c127..050b2cd 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
@@ -70,9 +70,11 @@ import org.red5.server.api.service.IServiceCapableConnection;
import org.red5.server.api.stream.IBroadcastStream;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
import com.github.openjson.JSONObject;
+@Service("web.handler")
public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter implements IPendingServiceCallback {
private static final Logger _log = Red5LoggerFactory.getLogger(ScopeApplicationAdapter.class, webAppRootKey);
private static final String SID_PARAM = "sid";
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-core/src/main/java/org/apache/openmeetings/core/session/SessionManager.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/session/SessionManager.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/session/SessionManager.java
index 6d83736..f7c5a94 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/session/SessionManager.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/session/SessionManager.java
@@ -37,6 +37,7 @@ import org.apache.openmeetings.db.entity.room.StreamClient;
import org.red5.logging.Red5LoggerFactory;
import org.red5.server.Server;
import org.slf4j.Logger;
+import org.springframework.stereotype.Component;
/**
* Handle {@link StreamClient} objects.
@@ -46,6 +47,7 @@ import org.slf4j.Logger;
* @author sebawagner
*
*/
+@Component
public class SessionManager implements ISessionManager {
protected static final Logger log = Red5LoggerFactory.getLogger(SessionManager.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
index bf17f0a..cd51d35 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
@@ -25,8 +25,10 @@ import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.apache.openmeetings.db.entity.basic.ChatMessage;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class ChatDao {
@PersistenceContext
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
index 45aa805..3d5563d 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
@@ -87,6 +87,7 @@ import org.apache.wicket.Application;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import com.github.openjson.JSONObject;
@@ -102,6 +103,7 @@ import com.github.openjson.JSONObject;
* @author swagner
*
*/
+@Repository
@Transactional
public class ConfigurationDao implements IDataProviderDao<Configuration> {
private static final Logger log = Red5LoggerFactory.getLogger(ConfigurationDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/MailMessageDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/MailMessageDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/MailMessageDao.java
index 8fa1aa5..cc3a912 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/MailMessageDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/MailMessageDao.java
@@ -29,8 +29,10 @@ import org.apache.openmeetings.db.dao.IDataProviderDao;
import org.apache.openmeetings.db.entity.basic.MailMessage;
import org.apache.openmeetings.db.entity.basic.MailMessage.Status;
import org.apache.wicket.util.string.Strings;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class MailMessageDao implements IDataProviderDao<MailMessage> {
@PersistenceContext
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
index d516b3e..9449ebc 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
@@ -47,8 +47,10 @@ import org.apache.openmeetings.db.util.TimezoneUtil;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class AppointmentDao {
private static final Logger log = Red5LoggerFactory.getLogger(AppointmentDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
index a6632b7..87a4e01 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/MeetingMemberDao.java
@@ -31,8 +31,10 @@ import javax.persistence.PersistenceContext;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class MeetingMemberDao {
private static final Logger log = Red5LoggerFactory.getLogger(MeetingMemberDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
index 1f33688..7e64906 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
@@ -27,8 +27,10 @@ import javax.persistence.TypedQuery;
import org.apache.openmeetings.db.entity.calendar.OmCalendar;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class OmCalendarDao {
@PersistenceContext
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
index dd1b9b2..5d2c544 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
@@ -39,12 +39,14 @@ import org.apache.openmeetings.db.entity.user.Group;
import org.apache.openmeetings.util.OmFileHelper;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
/**
* @author sebastianwagner
*
*/
+@Repository
@Transactional
public class FileItemDao {
private static final Logger log = Red5LoggerFactory.getLogger(FileItemDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
index 652e2a3..40064b3 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
@@ -31,8 +31,10 @@ import org.apache.openmeetings.db.entity.file.FileItemLog;
import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class FileItemLogDao {
private static final Logger log = Red5LoggerFactory.getLogger(FileItemLogDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
index 16ac7d6..ce924db 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/log/ConferenceLogDao.java
@@ -29,12 +29,14 @@ import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.log.ConferenceLog.Type;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class ConferenceLogDao {
private static final Logger log = Red5LoggerFactory.getLogger(ConferenceLogDao.class, webAppRootKey);
-
+
@PersistenceContext
private EntityManager em;
@@ -47,7 +49,7 @@ public class ConferenceLogDao {
confLog.setScopeName(scopeName);
confLog.setRoomId(roomId);
confLog.setUserip(userip);
-
+
em.persist(confLog);
log.debug("[addConferenceLog]: " + confLog);
return confLog;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
index 96b4aee..e4b111e 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
@@ -40,16 +40,18 @@ import org.apache.openmeetings.db.entity.user.GroupUser;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
/**
* @author sebastianwagner
- *
+ *
*/
+@Repository
@Transactional
public class RecordingDao {
private static final Logger log = Red5LoggerFactory.getLogger(RecordingDao.class, webAppRootKey);
-
+
@PersistenceContext
private EntityManager em;
@Autowired
@@ -207,7 +209,7 @@ public class RecordingDao {
update(f);
return true;
}
-
+
public Recording update(Recording f) {
try {
if (f.getId() == null) {
@@ -236,24 +238,24 @@ public class RecordingDao {
.setParameter("converting", Status.CONVERTING)
.executeUpdate();
}
-
+
public RecordingContainerData getContainerData(long userId) {
try {
RecordingContainerData containerData = new RecordingContainerData();
-
+
// User Home Recordings
List<Recording> homes = getRootByOwner(userId);
long homeFileSize = 0;
-
+
for (Recording home : homes) {
homeFileSize += getSize(home);
}
-
+
containerData.setUserHomeSize(homeFileSize);
-
+
// Public Recordings
long publicFileSize = 0;
-
+
//get all groups the user can view
for (GroupUser ou : userDao.get(userId).getGroupUsers()) {
List<Recording> publicRecordings = getRootByPublic(ou.getGroup().getId());
@@ -270,7 +272,7 @@ public class RecordingDao {
}
return null;
}
-
+
private long getSize(Recording r) {
long size = 0;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
index a3f8855..3394597 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDataDao.java
@@ -33,8 +33,10 @@ import org.apache.openmeetings.db.entity.record.RecordingMetaData.Status;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class RecordingMetaDataDao {
private static final Logger log = Red5LoggerFactory.getLogger(RecordingMetaDataDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
index 463a61a..fa8ed47 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingMetaDeltaDao.java
@@ -28,39 +28,41 @@ import javax.persistence.PersistenceContext;
import org.apache.openmeetings.db.entity.record.RecordingMetaDelta;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
/**
* @author sebastianwagner
*
*/
+@Repository
@Transactional
public class RecordingMetaDeltaDao {
private static final Logger log = Red5LoggerFactory.getLogger(RecordingMetaDeltaDao.class, webAppRootKey);
@PersistenceContext
private EntityManager em;
-
+
public List<RecordingMetaDelta> getByMetaId(Long metaDataId) {
return em.createNamedQuery("getRecordingMetaDeltaByMetaDataId", RecordingMetaDelta.class).setParameter("metaDataId", metaDataId).getResultList();
}
-
-
-
+
+
+
public Long add(RecordingMetaDelta metaDelta) {
- try {
-
+ try {
+
metaDelta = em.merge(metaDelta);
Long metaDeltaId = metaDelta.getId();
-
+
log.debug("metaDeltaId "+metaDeltaId);
-
+
return metaDeltaId;
} catch (Exception ex2) {
log.error("[add]: ",ex2);
}
return null;
}
-
+
public RecordingMetaDelta update(RecordingMetaDelta metaDelta) {
log.debug("[update]: ");
if (metaDelta.getMetaDataId() == null) {
@@ -68,8 +70,8 @@ public class RecordingMetaDeltaDao {
} else {
metaDelta = em.merge(metaDelta);
}
-
+
return metaDelta;
- }
-
+ }
+
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/IInvitationManager.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/IInvitationManager.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/IInvitationManager.java
index 8ceaee4..72684ce 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/IInvitationManager.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/IInvitationManager.java
@@ -43,7 +43,5 @@ public interface IInvitationManager {
User createdBy, Long languageId, Date gmtTimeStart, Date gmtTimeEnd
, Appointment appointment);
- void sendInvitationLink(Invitation i, MessageType type, String subject, String message, boolean ical) throws Exception ;
-
- boolean sendInvitationReminderSMS(String phone, String subject, long languageId);
+ void sendInvitationLink(Invitation i, MessageType type, String subject, String message, boolean ical) throws Exception;
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
index fd7fea1..7542862 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/InvitationDao.java
@@ -37,8 +37,10 @@ import org.apache.openmeetings.util.CalendarHelper;
import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class InvitationDao {
private static final Logger log = Red5LoggerFactory.getLogger(InvitationDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
index d6496ad..fba91fe 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
@@ -33,8 +33,10 @@ import org.apache.openmeetings.db.entity.room.RoomPoll;
import org.apache.openmeetings.db.entity.room.RoomPollAnswer;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class PollDao {
private static final Logger log = Red5LoggerFactory.getLogger(PollDao.class, webAppRootKey);
@@ -81,7 +83,7 @@ public class PollDao {
List<RoomPoll> list = em.createNamedQuery("getPollById", RoomPoll.class).setParameter("id", id).getResultList();
return list.isEmpty() ? null : list.get(0);
}
-
+
public RoomPoll getByRoom(Long roomId) {
try {
log.debug(" :: getPoll :: " + roomId);
@@ -95,7 +97,7 @@ public class PollDao {
}
return null;
}
-
+
public List<RoomPoll> get() {
try {
TypedQuery<RoomPoll> q = em.createNamedQuery("getPollListBackup", RoomPoll.class);
@@ -107,7 +109,7 @@ public class PollDao {
}
return null;
}
-
+
public List<RoomPoll> getArchived(Long roomId) {
try {
log.debug(" :: getArchived :: " + roomId);
@@ -121,7 +123,7 @@ public class PollDao {
}
return null;
}
-
+
public boolean hasPoll(Long roomId) {
try {
log.debug(" :: hasPoll :: " + roomId);
@@ -136,7 +138,7 @@ public class PollDao {
}
return false;
}
-
+
public boolean hasVoted(Long roomId, Long userId) {
try {
log.debug(" :: hasVoted :: " + roomId + ", " + userId);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index 078df99..77ec762 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -50,8 +50,10 @@ import org.apache.openmeetings.util.DaoHelper;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class RoomDao implements IGroupAdminDataProviderDao<Room> {
private static final Logger log = Red5LoggerFactory.getLogger(RoomDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomGroupDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomGroupDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomGroupDao.java
index 37c113c..155b5e9 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomGroupDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomGroupDao.java
@@ -25,8 +25,10 @@ import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.apache.openmeetings.db.entity.room.RoomGroup;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class RoomGroupDao {
@PersistenceContext
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomModeratorDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomModeratorDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomModeratorDao.java
index 8e6c53a..7a14d1b 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomModeratorDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomModeratorDao.java
@@ -26,8 +26,10 @@ import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.apache.openmeetings.db.entity.room.RoomModerator;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class RoomModeratorDao {
@PersistenceContext
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
index 6068e03..7de2092 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/LdapConfigDao.java
@@ -37,6 +37,7 @@ import org.apache.openmeetings.util.DaoHelper;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
/**
@@ -46,6 +47,7 @@ import org.springframework.transaction.annotation.Transactional;
* @author swagner
*
*/
+@Repository
@Transactional
public class LdapConfigDao implements IDataProviderDao<LdapConfig> {
private static final Logger log = Red5LoggerFactory.getLogger(LdapConfigDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/OAuth2Dao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/OAuth2Dao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/OAuth2Dao.java
index bc37855..61b035c 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/OAuth2Dao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/OAuth2Dao.java
@@ -28,25 +28,27 @@ import javax.persistence.TypedQuery;
import org.apache.openmeetings.db.dao.IDataProviderDao;
import org.apache.openmeetings.db.entity.server.OAuthServer;
import org.apache.openmeetings.util.DaoHelper;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class OAuth2Dao implements IDataProviderDao<OAuthServer> {
public final static String[] searchFields = {"name"};
@PersistenceContext
private EntityManager em;
-
+
public List<OAuthServer> getActive() {
TypedQuery<OAuthServer> query = em.createNamedQuery("getEnabledOAuthServers", OAuthServer.class);
return query.getResultList();
}
-
+
@Override
public OAuthServer get(long id) {
return get(Long.valueOf(id));
}
-
+
@Override
public OAuthServer get(Long id) {
TypedQuery<OAuthServer> query = em.createNamedQuery("getOAuthServerById", OAuthServer.class);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
index b63eb05..61b3b83 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SOAPLoginDao.java
@@ -30,8 +30,10 @@ import javax.persistence.PersistenceContext;
import org.apache.openmeetings.db.entity.server.SOAPLogin;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class SOAPLoginDao {
private static final Logger log = Red5LoggerFactory.getLogger(SOAPLoginDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
index 7f547e2..4eff9dd 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/server/SessiondataDao.java
@@ -33,6 +33,7 @@ import org.apache.openmeetings.db.entity.server.Sessiondata;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
/**
@@ -40,6 +41,7 @@ import org.springframework.transaction.annotation.Transactional;
* @author swagner This Class handles all session management
*
*/
+@Repository
@Transactional
public class SessiondataDao {
private static final Logger log = Red5LoggerFactory.getLogger(SessiondataDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupDao.java
index d74064e..c7dcdf9 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupDao.java
@@ -30,8 +30,10 @@ import javax.persistence.TypedQuery;
import org.apache.openmeetings.db.dao.IGroupAdminDataProviderDao;
import org.apache.openmeetings.db.entity.user.Group;
import org.apache.openmeetings.util.DaoHelper;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class GroupDao implements IGroupAdminDataProviderDao<Group> {
public final static String[] searchFields = {"name"};
@@ -42,7 +44,7 @@ public class GroupDao implements IGroupAdminDataProviderDao<Group> {
public Group get(long id) {
return get(Long.valueOf(id));
}
-
+
@Override
public Group get(Long id) {
TypedQuery<Group> query = em.createNamedQuery("getGroupById", Group.class);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
index 036c519..1262804 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
@@ -27,8 +27,10 @@ import javax.persistence.TypedQuery;
import org.apache.openmeetings.db.dao.IDataProviderDao;
import org.apache.openmeetings.db.entity.user.GroupUser;
import org.apache.openmeetings.util.DaoHelper;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class GroupUserDao implements IDataProviderDao<GroupUser> {
@PersistenceContext
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
index cd98143..d62883d 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java
@@ -38,8 +38,10 @@ import org.apache.openmeetings.db.entity.user.PrivateMessage;
import org.apache.openmeetings.db.entity.user.User;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> {
private static final Logger log = Red5LoggerFactory.getLogger(PrivateMessageDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
index d9e2b6d..b8d36bb 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageFolderDao.java
@@ -32,58 +32,60 @@ import org.apache.openmeetings.db.dao.IDataProviderDao;
import org.apache.openmeetings.db.entity.user.PrivateMessageFolder;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class PrivateMessageFolderDao implements IDataProviderDao<PrivateMessageFolder> {
private static final Logger log = Red5LoggerFactory.getLogger(PrivateMessageFolderDao.class, webAppRootKey);
@PersistenceContext
private EntityManager em;
-
+
public Long addPrivateMessageFolder(String folderName, Long userId) {
try {
PrivateMessageFolder privateMessageFolder = new PrivateMessageFolder();
privateMessageFolder.setFolderName(folderName);
privateMessageFolder.setUserId(userId);
privateMessageFolder.setInserted(new Date());
-
+
privateMessageFolder = em.merge(privateMessageFolder);
Long privateMessageFolderId = privateMessageFolder.getId();
-
- return privateMessageFolderId;
+
+ return privateMessageFolderId;
} catch (Exception e) {
log.error("[addPrivateMessageFolder]",e);
}
return null;
}
-
+
public Long addPrivateMessageFolderObj(PrivateMessageFolder folder) {
folder.setInserted(new Date());
-
+
folder = em.merge(folder);
Long privateMessageFolderId = folder.getId();
-
- return privateMessageFolderId;
+
+ return privateMessageFolderId;
}
-
+
@Override
public PrivateMessageFolder get(long id) {
return get(Long.valueOf(id));
}
-
+
@Override
public PrivateMessageFolder get(Long id) {
String hql = "select c from PrivateMessageFolder c where c.id = :id ";
- TypedQuery<PrivateMessageFolder> query = em.createQuery(hql, PrivateMessageFolder.class);
+ TypedQuery<PrivateMessageFolder> query = em.createQuery(hql, PrivateMessageFolder.class);
query.setParameter("id", id);
-
+
PrivateMessageFolder folder = null;
try {
folder = query.getSingleResult();
} catch (NoResultException ex) {
}
-
+
return folder;
}
@@ -103,14 +105,14 @@ public class PrivateMessageFolderDao implements IDataProviderDao<PrivateMessageF
}
return folder;
}
-
+
public List<PrivateMessageFolder> getPrivateMessageFolderByUserId(Long userId) {
try {
String hql = "select c from PrivateMessageFolder c where c.userId = :userId ";
- TypedQuery<PrivateMessageFolder> query = em.createQuery(hql, PrivateMessageFolder.class);
+ TypedQuery<PrivateMessageFolder> query = em.createQuery(hql, PrivateMessageFolder.class);
query.setParameter("userId", userId);
-
+
return query.getResultList();
} catch (Exception e) {
log.error("[getPrivateMessageFolderByUserId]",e);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
index e4755c4..e25ec5f 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
@@ -32,8 +32,10 @@ import org.apache.openmeetings.db.entity.user.UserContact;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
+@Repository
@Transactional
public class UserContactDao {
private static final Logger log = Red5LoggerFactory.getLogger(UserContactDao.class, webAppRootKey);
@@ -49,23 +51,23 @@ public class UserContactDao {
userContact.setOwner(userDao.get(ownerId));
userContact.setContact(userDao.get(userId));
userContact.setPending(pending);
-
+
userContact = update(userContact);
-
+
return userContact;
} catch (Exception e) {
log.error("[addUserContact]",e);
}
return null;
}
-
+
/**
* @param id
*/
public void delete(Long id) {
em.createNamedQuery("deleteUserContact").setParameter("id", id).executeUpdate();
}
-
+
/**
* @param ownerId
* @return rowcount of update
@@ -73,7 +75,7 @@ public class UserContactDao {
public Integer deleteAllUserContacts(Long ownerId) {
return em.createNamedQuery("deleteAllUserContacts").setParameter("ownerId",ownerId).executeUpdate();
}
-
+
public UserContact get(Long userId, Long ownerId) {
List<UserContact> ll = em.createNamedQuery("getContactByUserOwner", UserContact.class)
.setParameter("userId", userId)
@@ -82,12 +84,12 @@ public class UserContactDao {
log.info("number of contacts:: " + (ll == null ? null : ll.size()));
return ll != null && ll.size() == 1 ? ll.get(0) : null;
}
-
+
public boolean isContact(Long userId, Long ownerId) {
UserContact c = get(userId, ownerId);
return c == null ? false : !c.isPending();
}
-
+
public List<UserContact> get(long ownerId, int first, int count) {
TypedQuery<UserContact> q = em.createNamedQuery("getContactsByUser", UserContact.class);
q.setParameter("userId", ownerId);
@@ -95,13 +97,13 @@ public class UserContactDao {
q.setMaxResults(count);
return q.getResultList();
}
-
+
public long count(long ownerId) {
TypedQuery<Long> q = em.createNamedQuery("countContactsByUser", Long.class);
q.setParameter("userId", ownerId);
return q.getSingleResult();
}
-
+
public List<UserContact> getContactsByUserAndStatus(Long ownerId, boolean pending) {
try {
TypedQuery<UserContact> query = em.createNamedQuery("getContactsByUserAndStatus", UserContact.class);
@@ -113,7 +115,7 @@ public class UserContactDao {
}
return null;
}
-
+
public UserContact getUserContactByShareCalendar(Long contactId,
Boolean shareCalendar, Long userId) {
try {
@@ -134,7 +136,7 @@ public class UserContactDao {
public List<UserContact> getContactsByShareCalendar(Long contactId, Boolean shareCalendar) {
try {
- TypedQuery<UserContact> query = em.createNamedQuery("getContactsByShareCalendar", UserContact.class);
+ TypedQuery<UserContact> query = em.createNamedQuery("getContactsByShareCalendar", UserContact.class);
query.setParameter("contactId", contactId);
query.setParameter("shareCalendar", shareCalendar);
return query.getResultList();
@@ -143,10 +145,10 @@ public class UserContactDao {
}
return null;
}
-
+
public List<UserContact> getContactRequestsByUserAndStatus(Long userId, boolean pending) {
try {
- TypedQuery<UserContact> query = em.createNamedQuery("getContactRequestsByUserAndStatus", UserContact.class);
+ TypedQuery<UserContact> query = em.createNamedQuery("getContactRequestsByUserAndStatus", UserContact.class);
query.setParameter("userId", userId);
query.setParameter("pending", pending);
return query.getResultList();
@@ -155,10 +157,10 @@ public class UserContactDao {
}
return null;
}
-
+
public UserContact get(Long id) {
try {
- TypedQuery<UserContact> query = em.createNamedQuery("getUserContactsById", UserContact.class);
+ TypedQuery<UserContact> query = em.createNamedQuery("getUserContactsById", UserContact.class);
query.setParameter("id", id);
UserContact userContacts = null;
try {
@@ -171,11 +173,11 @@ public class UserContactDao {
}
return null;
}
-
+
public List<UserContact> get() {
return em.createNamedQuery("getUserContacts", UserContact.class).getResultList();
}
-
+
public Long updateContactStatus(Long id, boolean pending) {
try {
UserContact uc = get(id);
@@ -187,7 +189,7 @@ public class UserContactDao {
}
return null;
}
-
+
public UserContact update(UserContact c) {
if (c.getId() == null) {
c.setInserted(new Date());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
index 7b68712..b2f48f6 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
@@ -64,6 +64,7 @@ import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
/**
@@ -72,6 +73,7 @@ import org.springframework.transaction.annotation.Transactional;
* @author swagner, solomax, vasya
*
*/
+@Repository
@Transactional
public class UserDao implements IGroupAdminDataProviderDao<User> {
private static final Logger log = Red5LoggerFactory.getLogger(UserDao.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/TimezoneUtil.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/TimezoneUtil.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/TimezoneUtil.java
index 39c36f8..efa2254 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/TimezoneUtil.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/util/TimezoneUtil.java
@@ -31,7 +31,9 @@ import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class TimezoneUtil {
private static final Logger log = Red5LoggerFactory.getLogger(TimezoneUtil.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
index 7b68d30..db88c5a 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
@@ -79,12 +79,14 @@ import org.simpleframework.xml.stream.NodeBuilder;
import org.simpleframework.xml.stream.OutputNode;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
/**
*
* @author sebastianwagner
*
*/
+@Component
public class BackupExport {
private static final Logger log = Red5LoggerFactory.getLogger(BackupExport.class, webAppRootKey);
private static final String BACKUP_COMMENT =
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
index c64fd6d..d0210aa 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
@@ -77,6 +77,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_PATH_SOX
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_FRONTEND;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_OAUTH;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_SOAP;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REMINDER_MESSAGE;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REPLY_TO_ORGANIZER;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSHARING_ALLOW_REMOTE;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSHARING_FPS;
@@ -183,11 +184,13 @@ import org.simpleframework.xml.stream.NodeBuilder;
import org.simpleframework.xml.transform.RegistryMatcher;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
+@Component
public class BackupImport {
private static final Logger log = Red5LoggerFactory.getLogger(BackupImport.class, webAppRootKey);
private static final String LDAP_EXT_TYPE = "LDAP";
@@ -222,6 +225,7 @@ public class BackupImport {
outdatedConfigKeys.put("sendEmailWithVerficationCode", CONFIG_EMAIL_VERIFICATION);
outdatedConfigKeys.put("swftools_zoom", CONFIG_DOCUMENT_DPI);
outdatedConfigKeys.put("swftools_jpegquality", CONFIG_DOCUMENT_QUALITY);
+ outdatedConfigKeys.put("sms.subject", CONFIG_REMINDER_MESSAGE);
configTypes.put(CONFIG_REGISTER_FRONTEND, Configuration.Type.bool);
configTypes.put(CONFIG_REGISTER_SOAP, Configuration.Type.bool);
configTypes.put(CONFIG_REGISTER_OAUTH, Configuration.Type.bool);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
index 3ef47ff..de8c570 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
@@ -66,6 +66,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REDIRECT
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_FRONTEND;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_OAUTH;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_SOAP;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REMINDER_MESSAGE;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REPLY_TO_ORGANIZER;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSHARING_ALLOW_REMOTE;
import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SCREENSHARING_FPS;
@@ -117,7 +118,9 @@ import org.apache.wicket.util.string.StringValue;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+@Component
public class ImportInitvalues {
private static final Logger log = Red5LoggerFactory.getLogger(ImportInitvalues.class, webAppRootKey);
@@ -308,6 +311,7 @@ public class ImportInitvalues {
addCfg(list, CONFIG_HEADER_CSP, HEADER_CSP_SELF, Configuration.Type.string, "Value for 'Content-Security-Policy' header (default: default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval';), have to be modified to enable Google analytics site: https://content-security-policy.com/");
addCfg(list, CONFIG_EXT_PROCESS_TTL, "" + EXT_PROCESS_TTL, Configuration.Type.number, String.format("Time to live in minutes for external processes such as conversion via ffmpeg (default %s minutes)", EXT_PROCESS_TTL));
addCfg(list, CONFIG_MYROOMS_ENABLED, "" + true, Configuration.Type.bool, "Users are allowed to create personal rooms");
+ addCfg(list, CONFIG_REMINDER_MESSAGE, null, Configuration.Type.string, "Reminder message to notify about upcoming appointment, generated message will be used if not set");
return list;
}
public void loadConfiguration(InstallationConfig cfg) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-screenshare/src/main/resources/logback.xml
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/src/main/resources/logback.xml b/openmeetings-screenshare/src/main/resources/logback.xml
index 44bfdf4..ead06e1 100644
--- a/openmeetings-screenshare/src/main/resources/logback.xml
+++ b/openmeetings-screenshare/src/main/resources/logback.xml
@@ -25,7 +25,7 @@
<jmxConfigurator contextName="${current_openmeetings_context_name}" />
- <appender name="FLOG2" class="ch.qos.logback.core.FileAppender">
+ <appender name="FILE" class="ch.qos.logback.core.FileAppender">
<File>screensharing.log</File>
<Append>false</Append>
<Encoding>UTF-8</Encoding>
@@ -35,7 +35,7 @@
<pattern>%5p %d{MM-dd HH:mm:ss.SSS } %L %c{10} [%t] - %m%n</pattern>
</layout>
</appender>
- <appender name="CONSOLE2" class="ch.qos.logback.core.ConsoleAppender">
+ <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>%5p %d{MM-dd HH:mm:ss.SSS } %L %c{10} [%t] - %m%n</pattern>
</layout>
@@ -43,7 +43,7 @@
<logger name="org.apache.openmeetings" level="DEBUG"/>
<logger name="org.red5.server.net.rtmp.codec.RTMPProtocolDecoder" level="OFF"/>
<root level="INFO">
- <appender-ref ref="FLOG2" />
- <appender-ref ref="CONSOLE2" />
+ <appender-ref ref="FILE" />
+ <appender-ref ref="CONSOLE" />
</root>
</configuration>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-server/src/site/xdoc/GeneralConfiguration.xml
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/site/xdoc/GeneralConfiguration.xml b/openmeetings-server/src/site/xdoc/GeneralConfiguration.xml
index 4d9caec..bac69ec 100644
--- a/openmeetings-server/src/site/xdoc/GeneralConfiguration.xml
+++ b/openmeetings-server/src/site/xdoc/GeneralConfiguration.xml
@@ -171,27 +171,9 @@
<td> 2.1.x, <b> values are changed in 3.0.0</b> </td>
</tr>
<tr>
- <td> sms.provider </td>
+ <td> reminder.message </td>
<td> </td>
- <td> SMS service provider (bulksms.http.1) </td>
- <td> 2.1.x </td>
- </tr>
- <tr>
- <td> sms.Username </td>
- <td> </td>
- <td> Login for SMS service provider </td>
- <td> 2.1.x </td>
- </tr>
- <tr>
- <td> sms.Userpass </td>
- <td> </td>
- <td> Password for SMS service provider </td>
- <td> 2.1.x </td>
- </tr>
- <tr>
- <td> sms.subject </td>
- <td> </td>
- <td> Subject of SMS reminder message </td>
+ <td> Reminder message to notify about upcoming appointment, generated message will be used if not set </td>
<td> 2.1.x </td>
</tr>
<tr>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/28cac665/openmeetings-service/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-service/pom.xml b/openmeetings-service/pom.xml
index 15bb597..2c47fd6 100644
--- a/openmeetings-service/pom.xml
+++ b/openmeetings-service/pom.xml
@@ -43,6 +43,10 @@
<version>${wicket.version}</version>
</dependency>
<dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ </dependency>
+ <dependency>
<groupId>com.github.caldav4j</groupId>
<artifactId>caldav4j</artifactId>
<version>0.9-om</version>