code: public void updateDebug(Boolean debug, Boolean database, Boolean exception, Boolean tracing, Boolean dump, Boolean timer, Boolean implicitAccess, Boolean queryUsage)
  	    throws SecurityException {
  	checkWriteAccess();
  	boolean hasAccess = ConfigWebUtil.hasAccess(config, SecurityManager.TYPE_DEBUGGING);
  	if (!hasAccess) throw new SecurityException("no access to change debugging settings");
  	Element debugging = _getRootElement("debugging");
  
  	if (debug != null) debugging.setAttribute("debug", Caster.toString(debug.booleanValue()));
  	else debugging.removeAttribute("debug");
  
  	if (database != null) debugging.setAttribute("database", Caster.toString(database.booleanValue()));
  	else debugging.removeAttribute("database");
  
  	if (exception != null) debugging.setAttribute("exception", Caster.toString(exception.booleanValue()));
  	else debugging.removeAttribute("exception");
  
  	if (tracing != null) debugging.setAttribute("tracing", Caster.toString(tracing.booleanValue()));
  	else debugging.removeAttribute("tracing");
  
  	if (dump != null) debugging.setAttribute("dump", Caster.toString(dump.booleanValue()));
  	else debugging.removeAttribute("dump");
  
  	if (timer != null) debugging.setAttribute("timer", Caster.toString(timer.booleanValue()));
  	else debugging.removeAttribute("timer");
  
  	if (implicitAccess != null) debugging.setAttribute("implicit-access", Caster.toString(implicitAccess.booleanValue()));
  	else debugging.removeAttribute("implicit-access");
  
  	if (queryUsage != null) debugging.setAttribute("query-usage", Caster.toString(queryUsage.booleanValue()));
  	else debugging.removeAttribute("query-usage");
  
      }
docs: updates if debugging or not
  
  @param debug if value is null server setting is used
  @throws SecurityException