private void updateService(final long serviceID, @Nonnull final String subdomain, @Nullable final String description) {
        Connection con = null;
        PreparedStatement pstmt = null;
        try {
            con = DbConnectionManager.getConnection();
            pstmt = con.prepareStatement(UPDATE_SERVICE);
            pstmt.setString(1, subdomain);
            if (description != null) {
                pstmt.setString(2, description);
            }
            else {
                pstmt.setNull(2, Types.VARCHAR);
            }
            pstmt.setLong(3, serviceID);
            pstmt.executeUpdate();
            Log.debug("Updated MUC service '{}' with database ID {}", subdomain, serviceID);
        }
        catch (SQLException e) {
            Log.error("A database exception occurred while trying to update service with ID {} in the database.", serviceID, e);
        }
        finally {
            DbConnectionManager.closeConnection(pstmt, con);
        }
    }
Updates an existing service's subdomain and description in the database.

@param serviceID ID of the service to update.
@param subdomain Subdomain to set service to.
@param description Description of MUC service. Can be null for default description.
xmppserver/src/main/java/org/jivesoftware/openfire/muc/MultiUserChatManager.java