diff --git a/guacamole-common/src/main/java/org/apache/guacamole/websocket/GuacamoleWebSocketTunnelEndpoint.java b/guacamole-common/src/main/java/org/apache/guacamole/websocket/GuacamoleWebSocketTunnelEndpoint.java
index c16f506..0e02622 100644
--- a/guacamole-common/src/main/java/org/apache/guacamole/websocket/GuacamoleWebSocketTunnelEndpoint.java
+++ b/guacamole-common/src/main/java/org/apache/guacamole/websocket/GuacamoleWebSocketTunnelEndpoint.java
@@ -99,12 +99,12 @@
      * @param session
      *     The outbound WebSocket connection to close.
      *
-     * @param guac_status
+     * @param guacStatus
      *     The status to use for the connection.
      */
-    private void closeConnection(Session session, GuacamoleStatus guac_status) {
-        closeConnection(session, guac_status.getGuacamoleStatusCode(),
-                guac_status.getWebSocketCode());
+    private void closeConnection(Session session, GuacamoleStatus guacStatus) {
+        closeConnection(session, guacStatus.getGuacamoleStatusCode(),
+                guacStatus.getWebSocketCode());
     }
 
     /**
diff --git a/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty8/GuacamoleWebSocketTunnelServlet.java b/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty8/GuacamoleWebSocketTunnelServlet.java
index f1d3b63..e5c5db9 100644
--- a/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty8/GuacamoleWebSocketTunnelServlet.java
+++ b/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty8/GuacamoleWebSocketTunnelServlet.java
@@ -81,14 +81,14 @@
      * @param connection
      *     The WebSocket connection to close.
      *
-     * @param guac_status
+     * @param guacStatus
      *     The status to send.
      */
     private static void closeConnection(Connection connection,
-            GuacamoleStatus guac_status) {
+            GuacamoleStatus guacStatus) {
 
-        closeConnection(connection, guac_status.getGuacamoleStatusCode(),
-                guac_status.getWebSocketCode());
+        closeConnection(connection, guacStatus.getGuacamoleStatusCode(),
+                guacStatus.getWebSocketCode());
 
     }
 
diff --git a/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty9/GuacamoleWebSocketTunnelListener.java b/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty9/GuacamoleWebSocketTunnelListener.java
index 9afaae7..0594d06 100644
--- a/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty9/GuacamoleWebSocketTunnelListener.java
+++ b/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/jetty9/GuacamoleWebSocketTunnelListener.java
@@ -90,14 +90,14 @@
      * @param session
      *     The outbound WebSocket connection to close.
      *
-     * @param guac_status
+     * @param guacStatus
      *     The status to send.
      */
     private void closeConnection(Session session,
-            GuacamoleStatus guac_status) {
+            GuacamoleStatus guacStatus) {
 
-        closeConnection(session, guac_status.getGuacamoleStatusCode(),
-                guac_status.getWebSocketCode());
+        closeConnection(session, guacStatus.getGuacamoleStatusCode(),
+                guacStatus.getWebSocketCode());
 
     }
 
diff --git a/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/tomcat/GuacamoleWebSocketTunnelServlet.java b/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/tomcat/GuacamoleWebSocketTunnelServlet.java
index 5c4dfac..a2e8b39 100644
--- a/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/tomcat/GuacamoleWebSocketTunnelServlet.java
+++ b/guacamole/src/main/java/org/apache/guacamole/tunnel/websocket/tomcat/GuacamoleWebSocketTunnelServlet.java
@@ -91,14 +91,14 @@
      * @param outbound
      *     The outbound WebSocket connection to close.
      *
-     * @param guac_status
+     * @param guacStatus
      *     The status to send.
      */
     private void closeConnection(WsOutbound outbound,
-            GuacamoleStatus guac_status) {
+            GuacamoleStatus guacStatus) {
 
-        closeConnection(outbound, guac_status.getGuacamoleStatusCode(),
-                guac_status.getWebSocketCode());
+        closeConnection(outbound, guacStatus.getGuacamoleStatusCode(),
+                guacStatus.getWebSocketCode());
 
     }
 
