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 2019/03/04 10:07:19 UTC
[openmeetings] branch master updated: [OPENMEETINGS-1856] sonar
should be more happy
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push:
new 29da245 [OPENMEETINGS-1856] sonar should be more happy
29da245 is described below
commit 29da2459ef79574c7f11e03981425bbc65ba0195
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Mon Mar 4 17:07:05 2019 +0700
[OPENMEETINGS-1856] sonar should be more happy
---
.../org/apache/openmeetings/core/remote/KRoom.java | 2 +-
.../openmeetings/core/remote/StreamProcessor.java | 29 +--
.../openmeetings/core/util/WebSocketHelper.java | 8 +-
.../calendar/caldav/AppointmentManager.java | 209 ++++++++++-----------
.../apache/openmeetings/web/app/UserManager.java | 65 ++++---
.../apache/openmeetings/web/room/wb/raw-player.js | 5 +-
.../apache/openmeetings/web/user/chat/raw-chat.js | 8 +-
7 files changed, 166 insertions(+), 160 deletions(-)
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
index 8fb1121..62912b0 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KRoom.java
@@ -231,7 +231,7 @@ public class KRoom {
}
public void startSharing(StreamProcessor processor, IClientManager cm, Client c, Optional<StreamDesc> osd, JSONObject msg, Activity a) {
- StreamDesc sd = null;
+ StreamDesc sd;
KurentoHandler h = processor.getHandler();
if (sharingStarted.compareAndSet(false, true)) {
sharingUser.put("sid", c.getSid());
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java
index 0e57ef2..9ef4b05 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/StreamProcessor.java
@@ -28,6 +28,7 @@ import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors;
import org.apache.openmeetings.core.converter.IRecordingConverter;
@@ -165,7 +166,7 @@ public class StreamProcessor implements IStreamProcessor {
}
public void toggleActivity(Client c, Activity a) {
- log.info("PARTICIPANT {}: trying to toggle activity {}", c, c.getRoomId());
+ log.info("PARTICIPANT {}: trying to toggle activity {}", c, a);
if (!activityAllowed(c, a, c.getRoom())) {
if (a == Activity.AUDIO || a == Activity.AUDIO_VIDEO) {
@@ -189,18 +190,18 @@ public class StreamProcessor implements IStreamProcessor {
c.toggle(a);
if (!isBroadcasting(c)) {
//close
- boolean changed = false;
- for (StreamDesc sd : c.getStreams()) {
- KStream s = getByUid(sd.getUid());
- if (StreamType.WEBCAM == sd.getType()) {
+ AtomicBoolean changed = new AtomicBoolean(false);
+ c.getStreams().stream()
+ .filter(sd -> StreamType.WEBCAM == sd.getType())
+ .forEach(sd -> {
+ KStream s = getByUid(sd.getUid());
if (s != null) {
s.stopBroadcast(this);
}
c.removeStream(sd.getUid());
- changed = true;
- }
- }
- if (changed) {
+ changed.set(true);
+ });
+ if (changed.get()) {
cm.update(c);
checkStreams(c.getRoomId());
}
@@ -218,13 +219,13 @@ public class StreamProcessor implements IStreamProcessor {
//FIXME TODO update interview buttons
} else {
//constraints were changed
- for (StreamDesc sd : c.getStreams()) {
- if (StreamType.WEBCAM == sd.getType()) {
+ c.getStreams().stream()
+ .filter(sd -> StreamType.WEBCAM == sd.getType())
+ .findFirst()
+ .ifPresent(sd -> {
sd.setActivities();
cm.update(c);
- break;
- }
- }
+ });
WebSocketHelper.sendRoom(new TextRoomMessage(c.getRoomId(), c, RoomMessage.Type.rightUpdated, c.getUid()));
}
}
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java
index e9e17b0..3689520 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/WebSocketHelper.java
@@ -119,12 +119,12 @@ public class WebSocketHelper {
if (publish) {
publish(new WsMessageRoomMsg(m));
}
- log.debug("Sending WebSocket message: {} {}", m.getType(), m instanceof TextRoomMessage ? ((TextRoomMessage)m).getText() : "");
+ log.debug("Sending WebSocket message to room: {} {}", m.getType(), m instanceof TextRoomMessage ? ((TextRoomMessage)m).getText() : "");
sendRoom(m.getRoomId(), (t, c) -> t.sendMessage(m), null);
}
public static void sendServer(final RoomMessage m) {
- log.debug("Sending WebSocket message: {}", m);
+ log.debug("Sending WebSocket message to All: {}", m);
sendAll(c -> {
try {
c.sendMessage(m);
@@ -176,7 +176,7 @@ public class WebSocketHelper {
if (publish) {
publish(new WsMessageAll(m));
}
- log.debug("Sending WebSocket message: {}", m);
+ log.debug("Sending text WebSocket message to All: {}", m);
sendAll(c -> doSend(c, m, "ALL"));
}
@@ -201,7 +201,7 @@ public class WebSocketHelper {
}
protected static void sendRoom(final Long roomId, final JSONObject m, Predicate<Client> check, BiFunction<JSONObject, Client, JSONObject> func) {
- log.debug("Sending WebSocket message: {}", m);
+ log.debug("Sending json WebSocket message to room: {}", m);
sendRoom(roomId, (t, c) -> doSend(t, c, m, func, "room"), check);
}
diff --git a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java
index 9ce8a31..839624c 100644
--- a/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java
+++ b/openmeetings-service/src/main/java/org/apache/openmeetings/service/calendar/caldav/AppointmentManager.java
@@ -276,141 +276,140 @@ public class AppointmentManager {
private boolean discoverCalendars(HttpClient client, HttpClientContext context, OmCalendar calendar) {
cleanupIdleConnections();
- if (calendar.getSyncType() == SyncType.NONE) {
- HttpPropfind propFindMethod = null;
- String userPath = null, homepath = null;
+ if (calendar.getSyncType() != SyncType.NONE) {
+ return false;
+ }
+ HttpPropfind propFindMethod = null;
+ String userPath = null, homepath = null;
- DavPropertyName curUserPrincipal = DavPropertyName.create("current-user-principal"),
- calHomeSet = DavPropertyName.create("calendar-home-set", CalDAVConstants.NAMESPACE_CALDAV),
- suppCalCompSet = DavPropertyName.create("supported-calendar-component-set", CalDAVConstants.NAMESPACE_CALDAV);
+ DavPropertyName curUserPrincipal = DavPropertyName.create("current-user-principal"),
+ calHomeSet = DavPropertyName.create("calendar-home-set", CalDAVConstants.NAMESPACE_CALDAV),
+ suppCalCompSet = DavPropertyName.create("supported-calendar-component-set", CalDAVConstants.NAMESPACE_CALDAV);
- //Find out whether it's a calendar or if we can find the calendar-home or current-user url
- try {
- String path = calendar.getHref();
+ //Find out whether it's a calendar or if we can find the calendar-home or current-user url
+ try {
+ String path = calendar.getHref();
- DavPropertyNameSet properties = new DavPropertyNameSet();
- properties.add(curUserPrincipal);
- properties.add(calHomeSet);
- properties.add(DavPropertyName.RESOURCETYPE);
+ DavPropertyNameSet properties = new DavPropertyNameSet();
+ properties.add(curUserPrincipal);
+ properties.add(calHomeSet);
+ properties.add(DavPropertyName.RESOURCETYPE);
- propFindMethod = new HttpPropfind(path, properties, CalDAVConstants.DEPTH_0);
- HttpResponse httpResponse = client.execute(propFindMethod, context);
+ propFindMethod = new HttpPropfind(path, properties, CalDAVConstants.DEPTH_0);
+ HttpResponse httpResponse = client.execute(propFindMethod, context);
- if (propFindMethod.succeeded(httpResponse)) {
- for (MultiStatusResponse response : propFindMethod.getResponseBodyAsMultiStatus(httpResponse).getResponses()) {
- DavPropertySet set = response.getProperties(SC_OK);
- DavProperty<?> calhome = set.get(calHomeSet), curPrinci = set.get(curUserPrincipal),
- resourcetype = set.get(DavPropertyName.RESOURCETYPE);
+ if (!propFindMethod.succeeded(httpResponse)) {
+ return false;
+ }
+ for (MultiStatusResponse response : propFindMethod.getResponseBodyAsMultiStatus(httpResponse).getResponses()) {
+ DavPropertySet set = response.getProperties(SC_OK);
+ DavProperty<?> calhome = set.get(calHomeSet), curPrinci = set.get(curUserPrincipal),
+ resourcetype = set.get(DavPropertyName.RESOURCETYPE);
+
+ if (checkCalendarResourceType(resourcetype)) {
+ //This is a calendar and thus initialize and return
+ return initCalendar(client, context, calendar);
+ }
- if (checkCalendarResourceType(resourcetype)) {
- //This is a calendar and thus initialize and return
- return initCalendar(client, context, calendar);
- }
+ //Else find all the calendars on the Principal and return.
+ if (calhome != null) {
+ //Calendar Home Path
+ homepath = getTextValuefromProperty(calhome);
+ break;
+ } else if (curPrinci != null) {
+ //Current User Principal Path
+ userPath = getTextValuefromProperty(curPrinci);
+ break;
+ }
+ }
- //Else find all the calendars on the Principal and return.
- if (calhome != null) {
- //Calendar Home Path
- homepath = getTextValuefromProperty(calhome);
- break;
- } else if (curPrinci != null) {
- //Current User Principal Path
- userPath = getTextValuefromProperty(curPrinci);
- break;
- }
- }
- } else {
+ if (homepath == null && userPath != null) {
+ //If calendar home path wasn't set, then we get it
+ DavPropertyNameSet props = new DavPropertyNameSet();
+ props.add(calHomeSet);
+ propFindMethod = new HttpPropfind(userPath, props, DavConstants.DEPTH_0);
+ httpResponse = client.execute(propFindMethod, context);
+
+ if (!propFindMethod.succeeded(httpResponse)) {
return false;
}
+ for (MultiStatusResponse response : propFindMethod.getResponseBodyAsMultiStatus(httpResponse).getResponses()) {
+ DavPropertySet set = response.getProperties(SC_OK);
+ DavProperty<?> calhome = set.get(calHomeSet);
- if (homepath == null && userPath != null) {
- //If calendar home path wasn't set, then we get it
- DavPropertyNameSet props = new DavPropertyNameSet();
- props.add(calHomeSet);
- propFindMethod = new HttpPropfind(userPath, props, DavConstants.DEPTH_0);
- httpResponse = client.execute(propFindMethod, context);
-
- if (propFindMethod.succeeded(httpResponse)) {
- for (MultiStatusResponse response : propFindMethod.getResponseBodyAsMultiStatus(httpResponse).getResponses()) {
- DavPropertySet set = response.getProperties(SC_OK);
- DavProperty<?> calhome = set.get(calHomeSet);
-
- if (calhome != null) {
- homepath = getTextValuefromProperty(calhome);
- break;
- }
- }
- } else {
- return false;
+ if (calhome != null) {
+ homepath = getTextValuefromProperty(calhome);
+ break;
}
}
+ }
- if (homepath != null) {
- DavPropertyNameSet props = new DavPropertyNameSet();
- props.add(DavPropertyName.RESOURCETYPE);
- props.add(suppCalCompSet);
- props.add(DavPropertyName.DISPLAYNAME);
-
- propFindMethod = new HttpPropfind(homepath, props, DavConstants.DEPTH_1);
-
- httpResponse = client.execute(propFindMethod, context);
+ if (homepath != null) {
+ DavPropertyNameSet props = new DavPropertyNameSet();
+ props.add(DavPropertyName.RESOURCETYPE);
+ props.add(suppCalCompSet);
+ props.add(DavPropertyName.DISPLAYNAME);
- if (propFindMethod.succeeded(httpResponse)) {
- boolean success = false;
+ propFindMethod = new HttpPropfind(homepath, props, DavConstants.DEPTH_1);
- URI resourceUri = propFindMethod.getURI();
- String host = resourceUri.getScheme() + "://" + resourceUri.getHost() + ((resourceUri.getPort() != -1)? ":" + resourceUri.getPort() : "");
- for (MultiStatusResponse response : propFindMethod.getResponseBodyAsMultiStatus(httpResponse).getResponses()) {
- boolean isVevent = false, isCalendar;
+ httpResponse = client.execute(propFindMethod, context);
- DavPropertySet set = response.getProperties(SC_OK);
- DavProperty<?> p = set.get(suppCalCompSet),
- resourcetype = set.get(DavPropertyName.RESOURCETYPE),
- displayname = set.get(DavPropertyName.DISPLAYNAME);
+ if (propFindMethod.succeeded(httpResponse)) {
+ boolean success = false;
- isCalendar = checkCalendarResourceType(resourcetype);
+ URI resourceUri = propFindMethod.getURI();
+ String host = resourceUri.getScheme() + "://" + resourceUri.getHost() + ((resourceUri.getPort() != -1)? ":" + resourceUri.getPort() : "");
+ for (MultiStatusResponse response : propFindMethod.getResponseBodyAsMultiStatus(httpResponse).getResponses()) {
+ boolean isVevent = false, isCalendar;
- if (p != null) {
- for (Object o : (Collection<?>) p.getValue()) {
- if (o instanceof Element) {
- Element e = (Element) o;
- String name = DomUtil.getAttribute(e, "name", null);
- if ("VEVENT".equals(name)) {
- isVevent = true;
- }
+ DavPropertySet set = response.getProperties(SC_OK);
+ DavProperty<?> p = set.get(suppCalCompSet),
+ resourcetype = set.get(DavPropertyName.RESOURCETYPE),
+ displayname = set.get(DavPropertyName.DISPLAYNAME);
+
+ isCalendar = checkCalendarResourceType(resourcetype);
+
+ if (p != null) {
+ for (Object o : (Collection<?>) p.getValue()) {
+ if (o instanceof Element) {
+ Element e = (Element) o;
+ String name = DomUtil.getAttribute(e, "name", null);
+ if ("VEVENT".equals(name)) {
+ isVevent = true;
}
}
}
+ }
- if (isCalendar && isVevent) {
- success = true;
- //Get New Calendar
- OmCalendar tempCalendar = new OmCalendar();
+ if (isCalendar && isVevent) {
+ success = true;
+ //Get New Calendar
+ OmCalendar tempCalendar = new OmCalendar();
- if (displayname != null) {
- tempCalendar.setTitle(displayname.getValue().toString());
- }
+ if (displayname != null) {
+ tempCalendar.setTitle(displayname.getValue().toString());
+ }
- tempCalendar.setHref(host + response.getHref());
+ tempCalendar.setHref(host + response.getHref());
- tempCalendar.setDeleted(false);
- tempCalendar.setOwner(calendar.getOwner());
+ tempCalendar.setDeleted(false);
+ tempCalendar.setOwner(calendar.getOwner());
- calendarDao.update(tempCalendar);
- initCalendar(client, context, tempCalendar);
- }
+ calendarDao.update(tempCalendar);
+ initCalendar(client, context, tempCalendar);
}
- return success;
}
+ return success;
}
+ }
- } catch (IOException e) {
- log.error("Error executing PROPFIND Method, during testConnection.", e);
- } catch (Exception e) {
- log.error("Severe Error in executing PROPFIND Method, during testConnection.", e);
- } finally {
- if (propFindMethod != null) {
- propFindMethod.reset();
- }
+ } catch (IOException e) {
+ log.error("Error executing PROPFIND Method, during testConnection.", e);
+ } catch (Exception e) {
+ log.error("Severe Error in executing PROPFIND Method, during testConnection.", e);
+ } finally {
+ if (propFindMethod != null) {
+ propFindMethod.reset();
}
}
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/UserManager.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/UserManager.java
index 1d306dc..4e0769e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/UserManager.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/UserManager.java
@@ -50,6 +50,7 @@ import org.apache.openmeetings.service.mail.EmailManager;
import org.apache.openmeetings.util.OmException;
import org.apache.openmeetings.util.crypt.CryptProvider;
import org.apache.openmeetings.util.crypt.ICrypt;
+import org.apache.wicket.IConverterLocator;
import org.apache.wicket.core.util.lang.PropertyResolver;
import org.apache.wicket.core.util.lang.PropertyResolverConverter;
import org.apache.wicket.util.string.Strings;
@@ -254,33 +255,7 @@ public class UserManager implements IUserManager {
fUser.getGroupUsers().add(new GroupUser(groupDao.get(getDefaultGroup()), fUser));
for (Map.Entry<String, String> entry : user.getUserData().entrySet()) {
final String expression = entry.getKey();
- PropertyResolver.setValue(expression, fUser, entry.getValue(), new PropertyResolverConverter(null, null) {
- private static final long serialVersionUID = 1L;
-
- @SuppressWarnings("unchecked")
- @Override
- public <T> T convert(Object object, Class<T> clz) {
- if ("languageId".equals(expression) && Long.class.isAssignableFrom(clz)) {
- Long language = 1L;
- String locale = (String)object;
- if (locale != null) {
- Locale loc = Locale.forLanguageTag(locale);
- if (loc != null) {
- language = getLanguage(loc);
- fUser.setLanguageId(language);
- fUser.getAddress().setCountry(loc.getCountry());
- }
- }
- return (T)language;
- }
- return (T)object;
- }
-
- @Override
- protected <C> String convertToString(C object, Locale locale) {
- return String.valueOf(object);
- }
- });
+ PropertyResolver.setValue(expression, fUser, entry.getValue(), new LanguageConverter(expression, fUser, null, null));
}
fUser.setShowContactDataToContacts(true);
u = fUser;
@@ -291,4 +266,40 @@ public class UserManager implements IUserManager {
return u;
}
+
+ private class LanguageConverter extends PropertyResolverConverter {
+ private static final long serialVersionUID = 1L;
+ final String expression;
+ final User fUser;
+
+ public LanguageConverter(final String expression, final User fUser, IConverterLocator converterSupplier, Locale locale) {
+ super(converterSupplier, locale);
+ this.expression = expression;
+ this.fUser = fUser;
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public <T> T convert(Object object, Class<T> clz) {
+ if ("languageId".equals(expression) && Long.class.isAssignableFrom(clz)) {
+ Long language = 1L;
+ String locale = (String)object;
+ if (locale != null) {
+ Locale loc = Locale.forLanguageTag(locale);
+ if (loc != null) {
+ language = getLanguage(loc);
+ fUser.setLanguageId(language);
+ fUser.getAddress().setCountry(loc.getCountry());
+ }
+ }
+ return (T)language;
+ }
+ return (T)object;
+ }
+
+ @Override
+ protected <C> String convertToString(C object, Locale locale) {
+ return String.valueOf(object);
+ }
+ }
}
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-player.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-player.js
index 83e16d4..ab64381 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-player.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/raw-player.js
@@ -211,9 +211,8 @@ var Player = (function() {
if (group.status.paused) {
video.getElement().pause();
} else {
- const prom = video.getElement().play();
- if (prom !== undefined) {
- prom.then(function() {
+ video.getElement().play()
+ .then(function() {
fabric.util.requestAnimFrame(render);
}).catch(function(err) {
if ('NotAllowedError' === err.name) {
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
index 95d4ec2..b79f84f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
@@ -255,12 +255,8 @@ var Chat = function() {
if (notify) {
ctrl.addClass('ui-state-highlight');
if (p.is(':visible') && !muted) {
- const playPromise = audio.play();
-
- // In browsers that don’t yet support this functionality,
- // playPromise won’t be defined.
- if (playPromise !== undefined) {
- playPromise.then(function() {
+ audio.play()
+ .then(function() {
// Automatic playback started!
}).catch(function() {
// Automatic playback failed.