Browse Source

Compare Kind references before checking log levels

Assuming reference comparisons are much quicker than checking
likely-nested logger levels, perform the former first.

Also, since the reference can match only one of the instances,
use "else if" to short-circuit the search.
pull/252/merge
David Harkness 12 years ago committed by Phillip Webb
parent
commit
801f196de0
  1. 26
      spring-aop/src/main/java/org/springframework/aop/aspectj/AspectJWeaverMessageHandler.java

26
spring-aop/src/main/java/org/springframework/aop/aspectj/AspectJWeaverMessageHandler.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2012 the original author or authors. * Copyright 2002-2013 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -51,36 +51,32 @@ public class AspectJWeaverMessageHandler implements IMessageHandler {
public boolean handleMessage(IMessage message) throws AbortException { public boolean handleMessage(IMessage message) throws AbortException {
Kind messageKind = message.getKind(); Kind messageKind = message.getKind();
if (LOGGER.isDebugEnabled() || LOGGER.isTraceEnabled()) { if (messageKind == IMessage.DEBUG) {
if (messageKind == IMessage.DEBUG) { if (LOGGER.isDebugEnabled() || LOGGER.isTraceEnabled()) {
LOGGER.debug(makeMessageFor(message)); LOGGER.debug(makeMessageFor(message));
return true; return true;
} }
} }
else if ((messageKind == IMessage.INFO) || (messageKind == IMessage.WEAVEINFO)) {
if (LOGGER.isInfoEnabled()) { if (LOGGER.isInfoEnabled()) {
if ((messageKind == IMessage.INFO) || (messageKind == IMessage.WEAVEINFO)) {
LOGGER.info(makeMessageFor(message)); LOGGER.info(makeMessageFor(message));
return true; return true;
} }
} }
else if (messageKind == IMessage.WARNING) {
if (LOGGER.isWarnEnabled()) { if (LOGGER.isWarnEnabled()) {
if (messageKind == IMessage.WARNING) {
LOGGER.warn(makeMessageFor(message)); LOGGER.warn(makeMessageFor(message));
return true; return true;
} }
} }
else if (messageKind == IMessage.ERROR) {
if (LOGGER.isErrorEnabled()) { if (LOGGER.isErrorEnabled()) {
if (messageKind == IMessage.ERROR) {
LOGGER.error(makeMessageFor(message)); LOGGER.error(makeMessageFor(message));
return true; return true;
} }
} }
else if (messageKind == IMessage.ABORT) {
if (LOGGER.isFatalEnabled()) { if (LOGGER.isFatalEnabled()) {
if (messageKind == IMessage.ABORT) {
LOGGER.fatal(makeMessageFor(message)); LOGGER.fatal(makeMessageFor(message));
return true; return true;
} }

Loading…
Cancel
Save