diff options
Diffstat (limited to 'qpid/java/broker-plugins/management-http/src')
3 files changed, 15 insertions, 7 deletions
diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java index 563e49d43f..0ed97ac3a0 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java @@ -137,7 +137,7 @@ public class HttpManagementUtil // Cause the user logon to be logged. session.setAttribute(ATTR_LOGIN_LOGOUT_REPORTER, - new LoginLogoutReporter(subject, getBroker(session.getServletContext()).getEventLogger())); + new LoginLogoutReporter(subject, getBroker(session.getServletContext()))); } public static Subject tryToAuthenticate(HttpServletRequest request, HttpManagementConfiguration managementConfig) diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporter.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporter.java index b980b83510..4e55463d45 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporter.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporter.java @@ -29,6 +29,7 @@ import javax.servlet.http.HttpSessionBindingListener; import org.apache.log4j.Logger; import org.apache.qpid.server.logging.EventLogger; +import org.apache.qpid.server.logging.EventLoggerProvider; import org.apache.qpid.server.logging.messages.ManagementConsoleMessages; import org.apache.qpid.server.security.auth.AuthenticatedPrincipal; @@ -42,14 +43,14 @@ public class LoginLogoutReporter implements HttpSessionBindingListener private static final Logger LOGGER = Logger.getLogger(LoginLogoutReporter.class); private final Subject _subject; private final Principal _principal; - private final EventLogger _eventLogger; + private final EventLoggerProvider _eventLoggerProvider; - public LoginLogoutReporter(Subject subject, EventLogger eventLogger) + public LoginLogoutReporter(Subject subject, EventLoggerProvider eventLoggerProvider) { super(); _subject = subject; _principal = AuthenticatedPrincipal.getAuthenticatedPrincipalFromSubject(_subject); - _eventLogger = eventLogger; + _eventLoggerProvider = eventLoggerProvider; } @Override @@ -76,7 +77,7 @@ public class LoginLogoutReporter implements HttpSessionBindingListener @Override public Void run() { - _eventLogger.message(ManagementConsoleMessages.OPEN(_principal.getName())); + getEventLogger().message(ManagementConsoleMessages.OPEN(_principal.getName())); return null; } }); @@ -94,10 +95,14 @@ public class LoginLogoutReporter implements HttpSessionBindingListener @Override public Void run() { - _eventLogger.message(ManagementConsoleMessages.CLOSE(_principal.getName())); + getEventLogger().message(ManagementConsoleMessages.CLOSE(_principal.getName())); return null; } }); } + public EventLogger getEventLogger() + { + return _eventLoggerProvider.getEventLogger(); + } } diff --git a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporterTest.java b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporterTest.java index 58bd42ef5f..45fa3fabd0 100644 --- a/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporterTest.java +++ b/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/session/LoginLogoutReporterTest.java @@ -29,6 +29,7 @@ import static org.mockito.Mockito.when; import javax.security.auth.Subject; import org.apache.qpid.server.logging.EventLogger; +import org.apache.qpid.server.logging.EventLoggerProvider; import org.apache.qpid.server.logging.LogMessage; import org.apache.qpid.server.logging.MessageLogger; import org.apache.qpid.server.security.auth.AuthenticatedPrincipal; @@ -51,7 +52,9 @@ public class LoginLogoutReporterTest extends TestCase when(_logger.isEnabled()).thenReturn(true); when(_logger.isMessageEnabled(anyString())).thenReturn(true); EventLogger eventLogger = new EventLogger(_logger); - _loginLogoutReport = new LoginLogoutReporter(_subject, eventLogger); + EventLoggerProvider provider = mock(EventLoggerProvider.class); + when(provider.getEventLogger()).thenReturn(eventLogger); + _loginLogoutReport = new LoginLogoutReporter(_subject, provider); } public void testLoginLogged() |
