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 694d0bb31 [OPENMEETINGS-2733] some Sonar issues are addressed
694d0bb31 is described below

commit 694d0bb31f8bb260be2542819c319b6bd8537208
Author: Maxim Solodovnik <solomax...@gmail.com>
AuthorDate: Wed May 18 15:15:03 2022 +0700

    [OPENMEETINGS-2733] some Sonar issues are addressed
---
 .../apache/openmeetings/core/remote/KStream.java   |  4 +-
 .../openmeetings/core/remote/KurentoHandler.java   |  3 +-
 .../core/util/ChatWebSocketHelper.java             | 17 ++--
 .../openmeetings/core/util/WebSocketHelper.java    | 27 +++----
 .../db/dao/basic/ConfigurationDao.java             | 22 ++----
 .../openmeetings/db/dao/file/FileItemDao.java      |  6 +-
 .../openmeetings/db/dao/record/RecordingDao.java   |  2 +-
 .../apache/openmeetings/db/dto/user/OAuthUser.java |  6 +-
 .../openmeetings/db/entity/basic/Client.java       |  6 +-
 .../openmeetings/db/entity/file/BaseFileItem.java  |  3 +-
 .../apache/openmeetings/db/mapper/RoomMapper.java  |  3 +-
 .../openmeetings/backup/converter/WbConverter.java | 16 ++--
 .../calendar/caldav/AppointmentManager.java        | 21 ++---
 .../service/room/InvitationManager.java            |  3 +-
 .../web/admin/connection/ConnectionsPanel.java     |  6 +-
 .../apache/openmeetings/web/app/Application.java   |  3 +-
 .../apache/openmeetings/web/common/MainPanel.java  |  4 +-
 .../common/datetime/AbstractOmDateTimePicker.java  |  8 +-
 .../openmeetings/web/common/tree/FolderPanel.java  | 23 +++---
 .../web/common/tree/OmTreeProvider.java            |  3 +-
 .../web/pages/auth/ForgetPasswordDialog.java       | 24 +++---
 .../web/pages/auth/RegisterDialog.java             |  4 +-
 .../apache/openmeetings/web/room/RoomPanel.java    | 32 ++++----
 .../web/room/activities/ActivitiesPanel.java       | 86 ++++++++++-----------
 .../openmeetings/web/room/activities/Activity.java | 22 +++---
 .../web/room/menu/RoomInvitationForm.java          | 18 ++---
 .../openmeetings/web/room/wb/UndoObject.java       |  6 +-
 .../apache/openmeetings/web/room/wb/WbPanel.java   | 19 +++--
 .../web/room/wb/WbWebSocketHelper.java             | 18 ++---
 .../web/user/calendar/AppointmentDialog.java       | 16 ++--
 .../web/user/calendar/CalendarDialog.java          | 67 ++++++++--------
 .../web/user/profile/MessagesContactsPanel.java    |  2 +
 .../web/user/record/RecordingsPanel.java           |  6 +-
 .../openmeetings/web/user/record/VideoInfo.java    |  3 +-
 .../web/user/rooms/RoomEnterBehavior.java          |  2 +-
 .../openmeetings/web/util/OmUrlFragment.java       | 90 ++++++++++++----------
 .../openmeetings/AbstractWicketTesterTest.java     |  2 +-
 .../apache/openmeetings/backup/TestImportUser.java |  5 +-
 .../org/apache/openmeetings/web/TestMainAreas.java | 66 ++++++++--------
 .../webservice/AbstractWebServiceTest.java         |  2 +-
 .../openmeetings/webservice/UserWebService.java    |  4 +-
 .../util/AppointmentListMessageBodyWriter.java     |  3 +-
 42 files changed, 319 insertions(+), 364 deletions(-)

diff --git 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java
 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java
index c74b3483c..52462c8eb 100644
--- 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java
+++ 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KStream.java
@@ -259,9 +259,9 @@ public class KStream extends AbstractStream implements 
ISipCallbacks {
                final BaseRtpEndpoint endpoint = getEndpointForUser(sid, uid);
                final String sdpAnswer = endpoint.processOffer(sdpOffer);
 
-               if (endpoint instanceof WebRtcEndpoint) {
+               if (endpoint instanceof WebRtcEndpoint rtcEndpoint) {
                        log.debug("gather candidates, sid {}, uid {}", sid, 
uid);
-                       ((WebRtcEndpoint)endpoint).gatherCandidates(); // this 
one might throw Exception
+                       rtcEndpoint.gatherCandidates(); // this one might throw 
Exception
                }
                log.trace("USER {}: SdpAnswer is {}", this.uid, sdpAnswer);
                kHandler.sendClient(sid, newKurentoMsg()
diff --git 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
index 22c942fdc..aa4d6af87 100644
--- 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
+++ 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/KurentoHandler.java
@@ -466,9 +466,8 @@ public class KurentoHandler {
                                        log.warn("Invalid MediaPipeline {} 
detected, will be dropped, tags: {}", pipe.getId(), tags);
                                        pipe.release();
                                }, objCheckTimeout, MILLISECONDS);
-                       } else if (evt.getObject() instanceof Endpoint) {
+                       } else if (evt.getObject() instanceof Endpoint 
curPoint) {
                                // endpoint created
-                               Endpoint curPoint = (Endpoint)evt.getObject();
                                final String eoid = curPoint.getId();
                                Class<? extends Endpoint> clazz = null;
                                if (curPoint instanceof WebRtcEndpoint) {
diff --git 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/ChatWebSocketHelper.java
 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/ChatWebSocketHelper.java
index 33d3a8ef2..bbe8dc445 100644
--- 
a/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/ChatWebSocketHelper.java
+++ 
b/openmeetings-core/src/main/java/org/apache/openmeetings/core/util/ChatWebSocketHelper.java
@@ -90,16 +90,13 @@ public class ChatWebSocketHelper {
        }
 
        public static boolean send(IClusterWsMessage msg) {
-               if (msg instanceof WsMessageChat) {
-                       if (msg instanceof WsMessageChat2User) {
-                               WsMessageChat2User m = (WsMessageChat2User)msg;
-                               sendUser(m.getUserId(), m.getChatMessage(), 
m.getMsg(), false);
-                       } else if (msg instanceof WsMessageChat2All) {
-                               WsMessageChat2All m = (WsMessageChat2All)msg;
-                               sendAll(m.getChatMessage(), m.getMsg(), false);
-                       } else if (msg instanceof WsMessageChat) {
-                               WsMessageChat m = (WsMessageChat)msg;
-                               sendRoom(m.getChatMessage(), m.getMsg(), false);
+               if (msg instanceof WsMessageChat chatMsg) {
+                       if (msg instanceof WsMessageChat2User userMsg) {
+                               sendUser(userMsg.getUserId(), 
userMsg.getChatMessage(), userMsg.getMsg(), false);
+                       } else if (msg instanceof WsMessageChat2All allMsg) {
+                               sendAll(allMsg.getChatMessage(), 
allMsg.getMsg(), false);
+                       } else {
+                               sendRoom(chatMsg.getChatMessage(), 
chatMsg.getMsg(), false);
                        }
                        return true;
                }
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 ee5b4c6b8..fa40ac0b9 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
@@ -88,7 +88,7 @@ public class WebSocketHelper {
        }
 
        public static void sendClient(final IWsClient omClient, final 
RoomMessage m) {
-               log.trace("Sending WebSocket message to client: {} {}", 
m.getType(), m instanceof TextRoomMessage ? ((TextRoomMessage)m).getText() : 
"");
+               log.trace("Sending WebSocket message to client: {} {}", 
m.getType(), m instanceof TextRoomMessage txtMsg ? txtMsg.getText() : "");
                sendClient(omClient, c -> {
                        try {
                                c.sendMessage(m);
@@ -116,19 +116,16 @@ public class WebSocketHelper {
        }
 
        public static boolean send(IClusterWsMessage msg) {
-               if (msg instanceof WsMessageRoomMsg) {
-                       sendRoom(((WsMessageRoomMsg)msg).msg(), false);
-               } else if (msg instanceof WsMessageRoomOthers) {
-                       WsMessageRoomOthers m = (WsMessageRoomOthers)msg;
-                       sendRoomOthers(m.getRoomId(), m.getUid(), m.getMsg(), 
false);
-               } else if (msg instanceof WsMessageRoom) {
-                       WsMessageRoom m = (WsMessageRoom)msg;
-                       sendRoom(m.getRoomId(), m.getMsg(), false);
-               } else if (msg instanceof WsMessageUser) {
-                       WsMessageUser m = (WsMessageUser)msg;
-                       sendUser(m.getUserId(), m.getMsg(), null, false);
-               } else if (msg instanceof WsMessageAll) {
-                       sendAll(((WsMessageAll)msg).msg(), false);
+               if (msg instanceof WsMessageRoomMsg msgRoom) {
+                       sendRoom(msgRoom.msg(), false);
+               } else if (msg instanceof WsMessageRoomOthers msgRoomOthers) {
+                       sendRoomOthers(msgRoomOthers.getRoomId(), 
msgRoomOthers.getUid(), msgRoomOthers.getMsg(), false);
+               } else if (msg instanceof WsMessageRoom roomMsg) {
+                       sendRoom(roomMsg.getRoomId(), roomMsg.getMsg(), false);
+               } else if (msg instanceof WsMessageUser msgUser) {
+                       sendUser(msgUser.getUserId(), msgUser.getMsg(), null, 
false);
+               } else if (msg instanceof WsMessageAll msgAll) {
+                       sendAll(msgAll.msg(), false);
                }
                return true;
        }
@@ -141,7 +138,7 @@ public class WebSocketHelper {
                if (publish) {
                        publish(new WsMessageRoomMsg(m));
                }
-               log.trace("Sending WebSocket message to room: {} {}", 
m.getType(), m instanceof TextRoomMessage ? ((TextRoomMessage)m).getText() : 
"");
+               log.trace("Sending WebSocket message to room: {} {}", 
m.getType(), m instanceof TextRoomMessage txtMsg ? txtMsg.getText() : "");
                sendRoom(m.getRoomId(), (t, c) -> t.sendMessage(m), 
alwaysTrue());
        }
 
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
index e2692ef12..02c13e2cb 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ConfigurationDao.java
@@ -94,8 +94,8 @@ public class ConfigurationDao implements 
IDataProviderDao<Configuration> {
        public void updateClusterAddresses(String addresses) throws 
UnknownHostException {
                OpenJPAConfiguration cfg = 
((OpenJPAEntityManagerSPI)OpenJPAPersistence.cast(em)).getConfiguration();
                RemoteCommitProvider prov = 
cfg.getRemoteCommitEventManager().getRemoteCommitProvider();
-               if (prov instanceof TCPRemoteCommitProvider) {
-                       ((TCPRemoteCommitProvider)prov).setAddresses(addresses);
+               if (prov instanceof TCPRemoteCommitProvider tcpProv) {
+                       tcpProv.setAddresses(addresses);
                }
        }
 
@@ -312,20 +312,12 @@ public class ConfigurationDao implements 
IDataProviderDao<Configuration> {
                                        , CONFIG_CSP_MEDIA, CONFIG_CSP_SCRIPT, 
CONFIG_CSP_STYLE, CONFIG_CSP_ENABLED:
                                updateCsp();
                                break;
-                       case CONFIG_SMTP_SERVER:
-                       case CONFIG_SMTP_PORT:
-                       case CONFIG_SMTP_SYSTEM_EMAIL:
-                       case CONFIG_SMTP_USER:
-                       case CONFIG_SMTP_PASS:
-                       case CONFIG_SMTP_TLS:
-                       case CONFIG_SMTP_SSL:
-                       case CONFIG_REPLY_TO_ORGANIZER:
-                       case CONFIG_SMTP_TIMEOUT_CON:
-                       case CONFIG_SMTP_TIMEOUT:
+                       case CONFIG_SMTP_SERVER, CONFIG_SMTP_PORT, 
CONFIG_SMTP_SYSTEM_EMAIL, CONFIG_SMTP_USER
+                                       , CONFIG_SMTP_PASS, CONFIG_SMTP_TLS, 
CONFIG_SMTP_SSL, CONFIG_REPLY_TO_ORGANIZER
+                                       , CONFIG_SMTP_TIMEOUT_CON, 
CONFIG_SMTP_TIMEOUT:
                                reloadMailSettings();
                                break;
-                       case CONFIG_APPOINTMENT_REMINDER_MINUTES:
-                       case CONFIG_APPOINTMENT_PRE_START_MINUTES:
+                       case CONFIG_APPOINTMENT_REMINDER_MINUTES, 
CONFIG_APPOINTMENT_PRE_START_MINUTES:
                                reloadAppointmentSettings();
                                break;
                        case CONFIG_RECORDING_ENABLED:
@@ -334,6 +326,8 @@ public class ConfigurationDao implements 
IDataProviderDao<Configuration> {
                        case CONFIG_THEME:
                                reloadTheme();
                                break;
+                       default:
+                               break;
                }
                return entity;
        }
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 042216340..f5928ccda 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
@@ -97,7 +97,7 @@ public class FileItemDao extends BaseFileItemDao {
        @Override
        public FileItem get(Long id) {
                BaseFileItem bf = super.get(id);
-               return bf instanceof FileItem ? (FileItem)bf : null;
+               return bf instanceof FileItem fi ? fi : null;
        }
 
        public FileItem get(String externalId, String externalType) {
@@ -235,9 +235,7 @@ public class FileItemDao extends BaseFileItemDao {
                        if (f.exists()) {
                                File base = OmFileHelper.getUploadFilesDir();
                                switch (f.getType()) {
-                                       case IMAGE:
-                                       case PRESENTATION:
-                                       case VIDEO:
+                                       case IMAGE, PRESENTATION, VIDEO:
                                                File tFolder = new File(base, 
f.getHash());
 
                                                if (tFolder.exists()) {
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
index 3caedf995..b45278781 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/record/RecordingDao.java
@@ -58,7 +58,7 @@ public class RecordingDao extends BaseFileItemDao {
        @Override
        public Recording get(Long id) {
                BaseFileItem bf = super.get(id);
-               return bf instanceof Recording ? (Recording)bf : null;
+               return bf instanceof Recording rec ? rec : null;
        }
 
        public List<Recording> getByExternalUser(String externalId, String 
externalType) {
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
index ed055b885..37775c75d 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/OAuthUser.java
@@ -106,8 +106,7 @@ public class OAuthUser implements Serializable {
                // will only check 1 additional level
                for (String key : json.keySet()) {
                        Object o = json.get(key);
-                       if (o instanceof JSONArray) {
-                               JSONArray ja = (JSONArray)o;
+                       if (o instanceof JSONArray ja) {
                                //Assuming here array consist of objects
                                for (int i = 0; i < ja.length(); ++i) {
                                        JSONObject jao = ja.getJSONObject(i);
@@ -116,8 +115,7 @@ public class OAuthUser implements Serializable {
                                                return res;
                                        }
                                }
-                       } else if (o instanceof JSONObject) {
-                               JSONObject jo = (JSONObject)o;
+                       } else if (o instanceof JSONObject jo) {
                                JSONObject res = getJSON(jo, prop);
                                if (res != null) {
                                        return res;
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Client.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Client.java
index 06082fd23..6d5d02090 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Client.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Client.java
@@ -196,8 +196,7 @@ public class Client implements IDataProviderEntity, 
IWsClient {
        public Client set(Activity a) {
                activities.add(a);
                switch (a) {
-                       case VIDEO:
-                       case AUDIO:
+                       case VIDEO, AUDIO:
                                if (hasActivity(Activity.AUDIO) && 
hasActivity(Activity.VIDEO)) {
                                        activities.add(Activity.AUDIO_VIDEO);
                                }
@@ -214,8 +213,7 @@ public class Client implements IDataProviderEntity, 
IWsClient {
        public Client remove(Activity a) {
                activities.remove(a);
                switch (a) {
-                       case VIDEO:
-                       case AUDIO:
+                       case VIDEO, AUDIO:
                                activities.remove(Activity.AUDIO_VIDEO);
                                break;
                        case AUDIO_VIDEO:
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
index 85035e83f..ccab06e80 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
@@ -335,8 +335,7 @@ public abstract class BaseFileItem extends HistoricalEntity 
{
                                                f = new File(d, 
String.format(FILE_NAME_FMT, getHash(), ext == null ? EXTENSION_PDF : ext));
                                        }
                                        break;
-                               case POLL_CHART:
-                               case FOLDER:
+                               case POLL_CHART, FOLDER:
                                default:
                        }
                }
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/mapper/RoomMapper.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/mapper/RoomMapper.java
index 250b21d8f..51020af71 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/mapper/RoomMapper.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/mapper/RoomMapper.java
@@ -132,8 +132,7 @@ public class RoomMapper {
                                        i.setValidFrom(new 
Date(SDF.parse(dto.getValidFrom()).getTime() - (5 * 60 * 1000)));
                                        
i.setValidTo(SDF.parse(dto.getValidTo()));
                                        break;
-                               case ENDLESS:
-                               case ONE_TIME:
+                               case ENDLESS, ONE_TIME:
                                default:
                                        break;
                        }
diff --git 
a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
 
b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
index c0d212425..ed7c8fbd2 100644
--- 
a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
+++ 
b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
@@ -161,10 +161,10 @@ public class WbConverter {
 
        private static int getInt(List<?> props, int idx) {
                Object o = props.get(idx);
-               if (o instanceof Number) {
-                       return ((Number) o).intValue();
-               } else if (o instanceof String) {
-                       return NumberUtils.toInt((String)o);
+               if (o instanceof Number num) {
+                       return num.intValue();
+               } else if (o instanceof String str) {
+                       return NumberUtils.toInt(str);
                }
                return 0;
        }
@@ -275,12 +275,10 @@ public class WbConverter {
                                        case "paint":
                                                processPath(wb, props);
                                                break;
-                                       case "line":
-                                       case "uline":
+                                       case "line", "uline":
                                                processLine(wb, props);
                                                break;
-                                       case "rectangle":
-                                       case "drawarrow": // will replace with 
rectangle
+                                       case "rectangle", "drawarrow": // 
"drawarrow" will be replaced with rectangle
                                                add(wb, processRect(wb, props));
                                                break;
                                        case "ellipse":
@@ -298,6 +296,8 @@ public class WbConverter {
                                        case "flv":
                                                processVid(wb, props);
                                                break;
+                                       default:
+                                               break;
                                }
                        }
                }
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 30b91aed6..5c858eade 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
@@ -364,8 +364,7 @@ public class AppointmentManager {
 
                                                if (p != null) {
                                                        for (Object o : 
(Collection<?>) p.getValue()) {
-                                                               if (o 
instanceof Element) {
-                                                                       Element 
e = (Element) o;
+                                                               if (o 
instanceof Element e) {
                                                                        String 
name = DomUtil.getAttribute(e, "name", null);
                                                                        if 
("VEVENT".equals(name)) {
                                                                                
isVevent = true;
@@ -414,8 +413,7 @@ public class AppointmentManager {
 
                if (property != null) {
                        for (Object o : (Collection<?>) property.getValue()) {
-                               if (o instanceof Element) {
-                                       Element e = (Element) o;
+                               if (o instanceof Element e) {
                                        value = DomUtil.getTextTrim(e);
                                        break;
                                }
@@ -437,11 +435,8 @@ public class AppointmentManager {
                        DavPropertyName calProp = 
DavPropertyName.create("calendar", CalDAVConstants.NAMESPACE_CALDAV);
 
                        for (Object o : (Collection<?>) 
resourcetype.getValue()) {
-                               if (o instanceof Element) {
-                                       Element e = (Element) o;
-                                       if 
(e.getLocalName().equals(calProp.getName())) {
-                                               isCalendar = true;
-                                       }
+                               if (o instanceof Element e && 
e.getLocalName().equals(calProp.getName())) {
+                                       isCalendar = true;
                                }
                        }
                }
@@ -536,9 +531,7 @@ public class AppointmentManager {
                        String path = ensureTrailingSlash(calendar.getHref());
 
                        switch (type) {
-                               case WEBDAV_SYNC:
-                               case CTAG:
-                               case ETAG:
+                               case WEBDAV_SYNC, CTAG, ETAG:
                                        calendarHandler = new 
EtagsHandler(path, calendar, client, context, appointmentDao, utils);
                                        break;
                                default:
@@ -570,9 +563,7 @@ public class AppointmentManager {
                        String path = calendar.getHref();
 
                        switch (type) {
-                               case WEBDAV_SYNC:
-                               case CTAG:
-                               case ETAG:
+                               case WEBDAV_SYNC, CTAG, ETAG:
                                        calendarHandler = new 
EtagsHandler(path, calendar, client, context, appointmentDao, utils);
                                        break;
                                default:
diff --git 
a/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
 
b/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
index 0ab0109f5..3ff8edfdd 100644
--- 
a/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
+++ 
b/openmeetings-service/src/main/java/org/apache/openmeetings/service/room/InvitationManager.java
@@ -202,8 +202,7 @@ public class InvitationManager implements 
IInvitationManager {
                                invitation.setValidFrom(allowedStart(mmStart));
                                invitation.setValidTo(mmEnd);
                                break;
-                       case ENDLESS:
-                       case ONE_TIME:
+                       case ENDLESS, ONE_TIME:
                        default:
                                break;
                }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
index 231652b82..c630a6454 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
@@ -101,8 +101,7 @@ public class ConnectionsPanel extends AdminBasePanel {
 
                        @Override
                        protected void populateItem(final 
Item<IDataProviderEntity> item) {
-                               if (item.getModelObject() instanceof 
KStreamDto) {
-                                       KStreamDto kStream = 
(KStreamDto)item.getModelObject();
+                               if (item.getModelObject() instanceof KStreamDto 
kStream) {
                                        item.add(new Label("type", 
kStream.getType() + " " + kStream.getStreamType()));
                                        item.add(new Label("login", 
kStream.getUid()));
                                        item.add(new Label("since", 
getDateFormat().format(kStream.getConnectedSince())));
@@ -110,8 +109,7 @@ public class ConnectionsPanel extends AdminBasePanel {
                                        item.add(new Label("server", ""));
                                        item.add(new Label("kick", ""));
                                }
-                               if (item.getModelObject() instanceof Client) {
-                                       Client c = 
(Client)item.getModelObject();
+                               if (item.getModelObject() instanceof Client c) {
                                        item.add(new Label("type", "html5"));
                                        item.add(new Label("login", 
c.getUser().getLogin()));
                                        item.add(new Label("since", 
getDateFormat().format(c.getConnectedSince())));
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 a2a545aad..3e4283938 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
@@ -287,8 +287,7 @@ public class Application extends 
AuthenticatedWebApplication implements IApplica
                        @Override
                        public void onEndRequest(RequestCycle cycle) {
                                Response resp = cycle.getResponse();
-                               if (resp instanceof WebResponse) {
-                                       WebResponse wresp = (WebResponse)resp;
+                               if (resp instanceof WebResponse wresp) {
                                        if (wresp.isHeaderSupported()) {
                                                
wresp.setHeader("X-XSS-Protection", "1; mode=block");
                                                
wresp.setHeader("Strict-Transport-Security", "max-age=31536000; 
includeSubDomains; preload");
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
index 6745a5cf7..ca2132bd2 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
@@ -406,8 +406,8 @@ public class MainPanel extends Panel {
 
        private BasePanel getCurrentPanel() {
                Component prev = contents.get(CHILD_ID);
-               if (prev instanceof BasePanel) {
-                       return (BasePanel)prev;
+               if (prev instanceof BasePanel basePrev) {
+                       return basePrev;
                }
                return null;
        }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/datetime/AbstractOmDateTimePicker.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/datetime/AbstractOmDateTimePicker.java
index c2c382e66..de23bd14b 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/datetime/AbstractOmDateTimePicker.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/datetime/AbstractOmDateTimePicker.java
@@ -137,16 +137,16 @@ public abstract class AbstractOmDateTimePicker<T extends 
Serializable> extends F
 
        public static String getDateTimeFormat(Locale loc) {
                DateFormat fmt = 
DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, loc);
-               if (fmt instanceof SimpleDateFormat) {
-                       return ((SimpleDateFormat)fmt).toPattern();
+               if (fmt instanceof SimpleDateFormat sfmt) {
+                       return sfmt.toPattern();
                }
                return DEFAULT_DATE_TIME_FORMAT;
        }
 
        public static String getDateFormat() {
                DateFormat fmt = DateFormat.getDateInstance(DateFormat.SHORT, 
Session.get().getLocale());
-               if (fmt instanceof SimpleDateFormat) {
-                       return ((SimpleDateFormat)fmt).toPattern();
+               if (fmt instanceof SimpleDateFormat sfmt) {
+                       return sfmt.toPattern();
                }
                return DEFAULT_DATE_FORMAT;
        }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
index e507ac416..5909d3bb7 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
@@ -178,16 +178,6 @@ public class FolderPanel extends Panel implements 
IDraggableListener, IDroppable
                }
        }
 
-       private void setVideoStyle(final BaseFileItem f, StringBuilder style) {
-               style.append("recording ");
-               if (f instanceof Recording) {
-                       Status st = ((Recording)f).getStatus();
-                       if (Status.RECORDING == st || Status.CONVERTING == st) {
-                               style.append("processing ");
-                       }
-               }
-       }
-
        @Override
        public boolean isStopEventEnabled() {
                return false;
@@ -242,6 +232,16 @@ public class FolderPanel extends Panel implements 
IDraggableListener, IDroppable
        private class StyleBehavior extends Behavior {
                private static final long serialVersionUID = 1L;
 
+               private void setVideoStyle(final BaseFileItem f, StringBuilder 
style) {
+                       style.append("recording ");
+                       if (f instanceof Recording rec) {
+                               Status st = rec.getStatus();
+                               if (Status.RECORDING == st || Status.CONVERTING 
== st) {
+                                       style.append("processing ");
+                               }
+                       }
+               }
+
                private CharSequence getItemStyle() {
                        final BaseFileItem f = 
(BaseFileItem)getDefaultModelObject();
                        boolean open = State.EXPANDED == 
treePanel.tree.getState(f);
@@ -265,8 +265,7 @@ public class FolderPanel extends Panel implements 
IDraggableListener, IDroppable
                                        case WML_FILE:
                                                
style.append(CSS_CLASS_FILE).append("wml ");
                                                break;
-                                       case VIDEO:
-                                       case RECORDING:
+                                       case VIDEO, RECORDING:
                                                setVideoStyle(f, style);
                                                break;
                                        case PRESENTATION:
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
index 1517e47e4..fde3e082e 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
@@ -137,8 +137,7 @@ public class OmTreeProvider implements 
ITreeProvider<BaseFileItem> {
 
        public List<BaseFileItem> getByParent(BaseFileItem node, Long id) {
                List<BaseFileItem> list = new ArrayList<>();
-               if (node instanceof Recording) {
-                       Recording rec = (Recording)node;
+               if (node instanceof Recording rec) {
                        List<Recording> recList;
                        if (id == null) {
                                if (node.getOwnerId() == null) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
index 53a20447f..baf1e8440 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
@@ -68,7 +68,7 @@ public class ForgetPasswordDialog extends Modal<String> {
        private final NotificationPanel feedback = new 
NotificationPanel("feedback");
        private final IValidator<String> emailValidator = 
RfcCompliantEmailAddressValidator.getInstance();
        private final RequiredTextField<String> name = new 
RequiredTextField<>("name", Model.of((String)null));
-       private final RadioGroup<Type> rg = new RadioGroup<>("type", 
Model.of(Type.email));
+       private final RadioGroup<Type> rg = new RadioGroup<>("type", 
Model.of(Type.EMAIL));
        private final WebMarkupContainer label = new 
WebMarkupContainer("label");
        private final Captcha captcha = new Captcha("captcha");
        private ForgetPasswordForm form = new ForgetPasswordForm("form");
@@ -82,8 +82,8 @@ public class ForgetPasswordDialog extends Modal<String> {
        private MailHandler mailHandler;
 
        enum Type {
-               email
-               , login
+               EMAIL
+               , LOGIN
        }
 
        public ForgetPasswordDialog(String id, Modal<String> forgetInfoDialog) {
@@ -106,12 +106,12 @@ public class ForgetPasswordDialog extends Modal<String> {
        }
 
        private void updateLabel(IPartialPageRequestHandler handler) {
-               IModel<String> lbl = new ResourceModel(rg.getModelObject() == 
Type.email ? "315" : "316");
+               IModel<String> lbl = new ResourceModel(rg.getModelObject() == 
Type.EMAIL ? "315" : "316");
                name.setLabel(lbl);
-               name.add(AttributeModifier.replace("type", rg.getModelObject() 
== Type.email ? "email" : "text"));
+               name.add(AttributeModifier.replace("type", rg.getModelObject() 
== Type.EMAIL ? "email" : "text"));
                name.add(AttributeModifier.replace("title", lbl));
                name.add(AttributeModifier.replace("placeholder", lbl));
-               label.add(AttributeModifier.replace("class", 
rg.getModelObject() == Type.email ? "fa fa-at" : "fa fa-user"));
+               label.add(AttributeModifier.replace("class", 
rg.getModelObject() == Type.EMAIL ? "fa fa-at" : "fa fa-user"));
                if (handler != null) {
                        handler.add(name, label);
                }
@@ -120,7 +120,7 @@ public class ForgetPasswordDialog extends Modal<String> {
        @Override
        public Modal<String> show(IPartialPageRequestHandler handler) {
                name.setModelObject(null);
-               rg.setModelObject(Type.email);
+               rg.setModelObject(Type.EMAIL);
                captcha.refresh(handler);
                handler.add(rg);
                updateLabel(handler);
@@ -155,8 +155,8 @@ public class ForgetPasswordDialog extends Modal<String> {
                        add(label.setOutputMarkupId(true));
                        add(name.setOutputMarkupId(true));
                        add(captcha);
-                       add(rg.add(new Radio<>("email", Model.of(Type.email)))
-                                       .add(new Radio<>("login", 
Model.of(Type.login)))
+                       add(rg.add(new Radio<>("email", Model.of(Type.EMAIL)))
+                                       .add(new Radio<>("login", 
Model.of(Type.LOGIN)))
                                        .setOutputMarkupId(true));
                        rg.add(new AjaxFormChoiceComponentUpdatingBehavior() {
                                private static final long serialVersionUID = 1L;
@@ -188,13 +188,13 @@ public class ForgetPasswordDialog extends Modal<String> {
                        if (n != null) {
                                IValidatable<String> val = new Validatable<>(n);
                                Type type = rg.getConvertedInput();
-                               if (type == Type.email) {
+                               if (type == Type.EMAIL) {
                                        emailValidator.validate(val);
                                        if (!val.isValid()) {
                                                error(getString("234"));
                                        }
                                }
-                               if (type == Type.login && n.length() < 
getMinLoginLength()) {
+                               if (type == Type.LOGIN && n.length() < 
getMinLoginLength()) {
                                        error(getString("104"));
                                }
                        }
@@ -217,7 +217,7 @@ public class ForgetPasswordDialog extends Modal<String> {
                private void onSubmit(AjaxRequestTarget target) {
                        String nm = name.getModelObject();
                        Type type = rg.getModelObject();
-                       resetUser(type == Type.email ? nm : "", type == 
Type.login ? nm : "");
+                       resetUser(type == Type.EMAIL ? nm : "", type == 
Type.LOGIN ? nm : "");
                        wasReset = true;
                        ForgetPasswordDialog.this.close(target);
                }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
index 57d39fc5e..f026a54a8 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
@@ -248,8 +248,8 @@ public class RegisterDialog extends Modal<String> {
                        try {
                                Object o = userManager.registerUser(login, 
password, lastName
                                                , firstName, email, country, 
lang, tzModel.getObject());
-                               if (o instanceof String) {
-                                       
registerInfo.setModelObject(getString((String)o));
+                               if (o instanceof String str) {
+                                       
registerInfo.setModelObject(getString(str));
                                        target.add(registerInfo.get("content"));
                                }
                        } catch (Exception e) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index df46801c5..821ab685d 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -314,8 +314,7 @@ public class RoomPanel extends BasePanel {
                                @Override
                                public void onDrop(AjaxRequestTarget target, 
Component component) {
                                        Object o = 
component.getDefaultModelObject();
-                                       if (wb.isVisible() && o instanceof 
BaseFileItem) {
-                                               BaseFileItem f = 
(BaseFileItem)o;
+                                       if (wb.isVisible() && o instanceof 
BaseFileItem f) {
                                                if 
(sidebar.getFilesPanel().isSelected(f)) {
                                                        for (Entry<String, 
BaseFileItem> e : sidebar.getFilesPanel().getSelected().entrySet()) {
                                                                
wb.sendFileToWb(e.getValue(), false);
@@ -423,8 +422,7 @@ public class RoomPanel extends BasePanel {
                Client curClient = getClient();
                if (curClient != null && event.getPayload() instanceof 
WebSocketPushPayload) {
                        WebSocketPushPayload wsEvent = (WebSocketPushPayload) 
event.getPayload();
-                       if (wsEvent.getMessage() instanceof RoomMessage) {
-                               RoomMessage m = 
(RoomMessage)wsEvent.getMessage();
+                       if (wsEvent.getMessage() instanceof RoomMessage m) {
                                IPartialPageRequestHandler handler = 
wsEvent.getHandler();
                                switch (m.getType()) {
                                        case POLL_CREATED:
@@ -454,35 +452,35 @@ public class RoomPanel extends BasePanel {
                                                roomClosed.show(handler);
                                                break;
                                        case REQUEST_RIGHT_MODERATOR:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightModerator), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_MODERATOR), handler);
                                                break;
                                        case REQUEST_RIGHT_PRESENTER:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightPresenter), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_PRESENTER), handler);
                                                break;
                                        case REQUEST_RIGHT_WB:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightWb), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_WB), handler);
                                                break;
                                        case REQUEST_RIGHT_SHARE:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightShare), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_SHARE), handler);
                                                break;
                                        case REQUEST_RIGHT_REMOTE:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightRemote), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_REMOTE), handler);
                                                break;
                                        case REQUEST_RIGHT_A:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightA), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_A), handler);
                                                break;
                                        case REQUEST_RIGHT_AV:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightAv), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_AV), handler);
                                                break;
                                        case REQUEST_RIGHT_MUTE_OTHERS:
-                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.reqRightMuteOthers), handler);
+                                               sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_MUTE_OTHERS), handler);
                                                break;
                                        case ACTIVITY_REMOVE:
                                                
sidebar.removeActivity(((TextRoomMessage)m).getText(), handler);
                                                break;
                                        case HAVE_QUESTION:
                                                if 
(curClient.hasRight(Room.Right.MODERATOR) || getUserId().equals(m.getUserId())) 
{
-                                                       sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.haveQuestion), handler);
+                                                       sidebar.addActivity(new 
Activity((TextRoomMessage)m, Activity.Type.REQ_RIGHT_HAVE_QUESTION), handler);
                                                }
                                                break;
                                        case KICK:
@@ -569,13 +567,13 @@ public class RoomPanel extends BasePanel {
                        handler.appendJavaScript("Room.addClient(["
                                        + c.toJson(self).toString(new 
NullStringer()) + "]);");
                }
-               sidebar.addActivity(new Activity(m, Activity.Type.roomEnter), 
handler);
+               sidebar.addActivity(new Activity(m, Activity.Type.ROOM_ENTER), 
handler);
        }
 
        private void onRoomExit(TextRoomMessage m, IPartialPageRequestHandler 
handler) {
                String uid = m.getText();
                sidebar.update(handler);
-               sidebar.addActivity(new Activity(m, Activity.Type.roomExit), 
handler);
+               sidebar.addActivity(new Activity(m, Activity.Type.ROOM_EXIT), 
handler);
                handler.appendJavaScript("Room.removeClient('" + uid + "'); 
Chat.removeTab('" + ID_USER_PREFIX + m.getUserId() + "');");
        }
 
@@ -675,8 +673,8 @@ public class RoomPanel extends BasePanel {
 
        @Override
        public void cleanup(IPartialPageRequestHandler handler) {
-               if (eventDetail instanceof EventDetailDialog) {
-                       ((EventDetailDialog)eventDetail).close(handler);
+               if (eventDetail instanceof EventDetailDialog evtDialog) {
+                       evtDialog.close(handler);
                }
                handler.add(getBasePage().getHeader().setVisible(true), 
getMainPanel().getTopControls().setVisible(true));
                if (r.isHidden(RoomElement.CHAT)) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
index ccc9bf064..d2c314de4 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
@@ -24,6 +24,7 @@ import static 
org.apache.openmeetings.web.util.CallbackFunctionHelper.getNamedFu
 import static org.apache.wicket.ajax.attributes.CallbackParameter.explicit;
 
 import java.util.LinkedHashMap;
+import java.util.Locale;
 import java.util.Map;
 
 import org.apache.commons.lang3.time.FastDateFormat;
@@ -43,6 +44,7 @@ import org.apache.wicket.markup.head.IHeaderResponse;
 import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.spring.injection.annot.SpringBean;
+import org.apache.wicket.util.string.StringValue;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -58,7 +60,14 @@ public class ActivitiesPanel extends Panel {
        private static final String ACTIVITY_FMT = "%s %s [%s]";
        private static final String ACTIVITY_FMT_RTL = "%3$s %2$s [%1$s]";
        private enum Action {
-               accept, decline, close
+               ACCEPT, DECLINE, CLOSE;
+
+               public static Action of(StringValue val) {
+                       if (val.isEmpty()) {
+                               return null;
+                       }
+                       return 
Action.valueOf(val.toString().toUpperCase(Locale.ROOT));
+               }
        }
        private static final FastDateFormat df = 
FastDateFormat.getInstance("HH:mm:ss");
        private final Map<String, Activity> activities = new LinkedHashMap<>();
@@ -78,54 +87,54 @@ public class ActivitiesPanel extends Panel {
                        try {
                                String id = 
getRequest().getRequestParameters().getParameterValue(PARAM_ID).toString();
                                long roomId = 
getRequest().getRequestParameters().getParameterValue(PARAM_ROOM_ID).toLong();
-                               Action act = 
Action.valueOf(getRequest().getRequestParameters().getParameterValue(ACTION).toString());
+                               Action act = 
Action.of(getRequest().getRequestParameters().getParameterValue(ACTION));
                                Activity a = activities.get(id);
                                if (a == null || 
!room.getRoom().getId().equals(roomId)) {
                                        log.error("It seems like we are being 
hacked!!!!");
                                        return;
                                }
                                switch (act) {
-                                       case close:
+                                       case CLOSE:
                                                remove(target, id);
                                                break;
-                                       case decline:
+                                       case DECLINE:
                                                if 
(room.getClient().hasRight(Right.MODERATOR)) {
                                                        
sendRoom(getRemoveMsg(id));
                                                }
                                                break;
-                                       case accept:
+                                       case ACCEPT:
                                                Client client = 
cm.get(a.getUid());
                                                if 
(room.getClient().hasRight(Right.MODERATOR) && client != null && 
client.getRoom() != null && roomId == client.getRoom().getId()) {
                                                        switch (a.getType()) {
-                                                               case 
reqRightModerator:
+                                                               case 
REQ_RIGHT_MODERATOR:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.MODERATOR);
                                                                        break;
-                                                               case reqRightAv:
+                                                               case 
REQ_RIGHT_AV:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.AUDIO, Right.VIDEO);
                                                                        break;
-                                                               case 
reqRightPresenter:
+                                                               case 
REQ_RIGHT_PRESENTER:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.PRESENTER);
                                                                        break;
-                                                               case reqRightWb:
+                                                               case 
REQ_RIGHT_WB:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.WHITEBOARD);
                                                                        break;
-                                                               case 
reqRightShare:
+                                                               case 
REQ_RIGHT_SHARE:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.SHARE);
                                                                        break;
-                                                               case 
reqRightRemote:
+                                                               case 
REQ_RIGHT_REMOTE:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.REMOTE_CONTROL);
                                                                        break;
-                                                               case reqRightA:
+                                                               case 
REQ_RIGHT_A:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.AUDIO);
                                                                        break;
-                                                               case 
reqRightMuteOthers:
+                                                               case 
REQ_RIGHT_MUTE_OTHERS:
                                                                        
sendRoom(getRemoveMsg(id));
                                                                        
room.allowRight(client, Right.MUTE_OTHERS);
                                                                        break;
@@ -181,37 +190,37 @@ public class ActivitiesPanel extends Panel {
                final String name = self ? getString("1362") : a.getName();
                final String fmt = ((BasePage)getPage()).isRtl() ? 
ACTIVITY_FMT_RTL : ACTIVITY_FMT;
                switch (a.getType()) {
-                       case roomEnter:
+                       case ROOM_ENTER:
                                text = String.format(fmt, name, 
getString("activities.msg.enter"), df.format(a.getCreated()));
                                break;
-                       case roomExit:
+                       case ROOM_EXIT:
                                text = String.format(fmt, name, 
getString("activities.msg.exit"), df.format(a.getCreated()));
                                break;
-                       case reqRightModerator:
+                       case REQ_RIGHT_MODERATOR:
                                text = String.format(fmt, name, 
getString("activities.request.right.moderator"), df.format(a.getCreated()));
                                break;
-                       case reqRightPresenter:
+                       case REQ_RIGHT_PRESENTER:
                                text = String.format(fmt, name, 
getString("activities.request.right.presenter"), df.format(a.getCreated()));
                                break;
-                       case reqRightWb:
+                       case REQ_RIGHT_WB:
                                text = String.format(fmt, name, 
getString("activities.request.right.wb"), df.format(a.getCreated()));
                                break;
-                       case reqRightShare:
+                       case REQ_RIGHT_SHARE:
                                text = String.format(fmt, name, 
getString("activities.request.right.share"), df.format(a.getCreated()));
                                break;
-                       case reqRightRemote:
+                       case REQ_RIGHT_REMOTE:
                                text = String.format(fmt, name, 
getString("activities.request.right.remote"), df.format(a.getCreated()));
                                break;
-                       case reqRightA:
+                       case REQ_RIGHT_A:
                                text = String.format(fmt, name, 
getString("activities.request.right.audio"), df.format(a.getCreated()));
                                break;
-                       case reqRightAv:
+                       case REQ_RIGHT_AV:
                                text = String.format(fmt, name, 
getString("activities.request.right.video"), df.format(a.getCreated()));
                                break;
-                       case reqRightMuteOthers:
+                       case REQ_RIGHT_MUTE_OTHERS:
                                text = String.format(fmt, name, 
getString("activities.request.right.muteothers"), df.format(a.getCreated()));
                                break;
-                       case haveQuestion:
+                       case REQ_RIGHT_HAVE_QUESTION:
                                text = String.format(fmt, name, 
getString("activities.ask.question"), df.format(a.getCreated()));
                                break;
                }
@@ -224,21 +233,14 @@ public class ActivitiesPanel extends Panel {
                        .put("find", false);
 
                switch (a.getType()) {
-                       case reqRightModerator:
-                       case reqRightPresenter:
-                       case reqRightWb:
-                       case reqRightShare:
-                       case reqRightRemote:
-                       case reqRightA:
-                       case reqRightAv:
-                       case reqRightMuteOthers:
+                       case REQ_RIGHT_MODERATOR, REQ_RIGHT_PRESENTER, 
REQ_RIGHT_WB, REQ_RIGHT_SHARE, REQ_RIGHT_REMOTE
+                                       , REQ_RIGHT_A, REQ_RIGHT_AV, 
REQ_RIGHT_MUTE_OTHERS:
                                aobj.put("accept", 
room.getClient().hasRight(Right.MODERATOR));
                                aobj.put("decline", 
room.getClient().hasRight(Right.MODERATOR));
                                break;
-                       case haveQuestion:
+                       case REQ_RIGHT_HAVE_QUESTION:
                                aobj.put("find", !self);
-                       case roomEnter:
-                       case roomExit:
+                       case ROOM_ENTER, ROOM_EXIT:
                                aobj.put("accept", false);
                                aobj.put("decline", false);
                                break;
@@ -261,19 +263,11 @@ public class ActivitiesPanel extends Panel {
        private static CharSequence getClass(Activity a) {
                StringBuilder cls = new StringBuilder();
                switch (a.getType()) {
-                       case reqRightModerator:
-                       case reqRightPresenter:
-                       case reqRightWb:
-                       case reqRightShare:
-                       case reqRightRemote:
-                       case reqRightA:
-                       case reqRightAv:
-                       case reqRightMuteOthers:
-                       case haveQuestion:
+                       case REQ_RIGHT_MODERATOR, REQ_RIGHT_PRESENTER, 
REQ_RIGHT_WB, REQ_RIGHT_SHARE, REQ_RIGHT_REMOTE
+                                       , REQ_RIGHT_A, REQ_RIGHT_AV, 
REQ_RIGHT_MUTE_OTHERS, REQ_RIGHT_HAVE_QUESTION:
                                cls.append("bg-warning");
                                break;
-                       case roomEnter:
-                       case roomExit:
+                       case ROOM_ENTER, ROOM_EXIT:
                                cls.append("bg-white auto-clean");
                }
                return cls;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/Activity.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/Activity.java
index 5097b0f39..db0b01f82 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/Activity.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/Activity.java
@@ -27,17 +27,17 @@ import java.util.Date;
 public class Activity implements Serializable {
        private static final long serialVersionUID = 1L;
        public enum Type {
-               roomEnter
-               , roomExit
-               , reqRightModerator(true)
-               , reqRightPresenter(true)
-               , reqRightWb(true)
-               , reqRightShare(true)
-               , reqRightRemote(true)
-               , reqRightA(true)
-               , reqRightAv(true)
-               , reqRightMuteOthers(true)
-               , haveQuestion(true);
+               ROOM_ENTER
+               , ROOM_EXIT
+               , REQ_RIGHT_MODERATOR(true)
+               , REQ_RIGHT_PRESENTER(true)
+               , REQ_RIGHT_WB(true)
+               , REQ_RIGHT_SHARE(true)
+               , REQ_RIGHT_REMOTE(true)
+               , REQ_RIGHT_A(true)
+               , REQ_RIGHT_AV(true)
+               , REQ_RIGHT_MUTE_OTHERS(true)
+               , REQ_RIGHT_HAVE_QUESTION(true);
 
                private final boolean action;
 
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
index aefe09f92..e06354d4b 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomInvitationForm.java
@@ -54,7 +54,7 @@ import org.wicketstuff.select2.Select2MultiChoice;
 public class RoomInvitationForm extends InvitationForm {
        private static final long serialVersionUID = 1L;
        private static final Logger log = 
LoggerFactory.getLogger(RoomInvitationForm.class);
-       private final RadioGroup<InviteeType> rdi = new 
RadioGroup<>("inviteeType", Model.of(InviteeType.user));
+       private final RadioGroup<InviteeType> rdi = new 
RadioGroup<>("inviteeType", Model.of(InviteeType.USER));
        private final Long roomId;
        private final WebMarkupContainer groupContainer = new 
WebMarkupContainer("groupContainer");
        private final Select2MultiChoice<Group> groups = new 
Select2MultiChoice<>("groups"
@@ -69,8 +69,8 @@ public class RoomInvitationForm extends InvitationForm {
        private InvitationManager invitationManager;
 
        enum InviteeType {
-               user
-               , group
+               USER
+               , GROUP
        }
 
        public RoomInvitationForm(String id, Long roomId, String 
dropDownParentId) {
@@ -87,7 +87,7 @@ public class RoomInvitationForm extends InvitationForm {
 
                        @Override
                        protected void onUpdate(AjaxRequestTarget target) {
-                               boolean groupsEnabled = InviteeType.group == 
rdi.getModelObject();
+                               boolean groupsEnabled = InviteeType.GROUP == 
rdi.getModelObject();
                                updateButtons(target);
                                target.add(groups.setEnabled(groupsEnabled), 
recipients.setEnabled(!groupsEnabled));
                        }
@@ -97,10 +97,10 @@ public class RoomInvitationForm extends InvitationForm {
                                url.setModelObject(null);
                                updateButtons(target);
                        })).setOutputMarkupId(true)
-                       , new Radio<>("group", Model.of(InviteeType.group))
+                       , new Radio<>("group", Model.of(InviteeType.GROUP))
                );
                rdi.add(recipients, groupContainer.setVisible(showGroups));
-               rdi.add(new Radio<>("user", Model.of(InviteeType.user)));
+               rdi.add(new Radio<>("user", Model.of(InviteeType.USER)));
                
add(sipContainer.setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true));
                sipContainer.add(new Label("room.confno", 
"")).setVisible(false);
                if (dropDownParentId != null) {
@@ -111,7 +111,7 @@ public class RoomInvitationForm extends InvitationForm {
 
        @Override
        protected void updateButtons(AjaxRequestTarget target) {
-               if (rdi.getModelObject() == InviteeType.user) {
+               if (rdi.getModelObject() == InviteeType.USER) {
                        super.updateButtons(target);
                } else {
                        Collection<Group> to = groups.getModelObject();
@@ -132,12 +132,12 @@ public class RoomInvitationForm extends InvitationForm {
                }
                groups.setModelObject(new ArrayList<>());
                groups.setEnabled(false);
-               rdi.setModelObject(InviteeType.user);
+               rdi.setModelObject(InviteeType.USER);
        }
 
        @Override
        public void onClick(AjaxRequestTarget target, InvitationForm.Action 
action) {
-               if (InvitationForm.Action.SEND == action && 
Strings.isEmpty(url.getModelObject()) && rdi.getModelObject() == 
InviteeType.group) {
+               if (InvitationForm.Action.SEND == action && 
Strings.isEmpty(url.getModelObject()) && rdi.getModelObject() == 
InviteeType.GROUP) {
                        final String userbaseUrl = 
WebSession.get().getExtendedProperties().getBaseUrl();
                        for (Group g : groups.getModelObject()) {
                                for (GroupUser ou : groupUserDao.get(g.getId(), 
0, Integer.MAX_VALUE)) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/UndoObject.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/UndoObject.java
index 08b91347b..f8416babf 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/UndoObject.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/UndoObject.java
@@ -29,9 +29,9 @@ public class UndoObject implements Serializable {
        private static final long serialVersionUID = 1L;
 
        public enum Type {
-               add
-               , remove
-               , modify
+               ADD
+               , REMOVE
+               , MODIFY
        }
        private final Type type;
        private final String object;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
index a5f25f3b3..a4949f661 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
@@ -126,7 +126,7 @@ public class WbPanel extends AbstractWbPanel {
        private final SerializableConsumer<Whiteboard> addUndo = wb -> {
                JSONArray arr = getArray(wb.toJson(), null);
                if (arr.length() != 0) {
-                       addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.remove, arr));
+                       addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.REMOVE, arr));
                }
        };
        @SpringBean
@@ -192,8 +192,7 @@ public class WbPanel extends AbstractWbPanel {
                        return;
                }
                switch (a) {
-                       case CREATE_OBJ:
-                       case MODIFY_OBJ:
+                       case CREATE_OBJ, MODIFY_OBJ:
                        {
                                JSONObject o = obj.optJSONObject("obj");
                                if (o != null && 
"pointer".equals(o.getString(ATTR_OMTYPE))) {
@@ -318,7 +317,7 @@ public class WbPanel extends AbstractWbPanel {
                                        JSONObject o = obj.getJSONObject("obj");
                                        wb.put(o.getString("uid"), o);
                                        wbm.update(roomId, wb);
-                                       addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.add, o));
+                                       addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.ADD, o));
                                        sendWbOthers(WbAction.CREATE_OBJ, obj);
                                }
                                        break;
@@ -338,7 +337,7 @@ public class WbPanel extends AbstractWbPanel {
                                        }
                                        if (arr.length() != 0) {
                                                wbm.update(roomId, wb);
-                                               addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.modify, undo));
+                                               addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.MODIFY, undo));
                                        }
                                        sendWbOthers(WbAction.MODIFY_OBJ, obj);
                                }
@@ -357,7 +356,7 @@ public class WbPanel extends AbstractWbPanel {
                                        }
                                        if (undo.length() != 0) {
                                                wbm.update(roomId, wb);
-                                               addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.remove, undo));
+                                               addUndo(wb.getId(), new 
UndoObject(UndoObject.Type.REMOVE, undo));
                                        }
                                        sendWbAll(WbAction.DELETE_OBJ, obj);
                                }
@@ -365,7 +364,7 @@ public class WbPanel extends AbstractWbPanel {
                                case CLEAR_SLIDE:
                                {
                                        wbm.cleanSlide(roomId, 
obj.getLong("wbId"), obj.getInt(ATTR_SLIDE)
-                                                       , (wb, arr) -> 
addUndo(wb.getId(), new UndoObject(UndoObject.Type.remove, arr)));
+                                                       , (wb, arr) -> 
addUndo(wb.getId(), new UndoObject(UndoObject.Type.REMOVE, arr)));
                                }
                                        break;
                                case SAVE:
@@ -379,7 +378,7 @@ public class WbPanel extends AbstractWbPanel {
                                        if (uo != null) {
                                                Whiteboard wb = 
wbm.get(roomId).get(wbId);
                                                switch (uo.getType()) {
-                                                       case add:
+                                                       case ADD:
                                                        {
                                                                JSONObject o = 
new JSONObject(uo.getObject());
                                                                
wb.remove(o.getString("uid"));
@@ -387,7 +386,7 @@ public class WbPanel extends AbstractWbPanel {
                                                                
sendWbAll(WbAction.DELETE_OBJ, obj.put("obj", new JSONArray().put(o)));
                                                        }
                                                                break;
-                                                       case remove:
+                                                       case REMOVE:
                                                        {
                                                                JSONArray arr = 
new JSONArray(uo.getObject());
                                                                for (int i  = 
0; i < arr.length(); ++i) {
@@ -398,7 +397,7 @@ public class WbPanel extends AbstractWbPanel {
                                                                
sendWbAll(WbAction.CREATE_OBJ, obj.put("obj", new JSONArray(uo.getObject())));
                                                        }
                                                                break;
-                                                       case modify:
+                                                       case MODIFY:
                                                        {
                                                                JSONArray arr = 
new JSONArray(uo.getObject());
                                                                for (int i  = 
0; i < arr.length(); ++i) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbWebSocketHelper.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbWebSocketHelper.java
index 3894920f1..9752ab22c 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbWebSocketHelper.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbWebSocketHelper.java
@@ -51,17 +51,16 @@ public class WbWebSocketHelper {
        }
 
        public static boolean send(IClusterWsMessage inMsg) {
-               if (inMsg instanceof WsMessageWb) {
-                       WsMessageWb m = (WsMessageWb)inMsg;
-                       if (m.getUid() == null) {
-                               sendWbAll(m.getRoomId(), m.getMeth(), 
m.getObj(), false);
+               if (inMsg instanceof WsMessageWb msg) {
+                       if (msg.getUid() == null) {
+                               sendWbAll(msg.getRoomId(), msg.getMeth(), 
msg.getObj(), false);
                        } else {
-                               sendWbOthers(m.getRoomId(), m.getMeth(), 
m.getObj(), m.getUid(), false);
+                               sendWbOthers(msg.getRoomId(), msg.getMeth(), 
msg.getObj(), msg.getUid(), false);
                        }
                        return true;
-               } else if (inMsg instanceof WsMessageWbFile) {
-                       WsMessageWbFile m = (WsMessageWbFile)inMsg;
-                       sendWbFile(m.getRoomId(), m.getWbId(), m.getRoomUid(), 
m.getFile(), m.getFileItem(), false);
+               } else if (inMsg instanceof WsMessageWbFile fileMsg) {
+                       sendWbFile(fileMsg.getRoomId(), fileMsg.getWbId()
+                                       , fileMsg.getRoomUid(), 
fileMsg.getFile(), fileMsg.getFileItem(), false);
                        return true;
                }
                return false;
@@ -149,8 +148,7 @@ public class WbWebSocketHelper {
        private static JSONObject patchUrls(BaseFileItem fi, Client c, 
JSONObject inFile) {
                JSONObject f = new JSONObject(inFile.toString()); // deep copy 
to ensure thread safety
                switch (fi.getType()) {
-                       case VIDEO:
-                       case RECORDING:
+                       case VIDEO, RECORDING:
                                f.put(PARAM__SRC, 
patchUrl(f.getString(PARAM__SRC), c));
                                f.put(PARAM__POSTER, 
patchUrl(f.getString(PARAM__POSTER), c));
                                break;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
index 0481bee93..611338d88 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
@@ -108,14 +108,14 @@ public class AppointmentDialog extends Modal<Appointment> 
{
        private final CalendarPanel calendarPanel;
        private final NotificationPanel feedback = new 
NotificationPanel("feedback");
        private final WebMarkupContainer sipContainer = new 
WebMarkupContainer("sip-container");
-       private final RadioGroup<InviteeType> rdi = new 
RadioGroup<>("inviteeType", Model.of(InviteeType.user));
+       private final RadioGroup<InviteeType> rdi = new 
RadioGroup<>("inviteeType", Model.of(InviteeType.USER));
        private final Select2MultiChoice<Group> groups = new 
Select2MultiChoice<>("groups"
                        , new CollectionModel<>(new ArrayList<>())
                        , new GroupChoiceProvider());
        private final UserMultiChoice attendees = new 
UserMultiChoice("attendees", new CollectionModel<>(new ArrayList<>()));
        private enum InviteeType {
-               user
-               , group
+               USER
+               , GROUP
        }
        @SpringBean
        private RoomDao roomDao;
@@ -154,7 +154,7 @@ public class AppointmentDialog extends Modal<Appointment> {
                                final List<MeetingMember> mms = 
a.getMeetingMembers() == null ? new ArrayList<>() : a.getMeetingMembers();
                                Set<Long> currentIds = new HashSet<>();
                                List<User> users = new ArrayList<>();
-                               if (InviteeType.group == rdi.getModelObject()) {
+                               if (InviteeType.GROUP == rdi.getModelObject()) {
                                        //lets iterate through all group users
                                        for (Group g : groups.getModelObject()) 
{
                                                for (GroupUser gu : 
groupUserDao.get(g.getId(), 0, Integer.MAX_VALUE)) {
@@ -352,7 +352,7 @@ public class AppointmentDialog extends Modal<Appointment> {
                                cals.setEnabled(false);
                        }
 
-                       rdi.setModelObject(InviteeType.user);
+                       rdi.setModelObject(InviteeType.USER);
                        attendees.setModelObject(new ArrayList<>());
                        if (a.getMeetingMembers() != null) {
                                for (MeetingMember mm : a.getMeetingMembers()) {
@@ -377,13 +377,13 @@ public class AppointmentDialog extends Modal<Appointment> 
{
 
                                @Override
                                protected void onUpdate(AjaxRequestTarget 
target) {
-                                       boolean groupsEnabled = 
InviteeType.group == rdi.getModelObject();
+                                       boolean groupsEnabled = 
InviteeType.GROUP == rdi.getModelObject();
                                        
target.add(groups.setEnabled(groupsEnabled), 
attendees.setEnabled(!groupsEnabled));
                                }
                        }));
                        groupContainer.add(
                                
groups.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true)
-                               , new Radio<>("group", 
Model.of(InviteeType.group))
+                               , new Radio<>("group", 
Model.of(InviteeType.GROUP))
                        );
                        if (showGroups) {
                                
groups.add(AjaxFormComponentUpdatingBehavior.onUpdate(EVT_CHANGE, target -> {
@@ -396,7 +396,7 @@ public class AppointmentDialog extends Modal<Appointment> {
                                }))
                                , groupContainer.setVisible(showGroups)
                        );
-                       rdi.add(new Radio<>("user", 
Model.of(InviteeType.user)));
+                       rdi.add(new Radio<>("user", 
Model.of(InviteeType.USER)));
 
                        add(new TextField<String>("location"));
                        OmWysiwygToolbar toolbar = new 
OmWysiwygToolbar("toolbarContainer");
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
index 68156a6d6..d7caa3a30 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
@@ -195,9 +195,7 @@ public class CalendarDialog extends Modal<OmCalendar> {
                                        case DELETE_APPOINTMENT:
                                                deleteAppointment(a);
                                                break;
-                                       case SYNC_CALENDAR:
-                                               break;
-                                       case UPDATE_CALENDAR:
+                                       case SYNC_CALENDAR, UPDATE_CALENDAR:
                                                break;
                                        default:
                                                break;
@@ -232,9 +230,7 @@ public class CalendarDialog extends Modal<OmCalendar> {
                                        calendarPanel.refresh(handler);
                                }
                                break;
-                       case DELETE_APPOINTMENT:
-                               break;
-                       case UPDATE_APPOINTMENT:
+                       case DELETE_APPOINTMENT, UPDATE_APPOINTMENT:
                                break;
                        default:
                                break;
@@ -351,9 +347,7 @@ public class CalendarDialog extends Modal<OmCalendar> {
 
        public void setButtons(IPartialPageRequestHandler target) {
                switch (type) {
-                       case UPDATE_APPOINTMENT:
-                       case DELETE_APPOINTMENT:
-                       case SYNC_CALENDAR:
+                       case UPDATE_APPOINTMENT, DELETE_APPOINTMENT, 
SYNC_CALENDAR:
                                target.add(delete.setVisible(false), 
save.setVisible(true));
                                break;
                        case UPDATE_CALENDAR:
@@ -463,9 +457,7 @@ public class CalendarDialog extends Modal<OmCalendar> {
                                        }
                                        setGCalVisibility(calendar);
                                        break;
-                               case SYNC_CALENDAR:
-                               case UPDATE_APPOINTMENT:
-                               case DELETE_APPOINTMENT:
+                               case SYNC_CALENDAR, UPDATE_APPOINTMENT, 
DELETE_APPOINTMENT:
                                        title.setEnabled(false);
                                        url.setEnabled(false);
                                        username.setEnabled(true);
@@ -520,35 +512,36 @@ public class CalendarDialog extends Modal<OmCalendar> {
                 */
                @Override
                protected void onValidate() {
-                       if (!hasError()) {
-                               switch (type) {
-                                       case UPDATE_CALENDAR:
-                                               if (getModelObject().getId() != 
null || gcal.getModelObject()) {
-                                                       return;
+                       if (hasError()) {
+                               return;
+                       }
+                       switch (type) {
+                               case UPDATE_CALENDAR:
+                                       if (getModelObject().getId() != null || 
gcal.getModelObject()) {
+                                               return;
+                                       }
+                               case UPDATE_APPOINTMENT, DELETE_APPOINTMENT, 
SYNC_CALENDAR:
+                                       try {
+                                               OmCalendar calendar = 
getModelObject();
+                                               if (url.isEnabled()) {
+                                                       
calendar.setHref(url.getInput());
                                                }
-                                       case UPDATE_APPOINTMENT:
-                                       case DELETE_APPOINTMENT:
-                                       case SYNC_CALENDAR:
-                                               try {
-                                                       OmCalendar calendar = 
getModelObject();
-                                                       if (url.isEnabled()) {
-                                                               
calendar.setHref(url.getInput());
-                                                       }
-                                                       HttpClient client = 
calendarPanel.getHttpClient();
-                                                       HttpClientContext 
context = calendarPanel.getHttpClientContext();
+                                               HttpClient client = 
calendarPanel.getHttpClient();
+                                               HttpClientContext context = 
calendarPanel.getHttpClientContext();
 
-                                                       
apptManager.provideCredentials(context, calendar,
-                                                                       new 
UsernamePasswordCredentials(username.getInput(), pass.getInput()));
-                                                       if 
(apptManager.testConnection(client, context, calendar)) {
-                                                               return;
-                                                       }
-                                               } catch (Exception e) {
-                                                       log.error("Error 
executing the TestConnection", e);
+                                               
apptManager.provideCredentials(context, calendar,
+                                                               new 
UsernamePasswordCredentials(username.getInput(), pass.getInput()));
+                                               if 
(apptManager.testConnection(client, context, calendar)) {
+                                                       return;
                                                }
+                                       } catch (Exception e) {
+                                               log.error("Error executing the 
TestConnection", e);
+                                       }
 
-                                               
error(getString("calendar.error"));
-                                               break;
-                               }
+                                       error(getString("calendar.error"));
+                                       break;
+                               default:
+                                       break;
                        }
                }
        }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
index e35f1cdf4..9be682bb9 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
@@ -395,6 +395,8 @@ public class MessagesContactsPanel extends UserBasePanel {
                                                selectedMessages.clear();
                                                
selectedMessages.addAll(readMessages);
                                                break;
+                                       default:
+                                               break;
                                }
                                target.add(container);
                        }
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
index 70dd18f16..5e1c0be8e 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
@@ -48,12 +48,12 @@ import 
de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
 
 public class RecordingsPanel extends UserBasePanel {
        private static final long serialVersionUID = 1L;
-       private static final String recordingInviteDialogId = 
"recordingInviteDialog";
+       private static final String INVITE_DIALOG_ID = "recordingInviteDialog";
        private final VideoPlayer video = new VideoPlayer("video");
        private final VideoInfo info = new VideoInfo("info");
        private FileTreePanel fileTree;
        private InvitationDialog invite;
-       private RecordingInvitationForm rif = new 
RecordingInvitationForm("form", recordingInviteDialogId);
+       private RecordingInvitationForm rif = new 
RecordingInvitationForm("form", INVITE_DIALOG_ID);
 
        @SpringBean
        private RecordingDao recDao;
@@ -153,7 +153,7 @@ public class RecordingsPanel extends UserBasePanel {
                        }
                });
                add(video, info, addFolder);
-               invite = new InvitationDialog(recordingInviteDialogId, rif);
+               invite = new InvitationDialog(INVITE_DIALOG_ID, rif);
                add(invite);
                rif.setDialog(invite);
 
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
index 82105a18d..775b979a1 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
@@ -49,8 +49,7 @@ public class VideoInfo extends Panel {
        }
 
        public VideoInfo update(AjaxRequestTarget target, BaseFileItem file) {
-               if (file instanceof Recording) {
-                       Recording r = (Recording)file;
+               if (file instanceof Recording r) {
                        setDefaultModelObject(file);
                        try {
                                String name = null;
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
index b3abaa326..dcc1daa83 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
@@ -37,7 +37,7 @@ public class RoomEnterBehavior extends AjaxEventBehavior {
        }
 
        public static OmUrlFragment getRoomUrlFragment(Long roomId) {
-               return new OmUrlFragment(AreaKeys.room, "" + roomId);
+               return new OmUrlFragment(AreaKeys.ROOM, "" + roomId);
        }
 
        public static void roomEnter(MainPage page, IPartialPageRequestHandler 
handler, Long roomId) {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
index 91b758888..4d89c4841 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java
@@ -22,6 +22,7 @@ import static 
org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 
 import java.io.Serializable;
+import java.util.Locale;
 
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
@@ -54,7 +55,7 @@ import org.apache.wicket.request.flow.RedirectToUrlException;
 
 public class OmUrlFragment implements Serializable {
        private static final long serialVersionUID = 1L;
-       private AreaKeys area = AreaKeys.user;
+       private AreaKeys area = AreaKeys.USER;
        private String type = "";
        public static final String CHILD_ID = "child";
        public static final String TYPE_CALENDAR = "calendar";
@@ -78,20 +79,27 @@ public class OmUrlFragment implements Serializable {
        public static final String TYPE_SEARCH = "search";
        public static final String TYPE_INVITATION = "invitation";
        public static final String TYPE_WIDGET = "widget";
-       public static final OmUrlFragment DASHBOARD = new 
OmUrlFragment(AreaKeys.user, TYPE_DASHBOARD);
-       public static final OmUrlFragment PROFILE_EDIT = new 
OmUrlFragment(AreaKeys.profile, TYPE_EDIT);
-       public static final OmUrlFragment PROFILE_MESSAGES = new 
OmUrlFragment(AreaKeys.profile, TYPE_MESSAGES);
-       public static final OmUrlFragment CALENDAR = new 
OmUrlFragment(AreaKeys.user, TYPE_CALENDAR);
-       public static final OmUrlFragment ROOMS_PUBLIC = new 
OmUrlFragment(AreaKeys.rooms, TYPE_PUBLIC);
-       public static final OmUrlFragment ROOMS_GROUP = new 
OmUrlFragment(AreaKeys.rooms, TYPE_GROUP);
-       public static final OmUrlFragment ROOMS_MY = new 
OmUrlFragment(AreaKeys.rooms, TYPE_MY);
+       public static final OmUrlFragment DASHBOARD = new 
OmUrlFragment(AreaKeys.USER, TYPE_DASHBOARD);
+       public static final OmUrlFragment PROFILE_EDIT = new 
OmUrlFragment(AreaKeys.PROFILE, TYPE_EDIT);
+       public static final OmUrlFragment PROFILE_MESSAGES = new 
OmUrlFragment(AreaKeys.PROFILE, TYPE_MESSAGES);
+       public static final OmUrlFragment CALENDAR = new 
OmUrlFragment(AreaKeys.USER, TYPE_CALENDAR);
+       public static final OmUrlFragment ROOMS_PUBLIC = new 
OmUrlFragment(AreaKeys.ROOMS, TYPE_PUBLIC);
+       public static final OmUrlFragment ROOMS_GROUP = new 
OmUrlFragment(AreaKeys.ROOMS, TYPE_GROUP);
+       public static final OmUrlFragment ROOMS_MY = new 
OmUrlFragment(AreaKeys.ROOMS, TYPE_MY);
 
        public enum AreaKeys {
-               user
-               , admin
-               , profile
-               , room
-               , rooms
+               USER
+               , ADMIN
+               , PROFILE
+               , ROOM
+               , ROOMS;
+
+               public String area() {
+                       return name().toLowerCase(Locale.ROOT);
+               }
+               public static AreaKeys of(String val) {
+                       return val == null ? null : 
AreaKeys.valueOf(val.toUpperCase(Locale.ROOT));
+               }
        }
 
        public enum MenuActions {
@@ -127,91 +135,91 @@ public class OmUrlFragment implements Serializable {
        public OmUrlFragment(MenuActions action) {
                switch(action) {
                        case DASHBOARD_START:
-                               setArea(AreaKeys.user);
+                               setArea(AreaKeys.USER);
                                setType(TYPE_DASHBOARD);
                                break;
                        case DASHBOARD_CALENDAR:
-                               setArea(AreaKeys.user);
+                               setArea(AreaKeys.USER);
                                setType(TYPE_CALENDAR);
                                break;
                        case RECORD:
-                               setArea(AreaKeys.user);
+                               setArea(AreaKeys.USER);
                                setType(TYPE_RECORDINGS);
                                break;
                        case ROOMS_PUBLIC:
-                               setArea(AreaKeys.rooms);
+                               setArea(AreaKeys.ROOMS);
                                setType(TYPE_PUBLIC);
                                break;
                        case ROOMS_GROUP:
-                               setArea(AreaKeys.rooms);
+                               setArea(AreaKeys.ROOMS);
                                setType(TYPE_GROUP);
                                break;
                        case ROOMS_MY:
-                               setArea(AreaKeys.rooms);
+                               setArea(AreaKeys.ROOMS);
                                setType(TYPE_MY);
                                break;
                        case ADMIN_USER:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_USER);
                                break;
                        case ADMIN_CONNECTION:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_CONNECTION);
                                break;
                        case ADMIN_GROUP:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_GROUP);
                                break;
                        case ADMIN_ROOM:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_ROOM);
                                break;
                        case ADMIN_CONFIG:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_CONFIG);
                                break;
                        case ADMIN_LABEL:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_LANG);
                                break;
                        case ADMIN_LDAP:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_LDAP);
                                break;
                        case ADMIN_BACKUP:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_BACKUP);
                                break;
                        case ADMIN_OAUTH:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_OAUTH2);
                                break;
                        case ADMIN_EMAIL:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_EMAIL);
                                break;
                        case ADMIN_EXTRA:
-                               setArea(AreaKeys.admin);
+                               setArea(AreaKeys.ADMIN);
                                setType(TYPE_EXTRA);
                                break;
                        case PROFILE_MESSAGE:
-                               setArea(AreaKeys.profile);
+                               setArea(AreaKeys.PROFILE);
                                setType(TYPE_MESSAGES);
                                break;
                        case PROFILE_EDIT:
-                               setArea(AreaKeys.profile);
+                               setArea(AreaKeys.PROFILE);
                                setType(TYPE_EDIT);
                                break;
                        case PROFILE_SEARCH:
-                               setArea(AreaKeys.profile);
+                               setArea(AreaKeys.PROFILE);
                                setType(TYPE_SEARCH);
                                break;
                        case PROFILE_INVITATION:
-                               setArea(AreaKeys.profile);
+                               setArea(AreaKeys.PROFILE);
                                setType(TYPE_INVITATION);
                                break;
                        case PROFILE_WIDGET:
-                               setArea(AreaKeys.profile);
+                               setArea(AreaKeys.PROFILE);
                                setType(TYPE_WIDGET);
                                break;
                }
@@ -248,7 +256,7 @@ public class OmUrlFragment implements Serializable {
        public static BasePanel getPanel(AreaKeys area, String type) {
                BasePanel basePanel = null;
                switch(area) {
-                       case admin:
+                       case ADMIN:
                                if (TYPE_USER.equals(type)) {
                                        basePanel = new UsersPanel(CHILD_ID);
                                } else if (TYPE_CONNECTION.equals(type)) {
@@ -273,7 +281,7 @@ public class OmUrlFragment implements Serializable {
                                        basePanel = new ExtraPanel(CHILD_ID);
                                }
                                break;
-                       case profile:
+                       case PROFILE:
                                if (TYPE_MESSAGES.equals(type)) {
                                        basePanel = new 
MessagesContactsPanel(CHILD_ID);
                                } else if (TYPE_EDIT.equals(type)) {
@@ -286,13 +294,13 @@ public class OmUrlFragment implements Serializable {
                                        basePanel = new WidgetsPanel(CHILD_ID);
                                }
                                break;
-                       case room:
+                       case ROOM:
                                basePanel = getRoomPanel(type);
                                break;
-                       case rooms:
+                       case ROOMS:
                                basePanel = new RoomsSelectorPanel(CHILD_ID, 
type);
                                break;
-                       case user:
+                       case USER:
                                if (TYPE_CALENDAR.equals(type)) {
                                        basePanel = new CalendarPanel(CHILD_ID);
                                } else if (TYPE_RECORDINGS.equals(type)) {
@@ -324,7 +332,7 @@ public class OmUrlFragment implements Serializable {
        }
 
        public String getLink() {
-               return getBaseUrl() + "#" + getArea().name() + "/" + getType();
+               return getBaseUrl() + "#" + getArea().area() + "/" + getType();
        }
 
        private static void moveToServer(Room r) {
diff --git 
a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTesterTest.java
 
b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTesterTest.java
index 773cbd191..3f2da25c9 100644
--- 
a/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTesterTest.java
+++ 
b/openmeetings-web/src/test/java/org/apache/openmeetings/AbstractWicketTesterTest.java
@@ -47,7 +47,7 @@ import org.junit.jupiter.api.BeforeEach;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class AbstractWicketTesterTest extends AbstractOmServerTest {
+public abstract class AbstractWicketTesterTest extends AbstractOmServerTest {
        private static final Logger log = 
LoggerFactory.getLogger(AbstractWicketTesterTest.class);
        public static final String PATH_CHILD = 
"main-container:main:contents:child";
        public static final String PATH_MENU = 
"main-container:main:topControls:menu:menu";
diff --git 
a/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestImportUser.java
 
b/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestImportUser.java
index 8e6506e1f..2de263a28 100644
--- 
a/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestImportUser.java
+++ 
b/openmeetings-web/src/test/java/org/apache/openmeetings/backup/TestImportUser.java
@@ -38,9 +38,10 @@ class TestImportUser extends AbstractTestImport {
 
        @Test
        void importUserNE() throws Exception {
-               File configs = new 
File(getClass().getClassLoader().getResource(BACKUP_ROOT + 
"config/skip/configs.xml").toURI());
+               File configRoot = new 
File(getClass().getClassLoader().getResource(BACKUP_ROOT + 
"config/skip/configs.xml").toURI())
+                               .getParentFile();
                Assertions.assertThrows(BackupException.class, () -> {
-                       backupImport.importUsers(configs.getParentFile());
+                       backupImport.importUsers(configRoot);
                });
        }
 
diff --git 
a/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java 
b/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java
index 1beb0d1ab..128d2ec42 100644
--- 
a/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java
+++ 
b/openmeetings-web/src/test/java/org/apache/openmeetings/web/TestMainAreas.java
@@ -119,161 +119,161 @@ class TestMainAreas extends AbstractWicketTesterTest {
 
        @Test
        void testCalendar() throws OmException {
-               checkArea(AreaKeys.user, TYPE_CALENDAR, CalendarPanel.class, 
regularUsername);
+               checkArea(AreaKeys.USER, TYPE_CALENDAR, CalendarPanel.class, 
regularUsername);
        }
 
        @Test
        void testRecordings() throws OmException {
-               checkArea(AreaKeys.user, TYPE_RECORDINGS, 
RecordingsPanel.class, regularUsername);
+               checkArea(AreaKeys.USER, TYPE_RECORDINGS, 
RecordingsPanel.class, regularUsername);
        }
 
        @Test
        void testRoomsPublic() throws OmException {
-               checkArea(AreaKeys.rooms, TYPE_PUBLIC, 
RoomsSelectorPanel.class, regularUsername);
+               checkArea(AreaKeys.ROOMS, TYPE_PUBLIC, 
RoomsSelectorPanel.class, regularUsername);
        }
 
        @Test
        void testRoomsGroup() throws OmException {
-               checkArea(AreaKeys.rooms, TYPE_GROUP, RoomsSelectorPanel.class, 
regularUsername);
+               checkArea(AreaKeys.ROOMS, TYPE_GROUP, RoomsSelectorPanel.class, 
regularUsername);
        }
 
        @Test
        void testRoomsMy() throws OmException {
-               checkArea(AreaKeys.rooms, TYPE_MY, RoomsSelectorPanel.class, 
regularUsername);
+               checkArea(AreaKeys.ROOMS, TYPE_MY, RoomsSelectorPanel.class, 
regularUsername);
        }
 
        @Test
        void testProfileMessages() throws OmException {
-               checkArea(AreaKeys.profile, TYPE_MESSAGES, 
MessagesContactsPanel.class, regularUsername);
+               checkArea(AreaKeys.PROFILE, TYPE_MESSAGES, 
MessagesContactsPanel.class, regularUsername);
        }
 
        @Test
        void testProfileEdit() throws OmException {
-               checkArea(AreaKeys.profile, TYPE_EDIT, EditProfilePanel.class, 
regularUsername);
+               checkArea(AreaKeys.PROFILE, TYPE_EDIT, EditProfilePanel.class, 
regularUsername);
        }
 
        @Test
        void testNonExistent() throws OmException {
-               checkArea(AreaKeys.profile, "bla", OmDashboardPanel.class, 
regularUsername);
+               checkArea(AreaKeys.PROFILE, "bla", OmDashboardPanel.class, 
regularUsername);
        }
 
        @Test
        void testAdminUsers() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_USER, UsersPanel.class, 
adminUsername, groupAdminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_USER, UsersPanel.class, 
adminUsername, groupAdminUsername);
        }
 
        @Test
        void testAdminUsers1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_USER, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_USER, regularUsername);
        }
 
        @Test
        void testAdminConnections() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_CONNECTION, 
ConnectionsPanel.class, adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_CONNECTION, 
ConnectionsPanel.class, adminUsername);
        }
 
        @Test
        void testAdminConnections1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_CONNECTION, 
groupAdminUsername, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_CONNECTION, 
groupAdminUsername, regularUsername);
        }
 
        @Test
        void testAdminGroups() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_GROUP, GroupsPanel.class, 
adminUsername, groupAdminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_GROUP, GroupsPanel.class, 
adminUsername, groupAdminUsername);
        }
 
        @Test
        void testAdminGroups1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_GROUP, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_GROUP, regularUsername);
        }
 
        @Test
        void testAdminRooms() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_ROOM, RoomsPanel.class, 
adminUsername, groupAdminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_ROOM, RoomsPanel.class, 
adminUsername, groupAdminUsername);
        }
 
        @Test
        void testAdminRooms1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_ROOM, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_ROOM, regularUsername);
        }
 
        @Test
        void testAdminConfigs() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_CONFIG, ConfigsPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_CONFIG, ConfigsPanel.class, 
adminUsername);
        }
 
        @Test
        void testAdminConfigs1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_CONFIG, 
groupAdminUsername, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_CONFIG, 
groupAdminUsername, regularUsername);
        }
 
        @Test
        void testAdminLang() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_LANG, LangPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_LANG, LangPanel.class, 
adminUsername);
        }
 
        @Test
        void testAdminLang1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_LANG, groupAdminUsername, 
regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_LANG, groupAdminUsername, 
regularUsername);
        }
 
        @Test
        void testAdminLdap() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_LDAP, LdapsPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_LDAP, LdapsPanel.class, 
adminUsername);
        }
 
        @Test
        void testAdminLdap1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_LDAP, groupAdminUsername, 
regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_LDAP, groupAdminUsername, 
regularUsername);
        }
 
        @Test
        void testAdminOauth() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_OAUTH2, OAuthPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_OAUTH2, OAuthPanel.class, 
adminUsername);
        }
 
        @Test
        void testAdminOauth1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_OAUTH2, 
groupAdminUsername, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_OAUTH2, 
groupAdminUsername, regularUsername);
        }
 
        @Test
        void testAdminBackup() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_BACKUP, BackupPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_BACKUP, BackupPanel.class, 
adminUsername);
        }
 
        @Test
        void testAdminBackup1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_BACKUP, 
groupAdminUsername, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_BACKUP, 
groupAdminUsername, regularUsername);
        }
 
        @Test
        void testAdminEmail() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_EMAIL, EmailPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_EMAIL, EmailPanel.class, 
adminUsername);
        }
 
        @Test
        void testAdminEmail1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_EMAIL, groupAdminUsername, 
regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_EMAIL, groupAdminUsername, 
regularUsername);
        }
 
        @Test
        void testAdminExtras() throws OmException {
-               checkArea(AreaKeys.admin, TYPE_EXTRA, ExtraPanel.class, 
adminUsername, groupAdminUsername);
+               checkArea(AreaKeys.ADMIN, TYPE_EXTRA, ExtraPanel.class, 
adminUsername, groupAdminUsername);
        }
 
        @Test
        void testAdminExtras1() throws OmException {
-               checkUnauthArea(AreaKeys.admin, TYPE_EXTRA, regularUsername);
+               checkUnauthArea(AreaKeys.ADMIN, TYPE_EXTRA, regularUsername);
        }
 
        @Test
        void testAdminBad() throws OmException {
-               checkArea(AreaKeys.admin, "BAD", OmDashboardPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ADMIN, "BAD", OmDashboardPanel.class, 
adminUsername);
        }
 
        private void testRoom(Long id) throws OmException {
-               checkArea(AreaKeys.room, String.valueOf(id), RoomPanel.class, p 
-> {
+               checkArea(AreaKeys.ROOM, String.valueOf(id), RoomPanel.class, p 
-> {
                        RoomPanel rp = (RoomPanel)p.get(PATH_CHILD);
                        
tester.executeBehavior((AbstractAjaxBehavior)rp.get("roomContainer").getBehaviorById(0));
 //room enter
                        tester.assertComponent(PATH_CHILD + 
":roomContainer:wb-area:whiteboard", AbstractWbPanel.class);
@@ -294,7 +294,7 @@ class TestMainAreas extends AbstractWicketTesterTest {
 
        @Test
        void testRoomBad() throws OmException {
-               checkArea(AreaKeys.room, "BAD", OmDashboardPanel.class, 
adminUsername);
+               checkArea(AreaKeys.ROOM, "BAD", OmDashboardPanel.class, 
adminUsername);
        }
 
        @Test
diff --git 
a/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
 
b/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
index e77fb4cf1..8082d9694 100644
--- 
a/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
+++ 
b/openmeetings-web/src/test/java/org/apache/openmeetings/webservice/AbstractWebServiceTest.java
@@ -57,7 +57,7 @@ import org.junit.jupiter.api.Tag;
 import org.junit.jupiter.api.extension.RegisterExtension;
 
 @Tag("webservice")
-public class AbstractWebServiceTest {
+public abstract class AbstractWebServiceTest {
        private static final String HOST = "localhost";
        private static final String CONTEXT = "/openmeetings";
        private static int port = 8080;
diff --git 
a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
 
b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
index bc10017f4..19acc7c6c 100644
--- 
a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
+++ 
b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/UserWebService.java
@@ -248,8 +248,8 @@ public class UserWebService extends BaseWebService {
 
                        if (ouser == null) {
                                throw new 
InternalServiceException(UNKNOWN.getMessage());
-                       } else if (ouser instanceof String) {
-                               throw new 
InternalServiceException((String)ouser);
+                       } else if (ouser instanceof String str) {
+                               throw new InternalServiceException(str);
                        }
 
                        User u = (User)ouser;
diff --git 
a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/util/AppointmentListMessageBodyWriter.java
 
b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/util/AppointmentListMessageBodyWriter.java
index 8fa2d0efe..087c1cb22 100644
--- 
a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/util/AppointmentListMessageBodyWriter.java
+++ 
b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/util/AppointmentListMessageBodyWriter.java
@@ -46,8 +46,7 @@ import com.github.openjson.JSONObject;
 public class AppointmentListMessageBodyWriter implements 
MessageBodyWriter<List<AppointmentDTO>> {
        @Override
        public boolean isWriteable(Class<?> clazz, Type type, Annotation[] 
annotations, MediaType mediaType) {
-               if (type instanceof ParameterizedType) {
-                       ParameterizedType pt = (ParameterizedType)type;
+               if (type instanceof ParameterizedType pt) {
                        Type[] args = pt.getActualTypeArguments();
                        if (args != null && args.length == 1) {
                                return AppointmentDTO.class.equals(args[0]);

Reply via email to