Announcement Announcement Module
Collapse
No announcement yet.
Why is there Interception Advisor in your Design? Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Why is there Interception Advisor in your Design?

    Hi Rod,
    What is the significant of the Interception Advisor in your design ?
    Aspect does contain the Advice and PointCut , so I can understand the PontCut Advisor in your design . About Introduction Advisor and the Interception I can find any sort of Mapping .
    Vicky

  • #2
    IntroductionAdvisor

    Does your question relate to IntroductionAdvisor? That is used for "introductions"--causing a proxied object to implement one or more additional interfaces. We need a separate Advisor for that as an introduction doesn't need a full pointcut--no Method matching is required, only class filtering.

    Please see the AOP Chapter in the Reference Manual.

    Comment


    • #3
      Problem at http://opensource.objectsbydesign.com/spring/inde

      Actually I was trying to figure the design from the class diagram at the http://opensource.objectsbydesign.com/spring/index.html .If you view the aop block there you will find the Advisor with three types as
      1) PointcutAdvisor
      2) IntroductionAdvisor
      3) InterceptionAdvisor
      My question was pertaining the need of the third type . From the latest source code it seems there is no InterceptionAdvisor .
      Can you clear these discrepencies ?
      I have spend a lot of time in analysing the class diagram from objectsbydesign but it seems they have not updated the class diagram for the latest spring .

      Comment


      • #4
        Class diagram

        Indeed: that interface was removed some time ago, but unfortunately their UML diagrams are out of date. We should ask them to update or remove them.

        Comment


        • #5
          Re: IntroductionAdvisor

          Originally posted by Rod Johnson
          Does your question relate to IntroductionAdvisor? That is used for "introductions"--causing a proxied object to implement one or more additional interfaces. We need a separate Advisor for that as an introduction doesn't need a full pointcut--no Method matching is required, only class filtering.

          Please see the AOP Chapter in the Reference Manual.
          Rod I have not been able to understand the Advisor types , what I can understand is that
          1) The Spring Advisor does contain the Advice .
          2) There are two types which are provided by you the Introduction Advisor and the PointCutAdvisor .

          And the proxy which is returned from the ProxyFactoryBean will get the advisors/intereceptor from the chain . The wrap from DefaultAdvisorAdapterRegistry does wrap the interceptor as the DefaultPointCutAdvisor .
          I can understand the flow , still need to undersand it in depth .

          As the Advisor are the Aspects in the Spring . The Aspect does contain the pointcut and the Advise , so why the Advisor does not contain the Pointcut as the Attribute ?
          You have included the PointcutAdvisor which does have both the Advice and the pointcut .
          Introduction Advisor does not match the definition of the Aspect as it does not contain the Pointcut , although it does contain the types which are present in the pointcut ?
          Can you explain the design in a detail ? I have referred your all the books also , but could not understand the Advisor design ?

          Regards
          Vicky

          Comment


          • #6
            Changes

            I see in the docs as well as the above referenced class diagrams that the InterceptionAdvisor still exists. Any one know when either of these resources might be changed to reflect the current api?

            Comment

            Working...
            X