Class ControllerConstructorInterceptor

java.lang.Object
org.apache.skywalking.apm.plugin.spring.mvc.v6.ControllerConstructorInterceptor
All Implemented Interfaces:
org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceConstructorInterceptor

public class ControllerConstructorInterceptor extends Object implements org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceConstructorInterceptor
The ControllerConstructorInterceptor intercepts the Controller's constructor, in order to acquire the mapping annotation, if exist.

But, you can see we only use the first mapping value, Why?

Right now, we intercept the controller by annotation as you known, so we CAN'T know which uri patten is actually matched. Even we know, that costs a lot.

If we want to resolve that, we must intercept the Spring MVC core codes, that is not a good choice for now.

Comment by @wu-sheng

  • Constructor Details

    • ControllerConstructorInterceptor

      public ControllerConstructorInterceptor()
  • Method Details

    • onConstruct

      public void onConstruct(org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.EnhancedInstance objInst, Object[] allArguments)
      Specified by:
      onConstruct in interface org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstanceConstructorInterceptor