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 a0582ea  [OPENMEETINGS-1856] sonar should be more happy
a0582ea is described below

commit a0582ead073fdb8afb0e0a551223e82500bd2c4c
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Sat Oct 27 01:27:03 2018 +0700

    [OPENMEETINGS-1856] sonar should be more happy
---
 .../core/converter/InterviewConverter.java         | 162 +++++++++++----------
 .../openmeetings/core/ldap/LdapLoginManager.java   | 152 ++++++++++---------
 .../room/sidebar/icon/right/AudioRightIcon.java    |   2 +-
 .../sidebar/icon/right/ExclusiveRightIcon.java     |   2 +-
 .../sidebar/icon/right/ModeratorRightIcon.java     |   2 +-
 .../sidebar/icon/right/PresenterRightIcon.java     |   2 +-
 .../sidebar/icon/right/RemoteControlRightIcon.java |   2 +-
 .../sidebar/icon/right/ScreenShareRightIcon.java   |   2 +-
 .../room/sidebar/icon/right/VideoRightIcon.java    |   2 +-
 .../sidebar/icon/right/WhiteboardRightIcon.java    |   2 +-
 10 files changed, 178 insertions(+), 152 deletions(-)

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 79f0077..88772a7 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
@@ -24,6 +24,7 @@ import static 
org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
 import static org.apache.openmeetings.util.OmFileHelper.getRecordingChunk;
 
 import java.io.File;
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.Date;
@@ -92,32 +93,7 @@ public class InterviewConverter extends BaseConverter 
implements IRecordingConve
                        for (Entry<String, List<RecordingChunk>> e : 
cunksBySid.entrySet()) {
                                Date pStart = r.getRecordStart();
                                List<PodPart> parts = new ArrayList<>();
-                               for (RecordingChunk chunk : e.getValue()) {
-                                       File chunkStream = 
getRecordingChunk(r.getRoomId(), chunk.getStreamName());
-                                       if (chunkStream.exists()) {
-                                               String path = 
chunkStream.getCanonicalPath();
-                                               /* CHECK FILE:
-                                                * ffmpeg -i 
rec_316_stream_567_2013_08_28_11_51_45.webm -v error -f null file.null
-                                                */
-                                               String[] args = new String[] 
{getPathToFFMPEG(), "-y"
-                                                               , "-i", path
-                                                               , "-v", "error"
-                                                               , "-f", "null"
-                                                               , "file.null"};
-                                               ProcessResult res = 
ProcessHelper.executeScript(String.format("Check chunk pod video_%s_%s", N, 
parts.size()), args, true);
-                                               logs.add(res);
-                                               if (!res.isWarn()) {
-                                                       long diff = 
diff(chunk.isAudioOnly() ? chunk.getEnd() : chunk.getStart(), pStart);
-                                                       PodPart.add(parts, 
diff);
-                                                       if 
(!chunk.isAudioOnly()) {
-                                                               parts.add(new 
PodPart(path, diff(chunk.getEnd(), chunk.getStart())));
-                                                       }
-                                                       pStart = chunk.getEnd();
-                                               }
-                                       } else {
-                                               log.debug("Chunk stream doesn't 
exist: {}", chunkStream);
-                                       }
-                               }
+                               pStart = processParts(r.getRoomId(), 
e.getValue(), logs, N, parts, pStart);
                                if (!parts.isEmpty()) {
                                        String podX = new File(streamFolder, 
String.format("rec_%s_pod_%s.%s", r.getId(), N, 
EXTENSION_MP4)).getCanonicalPath();
                                        long diff = diff(r.getRecordEnd(), 
pStart);
@@ -179,60 +155,11 @@ public class InterviewConverter extends BaseConverter 
implements IRecordingConve
                        double ratio = Math.sqrt(N / Math.sqrt(2));
                        int w = ratio < 1 ? N : (int)Math.round(ratio);
                        w = Math.max(w, (int)Math.round(1. * N / w));
-                       List<String> args = new ArrayList<>();
-                       if (N == 1) {
-                               args.add("-i");
-                               args.add(pods.get(0));
-                               args.add("-i");
-                               args.add(wav.getCanonicalPath());
-                               args.add("-map");
-                               args.add("0:v");
-                       } else {
-                               /* Creating grid
-                                * ffmpeg -i top_l.mp4 -i top_r.mp4 -i 
bottom_l.mp4 -i bottom_r.mp4 -i audio.mp4 \
-                                *      -filter_complex 
"[0:v][1:v]hstack=inputs=2[t];[2:v][3:v]hstack=inputs=2[b];[t][b]vstack=inputs=2[v]"
 \
-                                *      -map "[v]" -map 4:a -c:a copy -shortest 
output.mp4
-                                */
-                               StringBuilder cols = new StringBuilder();
-                               StringBuilder rows = new StringBuilder();
-                               for (int i = 0, j = 0; i < N; ++i) {
-                                       args.add("-i");
-                                       args.add(pods.get(i));
-                                       
cols.append('[').append(i).append(":v]");
-                                       if (i != 0 && (i + 1) % w == 0) {
-                                               
cols.append("hstack=inputs=").append(w);
-                                               if (j == 0 && i == N - 1) {
-                                                       cols.append("[v]");
-                                               } else {
-                                                       
cols.append("[c").append(j).append("];");
-                                               }
-                                               
rows.append("[c").append(j).append(']');
-                                               j++;
-                                       }
-                                       if (i == N - 1) {
-                                               if (j > 1) {
-                                                       
rows.append("vstack=inputs=").append(j).append("[v]");
-                                               } else {
-                                                       rows.setLength(0);
-                                               }
-                                       }
-                               }
-                               args.add("-i");
-                               args.add(wav.getCanonicalPath());
-                               args.add("-filter_complex");
-                               args.add(cols.append(rows).toString());
-                               args.add("-map");
-                               args.add("[v]");
-                       }
-                       args.add("-map");
-                       args.add(String.format("%s:a", N));
-                       args.add("-qmax"); args.add("1");
-                       args.add("-qmin"); args.add("1");
 
                        r.setWidth(w * width);
                        r.setHeight((N / w) * height);
 
-                       String mp4path = convertToMp4(r, args, logs);
+                       String mp4path = convertToMp4(r, getFinalArgs(N, pods, 
wav, w), logs);
 
                        finalizeRec(r, mp4path, logs);
                } catch (Exception err) {
@@ -248,6 +175,89 @@ public class InterviewConverter extends BaseConverter 
implements IRecordingConve
                }
        }
 
+       private Date processParts(Long roomId, List<RecordingChunk> chunks, 
ProcessResultList logs, int N, List<PodPart> parts, Date pStart) throws 
IOException {
+               for (RecordingChunk chunk : chunks) {
+                       File chunkStream = getRecordingChunk(roomId, 
chunk.getStreamName());
+                       if (chunkStream.exists()) {
+                               String path = chunkStream.getCanonicalPath();
+                               /* CHECK FILE:
+                                * ffmpeg -i 
rec_316_stream_567_2013_08_28_11_51_45.webm -v error -f null file.null
+                                */
+                               String[] args = new String[] 
{getPathToFFMPEG(), "-y"
+                                               , "-i", path
+                                               , "-v", "error"
+                                               , "-f", "null"
+                                               , "file.null"};
+                               ProcessResult res = 
ProcessHelper.executeScript(String.format("Check chunk pod video_%s_%s", N, 
parts.size()), args, true);
+                               logs.add(res);
+                               if (!res.isWarn()) {
+                                       long diff = diff(chunk.isAudioOnly() ? 
chunk.getEnd() : chunk.getStart(), pStart);
+                                       PodPart.add(parts, diff);
+                                       if (!chunk.isAudioOnly()) {
+                                               parts.add(new PodPart(path, 
diff(chunk.getEnd(), chunk.getStart())));
+                                       }
+                                       pStart = chunk.getEnd();
+                               }
+                       } else {
+                               log.debug("Chunk stream doesn't exist: {}", 
chunkStream);
+                       }
+               }
+               return pStart;
+       }
+
+       private static List<String> getFinalArgs(int N, List<String> pods, File 
wav, int w) throws IOException {
+               List<String> args = new ArrayList<>();
+               if (N == 1) {
+                       args.add("-i");
+                       args.add(pods.get(0));
+                       args.add("-i");
+                       args.add(wav.getCanonicalPath());
+                       args.add("-map");
+                       args.add("0:v");
+               } else {
+                       /* Creating grid
+                        * ffmpeg -i top_l.mp4 -i top_r.mp4 -i bottom_l.mp4 -i 
bottom_r.mp4 -i audio.mp4 \
+                        *      -filter_complex 
"[0:v][1:v]hstack=inputs=2[t];[2:v][3:v]hstack=inputs=2[b];[t][b]vstack=inputs=2[v]"
 \
+                        *      -map "[v]" -map 4:a -c:a copy -shortest 
output.mp4
+                        */
+                       StringBuilder cols = new StringBuilder();
+                       StringBuilder rows = new StringBuilder();
+                       for (int i = 0, j = 0; i < N; ++i) {
+                               args.add("-i");
+                               args.add(pods.get(i));
+                               cols.append('[').append(i).append(":v]");
+                               if (i != 0 && (i + 1) % w == 0) {
+                                       cols.append("hstack=inputs=").append(w);
+                                       if (j == 0 && i == N - 1) {
+                                               cols.append("[v]");
+                                       } else {
+                                               
cols.append("[c").append(j).append("];");
+                                       }
+                                       rows.append("[c").append(j).append(']');
+                                       j++;
+                               }
+                               if (i == N - 1) {
+                                       if (j > 1) {
+                                               
rows.append("vstack=inputs=").append(j).append("[v]");
+                                       } else {
+                                               rows.setLength(0);
+                                       }
+                               }
+                       }
+                       args.add("-i");
+                       args.add(wav.getCanonicalPath());
+                       args.add("-filter_complex");
+                       args.add(cols.append(rows).toString());
+                       args.add("-map");
+                       args.add("[v]");
+               }
+               args.add("-map");
+               args.add(String.format("%s:a", N));
+               args.add("-qmax"); args.add("1");
+               args.add("-qmin"); args.add("1");
+               return args;
+       }
+
        private static class PodPart {
                final String file;
                final long duration;
diff --git 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
index 917b996..6abbf36 100644
--- 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
+++ 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/ldap/LdapLoginManager.java
@@ -33,8 +33,10 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.Reader;
+import java.util.AbstractMap;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Properties;
 
 import org.apache.directory.api.ldap.model.cursor.CursorException;
@@ -187,41 +189,9 @@ public class LdapLoginManager {
                        Entry entry = null;
                        switch (w.options.type) {
                                case SEARCHANDBIND:
-                               {
-                                       bindAdmin(w.conn, w.options);
-                                       Dn baseDn = new 
Dn(w.options.searchBase);
-                                       String searchQ = 
String.format(w.options.searchQuery, login);
-
-                                       try (EntryCursor cursor = new 
EntryCursorImpl(w.conn.search(
-                                                       new SearchRequestImpl()
-                                                               .setBase(baseDn)
-                                                               
.setFilter(searchQ)
-                                                               
.setScope(w.options.scope)
-                                                               
.addAttributes("*")
-                                                               
.setDerefAliases(w.options.derefMode))))
-                                       {
-                                               while (cursor.next()) {
-                                                       try {
-                                                               Entry e = 
cursor.get();
-                                                               if (userDn != 
null) {
-                                                                       
log.error("more than 1 user found in LDAP");
-                                                                       throw 
UNKNOWN;
-                                                               }
-                                                               userDn = 
e.getDn();
-                                                               if 
(w.options.useAdminForAttrs) {
-                                                                       entry = 
e;
-                                                               }
-                                                       } catch 
(CursorLdapReferralException cle) {
-                                                               
log.warn("Referral LDAP entry found, ignore it");
-                                                       }
-                                               }
-                                       }
-                                       if (userDn == null) {
-                                               log.error("NONE users found in 
LDAP");
-                                               throw BAD_CREDENTIALS;
-                                       }
-                                       w.conn.bind(userDn, passwd);
-                               }
+                                       Map.Entry<Dn, Entry> search = 
searchAndBind(w, login, passwd);
+                                       userDn = search.getKey();
+                                       entry = search.getValue();
                                        break;
                                case SIMPLEBIND:
                                        userDn = new 
Dn(String.format(w.options.userDn, login));
@@ -269,6 +239,45 @@ public class LdapLoginManager {
                return u;
        }
 
+       private static Map.Entry<Dn, Entry> searchAndBind(LdapWorker w, String 
login, String passwd) throws LdapException, CursorException, OmException, 
IOException {
+               Dn userDn = null;
+               Entry entry = null;
+               bindAdmin(w.conn, w.options);
+               Dn baseDn = new Dn(w.options.searchBase);
+               String searchQ = String.format(w.options.searchQuery, login);
+
+               try (EntryCursor cursor = new EntryCursorImpl(w.conn.search(
+                               new SearchRequestImpl()
+                                       .setBase(baseDn)
+                                       .setFilter(searchQ)
+                                       .setScope(w.options.scope)
+                                       .addAttributes("*")
+                                       .setDerefAliases(w.options.derefMode))))
+               {
+                       while (cursor.next()) {
+                               try {
+                                       Entry e = cursor.get();
+                                       if (userDn != null) {
+                                               log.error("more than 1 user 
found in LDAP");
+                                               throw UNKNOWN;
+                                       }
+                                       userDn = e.getDn();
+                                       if (w.options.useAdminForAttrs) {
+                                               entry = e;
+                                       }
+                               } catch (CursorLdapReferralException cle) {
+                                       log.warn("Referral LDAP entry found, 
ignore it");
+                               }
+                       }
+               }
+               if (userDn == null) {
+                       log.error("NONE users found in LDAP");
+                       throw BAD_CREDENTIALS;
+               }
+               w.conn.bind(userDn, passwd);
+               return new AbstractMap.SimpleEntry<>(userDn, entry);
+       }
+
        public void importUsers(Long domainId, boolean print) throws 
OmException {
                try (LdapWorker w = new LdapWorker(domainId)) {
                        bindAdmin(w.conn, w.options);
@@ -282,21 +291,7 @@ public class LdapLoginManager {
                                                .addAttributes("*")
                                                
.setDerefAliases(w.options.derefMode))))
                        {
-                               while (cursor.next()) {
-                                       try {
-                                               Entry e = cursor.get();
-                                               User u = 
userDao.getByLogin(getLogin(w.config, e), Type.ldap, domainId);
-                                               u = w.getUser(e, u);
-                                               if (print) {
-                                                       log.info("Going to 
import user: {}", u);
-                                               } else {
-                                                       userDao.update(u, null);
-                                                       log.info("User {}, was 
imported", u);
-                                               }
-                                       } catch (CursorLdapReferralException 
cle) {
-                                               log.warn("Referral LDAP entry 
found, ignore it");
-                                       }
-                               }
+                               importUsers(w, cursor, domainId, print);
                        }
                } catch (LdapAuthenticationException ae) {
                        log.error("Not authenticated.", ae);
@@ -309,6 +304,24 @@ public class LdapLoginManager {
                }
        }
 
+       private void importUsers(LdapWorker w, EntryCursor cursor, Long 
domainId, boolean print) throws LdapInvalidAttributeValueException, 
LdapException, CursorException, OmException, IOException {
+               while (cursor.next()) {
+                       try {
+                               Entry e = cursor.get();
+                               User u = userDao.getByLogin(getLogin(w.config, 
e), Type.ldap, domainId);
+                               u = w.getUser(e, u);
+                               if (print) {
+                                       log.info("Going to import user: {}", u);
+                               } else {
+                                       userDao.update(u, null);
+                                       log.info("User {}, was imported", u);
+                               }
+                       } catch (CursorLdapReferralException cle) {
+                               log.warn("Referral LDAP entry found, ignore 
it");
+                       }
+               }
+       }
+
        private class LdapWorker implements Closeable {
                LdapConnection conn = null;
                Properties config = new Properties();
@@ -391,24 +404,7 @@ public class LdapLoginManager {
                        } else if (GroupMode.QUERY == options.groupMode) {
                                Dn baseDn = new Dn(options.searchBase);
                                String searchQ = 
String.format(options.groupQuery, u.getLogin());
-
-                               try (EntryCursor cursor = new 
EntryCursorImpl(conn.search(
-                                               new SearchRequestImpl()
-                                                       .setBase(baseDn)
-                                                       .setFilter(searchQ)
-                                                       
.setScope(SearchScope.SUBTREE)
-                                                       .addAttributes("*")
-                                                       
.setDerefAliases(AliasDerefMode.DEREF_ALWAYS))))
-                               {
-                                       while (cursor.next()) {
-                                               try {
-                                                       Entry e = cursor.get();
-                                                       groups.add(e.getDn());
-                                               } catch 
(CursorLdapReferralException cle) {
-                                                       log.warn("Referral LDAP 
entry found, ignore it");
-                                               }
-                                       }
-                               }
+                               fillGroups(baseDn, searchQ, groups);
                        }
                        for (Dn g : groups) {
                                String name = g.getRdn().getValue();
@@ -436,6 +432,26 @@ public class LdapLoginManager {
                        return u;
                }
 
+               private void fillGroups(Dn baseDn, String searchQ, List<Dn> 
groups) throws IOException, LdapException, CursorException {
+                       try (EntryCursor cursor = new 
EntryCursorImpl(conn.search(
+                                       new SearchRequestImpl()
+                                               .setBase(baseDn)
+                                               .setFilter(searchQ)
+                                               .setScope(SearchScope.SUBTREE)
+                                               .addAttributes("*")
+                                               
.setDerefAliases(AliasDerefMode.DEREF_ALWAYS))))
+                       {
+                               while (cursor.next()) {
+                                       try {
+                                               Entry e = cursor.get();
+                                               groups.add(e.getDn());
+                                       } catch (CursorLdapReferralException 
cle) {
+                                               log.warn("Referral LDAP entry 
found, ignore it");
+                                       }
+                               }
+                       }
+               }
+
                @Override
                public void close() throws IOException {
                        if (conn != null) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/AudioRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/AudioRightIcon.java
index 1b8e305..e51806e 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/AudioRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/AudioRightIcon.java
@@ -30,6 +30,6 @@ public class AudioRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.audio.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.audio.%s", isSelf() 
? "request" : (hasRight() ? "revoke" : "grant")));
        }
 }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ExclusiveRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ExclusiveRightIcon.java
index aa8e9ee..89b2862 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ExclusiveRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ExclusiveRightIcon.java
@@ -30,6 +30,6 @@ public class ExclusiveRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.exclusive.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.exclusive.%s", 
isSelf() ? "request" : (hasRight() ? "revoke" : "grant")));
        }
 }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ModeratorRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ModeratorRightIcon.java
index 1fce848..ca57206 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ModeratorRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ModeratorRightIcon.java
@@ -30,6 +30,6 @@ public class ModeratorRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.moderator.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.moderator.%s", 
isSelf() ? "request" : (hasRight() ? "revoke" : "grant")));
        }
 }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/PresenterRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/PresenterRightIcon.java
index ff94793..2b68dac 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/PresenterRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/PresenterRightIcon.java
@@ -32,7 +32,7 @@ public class PresenterRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.presenter.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.presenter.%s", 
isSelf() ? "request" : (hasRight() ? "revoke" : "grant")));
        }
 
        @Override
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/RemoteControlRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/RemoteControlRightIcon.java
index 7c4054e..dbbacad 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/RemoteControlRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/RemoteControlRightIcon.java
@@ -30,7 +30,7 @@ public class RemoteControlRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.remote.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.remote.%s", 
isSelf() ? "request" : (hasRight() ? "revoke" : "grant")));
        }
 
        @Override
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ScreenShareRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ScreenShareRightIcon.java
index 1d8c47b..f212ca9 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ScreenShareRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/ScreenShareRightIcon.java
@@ -30,7 +30,7 @@ public class ScreenShareRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.share.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.share.%s", isSelf() 
? "request" : (hasRight() ? "revoke" : "grant")));
        }
 
        @Override
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/VideoRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/VideoRightIcon.java
index 2049b51..4fe7049 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/VideoRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/VideoRightIcon.java
@@ -30,7 +30,7 @@ public class VideoRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.video.%s", 
(isSelf() ? "request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.video.%s", isSelf() 
? "request" : (hasRight() ? "revoke" : "grant")));
        }
 
        @Override
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/WhiteboardRightIcon.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/WhiteboardRightIcon.java
index f277270..6fc1977 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/WhiteboardRightIcon.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/icon/right/WhiteboardRightIcon.java
@@ -33,7 +33,7 @@ public class WhiteboardRightIcon extends RoomRightIcon {
 
        @Override
        protected String getTitle() {
-               return getString(String.format("ulist.right.wb.%s", (isSelf() ? 
"request" : (hasRight() ? "revoke" : "grant"))));
+               return getString(String.format("ulist.right.wb.%s", isSelf() ? 
"request" : (hasRight() ? "revoke" : "grant")));
        }
 
        @Override

Reply via email to