Repository: openmeetings Updated Branches: refs/heads/master 079f92c04 -> 1fef09d04
[OPENMEETINGS-1714] more issues are fixed Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/1fef09d0 Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/1fef09d0 Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/1fef09d0 Branch: refs/heads/master Commit: 1fef09d04bb38dd2e44690541c1184a57d06bbc1 Parents: 079f92c Author: Maxim Solodovnik <[email protected]> Authored: Fri Oct 13 22:28:18 2017 +0700 Committer: Maxim Solodovnik <[email protected]> Committed: Fri Oct 13 22:28:18 2017 +0700 ---------------------------------------------------------------------- .../core/converter/BaseConverter.java | 2 - .../data/record/listener/StreamListener.java | 9 +-- .../record/listener/async/BaseStreamWriter.java | 5 +- .../listener/async/StreamAudioWriter.java | 9 ++- .../listener/async/StreamVideoWriter.java | 7 +- .../core/remote/RecordingService.java | 19 ++--- .../openmeetings/db/dao/file/FileItemDao.java | 30 -------- .../db/dao/record/RecordingMetaDataDao.java | 14 +--- .../db/dao/user/PrivateMessageDao.java | 8 +-- .../openmeetings/db/dao/user/UserDao.java | 63 ---------------- .../db/entity/record/RecordingMetaData.java | 36 ---------- .../db/entity/room/StreamClient.java | 18 ----- .../db/entity/user/PrivateMessage.java | 13 ---- .../service/calendar/AppointmentLogic.java | 76 -------------------- .../openmeetings/service/user/UserManager.java | 51 +++++++++++-- .../openmeetings/web/app/Application.java | 1 - .../openmeetings/web/util/ContactsHelper.java | 5 +- .../calendar/TestAppointmentAddAppointment.java | 58 +++++++++++++-- 18 files changed, 123 insertions(+), 301 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java index 85c8200..7d814bd 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/BaseConverter.java @@ -272,8 +272,6 @@ public abstract class BaseConverter { File outputWav = new File(streamFolder, metaData.getStreamName() + "_WAVE.wav"); - metaData.setWavAudioData(outputWav.getName()); - log.debug("FLV File Name: {} Length: {} ", inputFlvFile.getName(), inputFlvFile.length()); if (inputFlvFile.exists()) { http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java index b272438..cfc7ba2 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/StreamListener.java @@ -26,8 +26,6 @@ import org.apache.openmeetings.core.data.record.listener.async.BaseStreamWriter; import org.apache.openmeetings.core.data.record.listener.async.CachedEvent; import org.apache.openmeetings.core.data.record.listener.async.StreamAudioWriter; import org.apache.openmeetings.core.data.record.listener.async.StreamVideoWriter; -import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao; -import org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao; import org.red5.logging.Red5LoggerFactory; import org.red5.server.api.scope.IScope; import org.red5.server.api.stream.IBroadcastStream; @@ -42,11 +40,10 @@ public class StreamListener implements IStreamListener { private final BaseStreamWriter streamWriter; public StreamListener(boolean isAudio, String streamName, IScope scope, Long metaDataId, - boolean isScreenData, boolean isInterview, RecordingMetaDataDao metaDataDao - , RecordingMetaDeltaDao metaDeltaDao) { + boolean isScreenData, boolean isInterview) { streamWriter = isAudio - ? new StreamAudioWriter(streamName, scope, metaDataId, isScreenData, isInterview, metaDataDao, metaDeltaDao) - : new StreamVideoWriter(streamName, scope, metaDataId, isScreenData, metaDataDao); + ? new StreamAudioWriter(streamName, scope, metaDataId, isScreenData, isInterview) + : new StreamVideoWriter(streamName, scope, metaDataId, isScreenData); } @Override http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java index 3db92d9..d58ae1a 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/BaseStreamWriter.java @@ -18,6 +18,7 @@ */ package org.apache.openmeetings.core.data.record.listener.async; +import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.getApp; import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_FLV; import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey; @@ -75,12 +76,12 @@ public abstract class BaseStreamWriter implements Runnable { protected final RecordingMetaDataDao metaDataDao; private final BlockingQueue<CachedEvent> queue = new LinkedBlockingQueue<>(); - public BaseStreamWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData, RecordingMetaDataDao metaDataDao) { + public BaseStreamWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData) { startedSessionTimeDate = new Date(); this.isScreenData = isScreenData; this.streamName = streamName; this.metaDataId = metaDataId; - this.metaDataDao = metaDataDao; + this.metaDataDao = getApp().getOmBean(RecordingMetaDataDao.class); this.scope = scope; try { init(); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java index 5e9bafe..f4ccdaa 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamAudioWriter.java @@ -18,6 +18,7 @@ */ package org.apache.openmeetings.core.data.record.listener.async; +import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.getApp; import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey; import static org.red5.io.IoConstants.TYPE_AUDIO; import static org.red5.server.net.rtmp.event.VideoData.FrameType.KEYFRAME; @@ -25,7 +26,6 @@ import static org.red5.server.net.rtmp.event.VideoData.FrameType.KEYFRAME; import java.util.Date; import org.apache.mina.core.buffer.IoBuffer; -import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao; import org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao; import org.apache.openmeetings.db.entity.record.RecordingMetaData; import org.apache.openmeetings.db.entity.record.RecordingMetaDelta; @@ -50,11 +50,10 @@ public class StreamAudioWriter extends BaseStreamWriter { private boolean isInterview = false; - public StreamAudioWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData, - boolean isInterview, RecordingMetaDataDao metaDataDao, RecordingMetaDeltaDao metaDeltaDao) { - super(streamName, scope, metaDataId, isScreenData, metaDataDao); + public StreamAudioWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData, boolean isInterview) { + super(streamName, scope, metaDataId, isScreenData); - this.metaDeltaDao = metaDeltaDao; + this.metaDeltaDao = getApp().getOmBean(RecordingMetaDeltaDao.class); this.isInterview = isInterview; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java index 022d043..6aa41e7 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/record/listener/async/StreamVideoWriter.java @@ -24,7 +24,6 @@ import static org.red5.server.net.rtmp.event.VideoData.FrameType.KEYFRAME; import java.util.Date; import org.apache.mina.core.buffer.IoBuffer; -import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao; import org.apache.openmeetings.db.entity.record.RecordingMetaData; import org.red5.logging.Red5LoggerFactory; import org.red5.server.api.scope.IScope; @@ -34,10 +33,8 @@ public class StreamVideoWriter extends BaseStreamWriter { private static final Logger log = Red5LoggerFactory.getLogger(StreamVideoWriter.class, getWebAppRootKey()); private Date startedSessionScreenTimeDate = null; - public StreamVideoWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData, - RecordingMetaDataDao metaDataDao) { - - super(streamName, scope, metaDataId, isScreenData, metaDataDao); + public StreamVideoWriter(String streamName, IScope scope, Long metaDataId, boolean isScreenData) { + super(streamName, scope, metaDataId, isScreenData); } @Override http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 ba43284..c270f59 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 @@ -35,7 +35,6 @@ import org.apache.openmeetings.core.util.IClientUtil; import org.apache.openmeetings.core.util.WebSocketHelper; import org.apache.openmeetings.db.dao.record.RecordingDao; import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao; -import org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao; import org.apache.openmeetings.db.dao.server.ISessionManager; import org.apache.openmeetings.db.dao.user.UserDao; import org.apache.openmeetings.db.entity.basic.Client; @@ -89,8 +88,6 @@ public class RecordingService implements IPendingServiceCallback { @Autowired private ScopeApplicationAdapter scopeAdapter; @Autowired - private RecordingMetaDeltaDao metaDeltaDao; - @Autowired private RecordingMetaDataDao metaDataDao; @Override @@ -142,7 +139,6 @@ public class RecordingService implements IPendingServiceCallback { // Update Client and set Flag client.setRecordingStarted(true); - client.setRecordingId(recordingId); if (!(client instanceof Client)) { IApplication iapp = getApp(); Client c = iapp.getOmClientBySid(client.getSid()); @@ -239,7 +235,7 @@ public class RecordingService implements IPendingServiceCallback { // Save the stream to disk. log.debug("### stream: [{}, name: {}, scope: {}, metaId: {}, sharing ? {}, interview ? {}]" , stream, streamName, conn.getScope(), metaId, isScreenSharing, isInterview); - StreamListener streamListener = new StreamListener(!isScreenSharing, streamName, conn.getScope(), metaId, isScreenSharing, isInterview, metaDataDao, metaDeltaDao); + StreamListener streamListener = new StreamListener(!isScreenSharing, streamName, conn.getScope(), metaId, isScreenSharing, isInterview); streamListeners.put(metaId, streamListener); stream.addStreamListener(streamListener); @@ -340,16 +336,14 @@ public class RecordingService implements IPendingServiceCallback { } // If its the recording client we need another type of Meta Data - boolean audioOnly = "a".equals(rcl.getAvsettings()); - boolean videoOnly = "v".equals(rcl.getAvsettings()); if (broadcastId != null) { + boolean audioOnly = "a".equals(rcl.getAvsettings()); + boolean videoOnly = "v".equals(rcl.getAvsettings()); if (Client.Type.sharing == rcl.getType()) { - if (rcl.getRecordingId() != null && (rcl.isSharingStarted() || rcl.isRecordingStarted())) { + if (rcl.isSharingStarted() || rcl.isRecordingStarted()) { String streamName = generateFileName(recordingId, broadcastId); - Long metaId = metaDataDao.add( - recordingId, rcl.getFirstname() + " " + rcl.getLastname(), now, false, - false, true, streamName, null); + Long metaId = metaDataDao.add(recordingId, now, false, false, true, streamName, null); // Start FLV Recording addListener(conn, rcl.getBroadcastId(), streamName, metaId, true, isInterview); @@ -363,8 +357,7 @@ public class RecordingService implements IPendingServiceCallback { // But we only record av or a, video only is not interesting String streamName = generateFileName(recordingId, broadcastId); - Long metaId = metaDataDao.add(recordingId, - rcl.getFirstname() + " " + rcl.getLastname(), now, audioOnly, videoOnly, false, streamName, + Long metaId = metaDataDao.add(recordingId, now, audioOnly, videoOnly, false, streamName, rcl.getInterviewPodId()); // Start FLV recording http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 0441375..8e7b22b 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 @@ -22,9 +22,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKe import java.io.File; import java.util.Collection; -import java.util.Date; import java.util.List; -import java.util.UUID; import java.util.stream.Collectors; import javax.persistence.TypedQuery; @@ -48,34 +46,6 @@ import org.springframework.transaction.annotation.Transactional; public class FileItemDao extends BaseFileItemDao { private static final Logger log = Red5LoggerFactory.getLogger(FileItemDao.class, getWebAppRootKey()); - public FileItem add(String fileName, Long parentId, Long ownerId, Long roomId, Long insertedBy, - Type type, String externalId, String externalType) { - log.debug(".add(): adding file " + fileName + " roomID: " + roomId); - try { - FileItem fileItem = new FileItem(); - fileItem.setName(fileName); - fileItem.setHash(UUID.randomUUID().toString()); - fileItem.setDeleted(false); - fileItem.setParentId(parentId); - fileItem.setOwnerId(ownerId); - fileItem.setRoomId(roomId); - fileItem.setInserted(new Date()); - fileItem.setInsertedBy(insertedBy); - fileItem.setType(type); - fileItem.setUpdated(new Date()); - fileItem.setExternalId(externalId); - fileItem.setExternalType(externalType); - - fileItem = em.merge(fileItem); - - log.debug(".add(): file " + fileName + " added as " + fileItem.getId()); - return fileItem; - } catch (Exception ex2) { - log.error(".add(): ", ex2); - } - return null; - } - public List<FileItem> getByRoom(Long roomId) { log.debug("getByRoom roomId :: " + roomId); return em.createNamedQuery("getFilesByRoom", FileItem.class).setParameter("roomId", roomId).getResultList(); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 55d332c..6c0dc66 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 @@ -75,28 +75,18 @@ public class RecordingMetaDataDao { return null; } - public Long add(Long recordingId, String freeTextUserName, Date recordStart, boolean isAudioOnly, + public Long add(Long recordingId, Date recordStart, boolean isAudioOnly, boolean isVideoOnly, boolean isScreenData, String streamName, Integer interiewPodId) { try { RecordingMetaData metaData = new RecordingMetaData(); - - metaData.setDeleted(false); - metaData.setRecording(recordingDao.get(recordingId)); - metaData.setFreeTextUserName(freeTextUserName); - metaData.setInserted(new Date()); - metaData.setRecordStart(recordStart); - metaData.setAudioOnly(isAudioOnly); metaData.setVideoOnly(isVideoOnly); metaData.setScreenData(isScreenData); - metaData.setStreamName(streamName); - metaData.setInteriewPodId(interiewPodId); - metaData = update(metaData); return metaData.getId(); } catch (Exception ex2) { @@ -125,8 +115,10 @@ public class RecordingMetaDataDao { public RecordingMetaData update(RecordingMetaData metaData) { log.debug("[update]: "); if (metaData.getId() == null) { + metaData.setInserted(new Date()); em.persist(metaData); } else { + metaData.setUpdated(new Date()); metaData = em.merge(metaData); } return metaData; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 ad99168..b4fb916 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 @@ -33,7 +33,6 @@ import javax.persistence.Query; import javax.persistence.TypedQuery; import org.apache.openmeetings.db.dao.IDataProviderDao; -import org.apache.openmeetings.db.entity.room.Room; import org.apache.openmeetings.db.entity.user.PrivateMessage; import org.apache.openmeetings.db.entity.user.User; import org.apache.wicket.util.string.Strings; @@ -49,8 +48,8 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { @PersistenceContext private EntityManager em; - public Long addPrivateMessage(String subject, String message, Long parentMessageId, - User from, User to, User owner, Boolean bookedRoom, Room room, + public Long addPrivateMessage(String subject, String message, + User from, User to, User owner, boolean isContactRequest, Long userContactId) { try { PrivateMessage privateMessage = new PrivateMessage(); @@ -60,9 +59,6 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { privateMessage.setFrom(from); privateMessage.setTo(to); privateMessage.setOwner(owner); - privateMessage.setBookedRoom(Boolean.TRUE.equals(bookedRoom)); - privateMessage.setRoom(room); - privateMessage.setParentMessage(parentMessageId); privateMessage.setFolderId(INBOX_FOLDER_ID); privateMessage.setIsRead(false); privateMessage.setIsContactRequest(isContactRequest); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 664dbe6..f302a0e 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 @@ -33,7 +33,6 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Set; -import java.util.TimeZone; import java.util.UUID; import javax.persistence.EntityManager; @@ -48,7 +47,6 @@ import org.apache.openmeetings.db.dao.IGroupAdminDataProviderDao; import org.apache.openmeetings.db.dao.basic.ConfigurationDao; import org.apache.openmeetings.db.dao.label.LabelDao; import org.apache.openmeetings.db.entity.user.Address; -import org.apache.openmeetings.db.entity.user.GroupUser; import org.apache.openmeetings.db.entity.user.User; import org.apache.openmeetings.db.entity.user.User.Right; import org.apache.openmeetings.db.entity.user.User.Salutation; @@ -85,8 +83,6 @@ public class UserDao implements IGroupAdminDataProviderDao<User> { @Autowired private ConfigurationDao cfgDao; @Autowired - private GroupDao groupDao; - @Autowired private TimezoneUtil timezoneUtil; public static Set<Right> getDefaultRights() { @@ -625,65 +621,6 @@ public class UserDao implements IGroupAdminDataProviderDao<User> { return update(u, u.getId()); } - public Address getAddress(String street, String zip, String town, String country, String additionalname, String fax, String phone, String email) { - Address a = new Address(); - a.setStreet(street); - a.setZip(zip); - a.setTown(town); - a.setCountry(country); - a.setAdditionalname(additionalname); - a.setComment(""); - a.setFax(fax); - a.setPhone(phone); - a.setEmail(email); - return a; - } - - public User addUser(Set<Right> rights, String firstname, String login, String lastname, long languageId, - String userpass, Address adress, boolean sendSMS, Date age, String hash, TimeZone timezone, - boolean forceTimeZoneCheck, String userOffers, String userSearchs, boolean showContactData, - boolean showContactDataToContacts, String externalId, String externalType, List<Long> groupIds, String pictureuri) throws NoSuchAlgorithmException { - - User u = new User(); - u.setFirstname(firstname); - u.setLogin(login); - u.setLastname(lastname); - u.setAge(age); - u.setAddress(adress); - u.setSendSMS(sendSMS); - u.setRights(rights); - u.setLastlogin(new Date()); - u.setSalutation(Salutation.mr); - u.setActivatehash(hash); - u.setTimeZoneId(timezone.getID()); - u.setForceTimeZoneCheck(forceTimeZoneCheck); - u.setExternalId(externalId); - u.setExternalType(externalType); - if (!Strings.isEmpty(u.getExternalType())) { - u.setType(Type.external); - } - - u.setUserOffers(userOffers); - u.setUserSearchs(userSearchs); - u.setShowContactData(showContactData); - u.setShowContactDataToContacts(showContactDataToContacts); - - // this is needed cause the language is not a needed data at registering - u.setLanguageId(languageId != 0 ? languageId : 1); - if (!Strings.isEmpty(userpass)) { - u.updatePassword(cfgDao, userpass); - } - u.setDeleted(false); - u.setPictureuri(pictureuri); - if (groupIds != null) { - for (Long grpId : groupIds) { - u.getGroupUsers().add(new GroupUser(groupDao.get(grpId), u)); - } - } - - return update(u, null); - } - public List<User> getByExpiredHash(long ttl) { return em.createNamedQuery("getUserByExpiredHash", User.class) .setParameter("date", new Date(System.currentTimeMillis() - ttl)) http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/RecordingMetaData.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/RecordingMetaData.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/RecordingMetaData.java index 5730b9b..7839386 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/RecordingMetaData.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/RecordingMetaData.java @@ -93,10 +93,6 @@ public class RecordingMetaData extends HistoricalEntity { @Element(data = true) private String streamName; - @Column(name = "free_text_user_name") - @Element(data = true) - private String freeTextUserName; - @Column(name = "is_audio_only", nullable = false) @Element(name = "isAudioOnly", data = true) private boolean audioOnly; @@ -109,14 +105,6 @@ public class RecordingMetaData extends HistoricalEntity { @Element(name = "isScreenData", data = true) private boolean screenData; - @Column(name = "inserted_by") - @Element(data = true, required = false) - private Long insertedBy; - - @Column(name = "wav_audio_data") - @Element(data = true, required = false) - private String wavAudioData; - @Column(name = "full_wav_audio_data") @Element(data = true, required = false) private String fullWavAudioData; @@ -171,14 +159,6 @@ public class RecordingMetaData extends HistoricalEntity { this.recordEnd = recordEnd; } - public String getFreeTextUserName() { - return freeTextUserName; - } - - public void setFreeTextUserName(String freeTextUserName) { - this.freeTextUserName = freeTextUserName; - } - public boolean isAudioOnly() { return audioOnly; } @@ -195,14 +175,6 @@ public class RecordingMetaData extends HistoricalEntity { this.videoOnly = videoOnly; } - public Long getInsertedBy() { - return insertedBy; - } - - public void setInsertedBy(Long insertedBy) { - this.insertedBy = insertedBy; - } - public boolean isScreenData() { return screenData; } @@ -219,14 +191,6 @@ public class RecordingMetaData extends HistoricalEntity { this.streamName = streamName; } - public String getWavAudioData() { - return wavAudioData; - } - - public void setWavAudioData(String wavAudioData) { - this.wavAudioData = wavAudioData; - } - public String getFullWavAudioData() { return fullWavAudioData; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/StreamClient.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/StreamClient.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/StreamClient.java index 92f7aa2..0d8b462 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/StreamClient.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/StreamClient.java @@ -38,8 +38,6 @@ public class StreamClient implements IClient { private String sid = null; private boolean mod = false; private boolean superMod = false; - private boolean canGiveAudio = false; - private boolean canVideo = false; private Date connectedSince; private String remoteAddress; private int userport; @@ -147,22 +145,6 @@ public class StreamClient implements IClient { this.superMod = superMod; } - public boolean isCanGiveAudio() { - return canGiveAudio; - } - - public void setCanGiveAudio(boolean canGiveAudio) { - this.canGiveAudio = canGiveAudio; - } - - public boolean isCanVideo() { - return canVideo; - } - - public void setCanVideo(boolean canVideo) { - this.canVideo = canVideo; - } - public Date getConnectedSince() { return connectedSince; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/PrivateMessage.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/PrivateMessage.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/PrivateMessage.java index 4b1272d..367487c 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/PrivateMessage.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/PrivateMessage.java @@ -108,10 +108,6 @@ public class PrivateMessage implements IDataProviderEntity { @Element(data = true) private boolean isRead; - @Column(name = "parent_message_id") - @Element(data = true, required = false) - private Long parentMessage; - @Column(name = "private_message_folder_id") @Element(data = true, name = "privateMessageFolderId", required = false) private Long folderId; @@ -137,7 +133,6 @@ public class PrivateMessage implements IDataProviderEntity { bookedRoom = copy.bookedRoom; room = copy.room; isRead = copy.isRead; - parentMessage = copy.parentMessage; folderId = copy.folderId; isContactRequest = copy.isContactRequest; userContactId = copy.userContactId; @@ -217,14 +212,6 @@ public class PrivateMessage implements IDataProviderEntity { this.room = room; } - public Long getParentMessage() { - return parentMessage; - } - - public void setParentMessage(Long parentMessage) { - this.parentMessage = parentMessage; - } - public Long getFolderId() { return folderId; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 d25f575..bc01f54 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 @@ -24,7 +24,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.DEFAULT_BASE_UR import static org.apache.openmeetings.util.OpenmeetingsVariables.DEFAULT_MINUTES_REMINDER_SEND; import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey; -import java.util.ArrayList; import java.util.Calendar; import java.util.List; import java.util.TimeZone; @@ -32,18 +31,12 @@ 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.room.InvitationDao; -import org.apache.openmeetings.db.dao.room.RoomDao; -import org.apache.openmeetings.db.dao.user.UserDao; 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.Room; import org.apache.openmeetings.db.entity.user.User; import org.apache.openmeetings.db.util.TimezoneUtil; -import org.apache.wicket.util.string.Strings; import org.red5.logging.Red5LoggerFactory; import org.slf4j.Logger; import org.springframework.beans.factory.annotation.Autowired; @@ -58,16 +51,10 @@ public class AppointmentLogic { @Autowired private ConfigurationDao cfgDao; @Autowired - private RoomDao roomDao; - @Autowired private TimezoneUtil timezoneUtil; @Autowired private InvitationDao invitationDao; @Autowired - private UserDao userDao; - @Autowired - private MeetingMemberDao meetingMemberDao; - @Autowired private NotifierService notifierService; // -------------------------------------------------------------------------------------------- @@ -152,67 +139,4 @@ public class AppointmentLogic { } } } - - public Appointment getAppointment(String appointmentName, - String appointmentLocation, String appointmentDescription, - Calendar appointmentstart, Calendar appointmentend, - Boolean isDaily, Boolean isWeekly, Boolean isMonthly, - Boolean isYearly, String remind, String[] mmClient, - Long roomType, Long languageId, - boolean isPasswordProtected, String password, long roomId, Long userId) { - Appointment a = new Appointment(); - a.setTitle(appointmentName); - a.setLocation(appointmentLocation); - a.setDescription(appointmentDescription); - a.setStart(appointmentstart.getTime()); - a.setEnd(appointmentend.getTime()); - a.setIsDaily(isDaily); - a.setIsWeekly(isWeekly); - a.setIsMonthly(isMonthly); - a.setIsYearly(isYearly); - a.setReminder(Reminder.valueOf(remind)); - if (roomId > 0) { - a.setRoom(roomDao.get(roomId)); - } else { - a.setRoom(new Room()); - a.getRoom().setComment(appointmentDescription); - a.getRoom().setName(appointmentName); - a.getRoom().setType(Room.Type.get(roomType)); - a.getRoom().setAppointment(true); - } - a.setOwner(userDao.get(userId)); - a.setPasswordProtected(isPasswordProtected); - a.setPassword(password); - a.setMeetingMembers(new ArrayList<MeetingMember>()); - for (String singleClient : mmClient) { - if (Strings.isEmpty(singleClient)) { - continue; - } - MeetingMember mm = getMeetingMember(userId, languageId, singleClient); - mm.setAppointment(a); - a.getMeetingMembers().add(mm); - } - return a; - } - - public MeetingMember getMeetingMember(Long userId, Long langId, String str) { - String[] params = str.split(","); - - try { - return meetingMemberDao.get(Long.valueOf(params[0])); - } catch (Exception e) { - //no-op - } - MeetingMember mm = new MeetingMember(); - try { - mm.setUser(userDao.get(Long.valueOf(params[4]))); - } catch (Exception e) { - //no-op - } - if (mm.getUser() == null) { - mm.setUser(userDao.getContact(params[3], params[1], params[2], langId, params[5], userId)); - } - - return mm; - } } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/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 69da110..d8d7ecb 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 @@ -54,6 +54,7 @@ import org.apache.openmeetings.db.entity.user.Address; import org.apache.openmeetings.db.entity.user.GroupUser; import org.apache.openmeetings.db.entity.user.User; import org.apache.openmeetings.db.entity.user.User.Right; +import org.apache.openmeetings.db.entity.user.User.Salutation; import org.apache.openmeetings.db.entity.user.User.Type; import org.apache.openmeetings.db.util.TimezoneUtil; import org.apache.openmeetings.service.mail.EmailManager; @@ -208,7 +209,16 @@ public class UserManager implements IUserManager { if (sendWelcomeMessage && email.length() != 0) { emailManagement.sendMail(login, email, hash, sendConfirmation, languageId); } - Address adr = userDao.getAddress(street, zip, town, country, additionalname, fax, phone, email); + Address a = new Address(); + a.setStreet(street); + a.setZip(zip); + a.setTown(town); + a.setCountry(country); + a.setAdditionalname(additionalname); + a.setComment(""); + a.setFax(fax); + a.setPhone(phone); + a.setEmail(email); // If this user needs first to click his E-Mail verification // code then set the status to 0 @@ -216,13 +226,42 @@ public class UserManager implements IUserManager { rights.remove(Right.Login); } - User u = userDao.addUser(rights, firstname, login, lastname, languageId, - password, adr, sendSMS, age, hash, timezone, - forceTimeZoneCheck, userOffers, userSearchs, showContactData, - showContactDataToContacts, null, null, groups, null); + User u = new User(); + u.setFirstname(firstname); + u.setLogin(login); + u.setLastname(lastname); + u.setAge(age); + u.setAddress(a); + u.setSendSMS(sendSMS); + u.setRights(rights); + u.setLastlogin(new Date()); + u.setSalutation(Salutation.mr); + u.setActivatehash(hash); + u.setTimeZoneId(timezone.getID()); + u.setForceTimeZoneCheck(forceTimeZoneCheck); + if (!Strings.isEmpty(u.getExternalType())) { + u.setType(Type.external); + } + + u.setUserOffers(userOffers); + u.setUserSearchs(userSearchs); + u.setShowContactData(showContactData); + u.setShowContactDataToContacts(showContactDataToContacts); + + // this is needed cause the language is not a needed data at registering + u.setLanguageId(languageId != 0 ? languageId : 1); + if (!Strings.isEmpty(password)) { + u.updatePassword(cfgDao, password); + } + if (groups != null) { + for (Long grpId : groups) { + u.getGroupUsers().add(new GroupUser(groupDao.get(grpId), u)); + } + } + u = userDao.update(u, null); log.debug("Added user-Id " + u.getId()); - if (adr.getId() != null && u.getId() != null) { + if (a.getId() != null && u.getId() != null) { return u; } } else { http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java index c97a507..78b528c 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java @@ -480,7 +480,6 @@ public class Application extends AuthenticatedWebApplication implements IApplica rcl.setEmail(u.getAddress() == null ? null : u.getAddress().getEmail()); rcl.setSuperMod(client.hasRight(Right.superModerator)); rcl.setMod(client.hasRight(Right.moderator)); - rcl.setCanVideo(client.hasRight(Right.video) && client.isCamEnabled() && client.hasActivity(Activity.broadcastV)); if (client.hasActivity(Activity.broadcastA) && client.getMic() < 0) { client.remove(Activity.broadcastA); } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java index 633cdf4..84d568d 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java @@ -48,7 +48,7 @@ public class ContactsHelper { String message = RequestContactTemplate.getEmail(userToAdd, user); getBean(PrivateMessageDao.class).addPrivateMessage( - subj, message, 0L, user, userToAdd, userToAdd, false, null, true, contact.getId()); + subj, message, user, userToAdd, userToAdd, true, contact.getId()); if (userToAdd.getAddress() != null) { getBean(MailHandler.class).send(userToAdd.getAddress().getEmail(), subj, message); @@ -82,8 +82,7 @@ public class ContactsHelper { String subj = contact.getContact().getFirstname() + " " + contact.getContact().getLastname() + " " + Application.getString("1198"); getBean(PrivateMessageDao.class).addPrivateMessage( - subj, message, - 0L, contact.getContact(), user, user, false, null, false, 0L); + subj, message, contact.getContact(), user, user, false, 0L); getBean(MailHandler.class).send(user.getAddress().getEmail(), subj, message); } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1fef09d0/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java index 8190c71..b3e293a 100644 --- a/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java +++ b/openmeetings-web/src/test/java/org/apache/openmeetings/calendar/TestAppointmentAddAppointment.java @@ -32,6 +32,7 @@ import java.util.UUID; import org.apache.openmeetings.AbstractWicketTester; import org.apache.openmeetings.db.dao.calendar.AppointmentDao; +import org.apache.openmeetings.db.dao.calendar.MeetingMemberDao; 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; @@ -40,6 +41,7 @@ import org.apache.openmeetings.db.entity.user.User; import org.apache.openmeetings.service.calendar.AppointmentLogic; import org.apache.openmeetings.web.app.WebSession; import org.apache.wicket.util.string.StringValue; +import org.apache.wicket.util.string.Strings; import org.junit.Test; import org.red5.logging.Red5LoggerFactory; import org.slf4j.Logger; @@ -52,12 +54,35 @@ public class TestAppointmentAddAppointment extends AbstractWicketTester { private AppointmentLogic appointmentLogic; @Autowired private AppointmentDao appointmentDao; + @Autowired + private MeetingMemberDao meetingMemberDao; private static void setTime(Appointment a) { a.setStart(Date.from(LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant())); a.setEnd(Date.from(LocalDateTime.now().plusHours(1).atZone(ZoneId.systemDefault()).toInstant())); } + public MeetingMember getMeetingMember(Long userId, Long langId, String str) { + String[] params = str.split(","); + + try { + return meetingMemberDao.get(Long.valueOf(params[0])); + } catch (Exception e) { + //no-op + } + MeetingMember mm = new MeetingMember(); + try { + mm.setUser(userDao.get(Long.valueOf(params[4]))); + } catch (Exception e) { + //no-op + } + if (mm.getUser() == null) { + mm.setUser(userDao.getContact(params[3], params[1], params[2], langId, params[5], userId)); + } + + return mm; + } + @Test public void saveAppointment() throws Exception { log.debug("- saveAppointment"); @@ -85,11 +110,34 @@ public class TestAppointmentAddAppointment extends AbstractWicketTester { Long languageId = 1L; Long roomType = 1L; - Appointment a = appointmentLogic.getAppointment(appointmentName, - appointmentLocation, appointmentDescription, - start, end, isDaily, isWeekly, - isMonthly, isYearly, remind, mmClient, - roomType, languageId, false, "", -1, userId); + Appointment a = new Appointment(); + a.setTitle(appointmentName); + a.setLocation(appointmentLocation); + a.setDescription(appointmentDescription); + a.setStart(start.getTime()); + a.setEnd(end.getTime()); + a.setIsDaily(isDaily); + a.setIsWeekly(isWeekly); + a.setIsMonthly(isMonthly); + a.setIsYearly(isYearly); + a.setReminder(Reminder.valueOf(remind)); + a.setRoom(new Room()); + a.getRoom().setComment(appointmentDescription); + a.getRoom().setName(appointmentName); + a.getRoom().setType(Room.Type.get(roomType)); + a.getRoom().setAppointment(true); + a.setOwner(userDao.get(userId)); + a.setPasswordProtected(false); + a.setPassword(""); + a.setMeetingMembers(new ArrayList<MeetingMember>()); + for (String singleClient : mmClient) { + if (Strings.isEmpty(singleClient)) { + continue; + } + MeetingMember mm = getMeetingMember(userId, languageId, singleClient); + mm.setAppointment(a); + a.getMeetingMembers().add(mm); + } a = appointmentDao.update(a, userId); Thread.sleep(3000);
