Search in sources :

Example 21 with InterceptorScope

use of com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope in project pinpoint by naver.

the class JavassistMethod method addScopedInterceptor.

@Override
public int addScopedInterceptor(String interceptorClassName, Object[] constructorArgs, String scopeName, ExecutionPolicy executionPolicy) throws InstrumentException {
    Asserts.notNull(interceptorClassName, "interceptorClassName");
    Asserts.notNull(constructorArgs, "constructorArgs");
    Asserts.notNull(scopeName, "scopeName");
    Asserts.notNull(executionPolicy, "executionPolicy");
    final InterceptorScope interceptorScope = this.pluginContext.getInterceptorScope(scopeName);
    return addInterceptor0(interceptorClassName, constructorArgs, interceptorScope, executionPolicy);
}
Also used : InterceptorScope(com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope)

Example 22 with InterceptorScope

use of com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope in project pinpoint by naver.

the class JavassistMethod method resolveScopeInfo.

private ScopeInfo resolveScopeInfo(String interceptorClassName, InterceptorScope scope, ExecutionPolicy policy) {
    final Class<? extends Interceptor> interceptorType = pluginContext.injectClass(declaringClass.getClassLoader(), interceptorClassName);
    if (scope == null) {
        Scope interceptorScope = interceptorType.getAnnotation(Scope.class);
        if (interceptorScope != null) {
            String scopeName = interceptorScope.value();
            scope = pluginContext.getInterceptorScope(scopeName);
            policy = interceptorScope.executionPolicy();
        }
    }
    if (scope == null) {
        policy = null;
    } else if (policy == null) {
        policy = ExecutionPolicy.BOUNDARY;
    }
    return new ScopeInfo(scope, policy);
}
Also used : InterceptorScope(com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope) Scope(com.navercorp.pinpoint.bootstrap.interceptor.annotation.Scope)

Example 23 with InterceptorScope

use of com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope in project pinpoint by naver.

the class JavassistMethod method addScopedInterceptor.

@Override
public int addScopedInterceptor(String interceptorClassName, String scopeName) throws InstrumentException {
    Asserts.notNull(interceptorClassName, "interceptorClassName");
    Asserts.notNull(scopeName, "scopeName");
    final InterceptorScope interceptorScope = this.pluginContext.getInterceptorScope(scopeName);
    return addInterceptor0(interceptorClassName, null, interceptorScope, null);
}
Also used : InterceptorScope(com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope)

Example 24 with InterceptorScope

use of com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope in project pinpoint by naver.

the class ConcurrentPoolTest method testConcurrentPool.

@Test
public void testConcurrentPool() throws Exception {
    InterceptorScopeFactory traceScopeFactory = new InterceptorScopeFactory();
    Pool<String, InterceptorScope> pool = new ConcurrentPool<String, InterceptorScope>(traceScopeFactory);
    final String OBJECT_NAME = "test";
    InterceptorScope addedScope = pool.get(OBJECT_NAME);
    Assert.assertSame(pool.get(OBJECT_NAME), addedScope);
    InterceptorScope exist = pool.get(OBJECT_NAME);
    Assert.assertSame(exist, addedScope);
    InterceptorScope another = pool.get("another");
    Assert.assertNotSame(exist, another);
}
Also used : InterceptorScope(com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope) Test(org.junit.Test)

Aggregations

InterceptorScope (com.navercorp.pinpoint.bootstrap.interceptor.scope.InterceptorScope)24 Scope (com.navercorp.pinpoint.bootstrap.interceptor.annotation.Scope)3 ApiIdAwareAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.ApiIdAwareAroundInterceptor)1 AroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.AroundInterceptor)1 ExceptionHandleApiIdAwareAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.ExceptionHandleApiIdAwareAroundInterceptor)1 ExceptionHandleAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.ExceptionHandleAroundInterceptor)1 ExceptionHandleStaticAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.ExceptionHandleStaticAroundInterceptor)1 Interceptor (com.navercorp.pinpoint.bootstrap.interceptor.Interceptor)1 StaticAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.StaticAroundInterceptor)1 ExceptionHandleScopedApiIdAwareAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.scope.ExceptionHandleScopedApiIdAwareAroundInterceptor)1 ExceptionHandleScopedInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.scope.ExceptionHandleScopedInterceptor)1 ExceptionHandleScopedStaticAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.scope.ExceptionHandleScopedStaticAroundInterceptor)1 ScopedApiIdAwareAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.scope.ScopedApiIdAwareAroundInterceptor)1 ScopedInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.scope.ScopedInterceptor)1 ScopedStaticAroundInterceptor (com.navercorp.pinpoint.bootstrap.interceptor.scope.ScopedStaticAroundInterceptor)1 ObjectFactory (com.navercorp.pinpoint.bootstrap.plugin.ObjectFactory)1 AutoBindingObjectFactory (com.navercorp.pinpoint.profiler.objectfactory.AutoBindingObjectFactory)1 InterceptorArgumentProvider (com.navercorp.pinpoint.profiler.objectfactory.InterceptorArgumentProvider)1 Test (org.junit.Test)1