Example usage for org.springframework.aop.interceptor CustomizableTraceInterceptor PLACEHOLDER_ARGUMENT_TYPES

List of usage examples for org.springframework.aop.interceptor CustomizableTraceInterceptor PLACEHOLDER_ARGUMENT_TYPES

Introduction

In this page you can find the example usage for org.springframework.aop.interceptor CustomizableTraceInterceptor PLACEHOLDER_ARGUMENT_TYPES.

Prototype

String PLACEHOLDER_ARGUMENT_TYPES

To view the source code for org.springframework.aop.interceptor CustomizableTraceInterceptor PLACEHOLDER_ARGUMENT_TYPES.

Click Source Link

Document

The $[argumentTypes] placeholder.

Usage

From source file:org.springframework.aop.interceptor.CustomizableTraceInterceptorTests.java

@Test
public void testSunnyDayPathLogsCorrectlyWithPrettyMuchAllPlaceholdersMatching() throws Throwable {

    MethodInvocation methodInvocation = mock(MethodInvocation.class);

    given(methodInvocation.getMethod()).willReturn(String.class.getMethod("toString", new Class[0]));
    given(methodInvocation.getThis()).willReturn(this);
    given(methodInvocation.getArguments()).willReturn(new Object[] { "$ One \\$", new Long(2) });
    given(methodInvocation.proceed()).willReturn("Hello!");

    Log log = mock(Log.class);
    given(log.isTraceEnabled()).willReturn(true);

    CustomizableTraceInterceptor interceptor = new StubCustomizableTraceInterceptor(log);
    interceptor.setEnterMessage(new StringBuffer().append("Entering the '")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_METHOD_NAME).append("' method of the [")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_TARGET_CLASS_NAME)
            .append("] class with the following args (")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_ARGUMENTS).append(") and arg types (")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_ARGUMENT_TYPES).append(").").toString());
    interceptor.setExitMessage(new StringBuffer().append("Exiting the '")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_METHOD_NAME).append("' method of the [")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_TARGET_CLASS_SHORT_NAME)
            .append("] class with the following args (")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_ARGUMENTS).append(") and arg types (")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_ARGUMENT_TYPES).append("), returning '")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_RETURN_VALUE).append("' and taking '")
            .append(CustomizableTraceInterceptor.PLACEHOLDER_INVOCATION_TIME).append("' this long.")
            .toString());//w  w  w .j a  v  a2 s .  co  m
    interceptor.invoke(methodInvocation);

    verify(log, times(2)).trace(anyString());
}