Yes, the difference is in the weaving

  | excecution(org.blah.Blah->new(int))
  | 
becomes a ConstructorInvocation


  | excecution(org.blah.Blah->new(boolean))
  | 
becomes a ConstructionInvocation

Once we weave

  | class Blah{
  |    Blah(int i){
  |      //Normal code
  |    }
  | 
  |    Blah(boolean b){
  |      //Normal code
  |    }
  | }
  | 


  | class Blah{
  |    
  |    static Blah_new(int i){
  |       //Hooks for AOP creating a ConstructorInvocation, eventually calling 
new Blah(i)
  |    }
  | 
  |    Blah(int i){
  |      //Normal code
  |    }
  | 
  |    Blah(boolean b){
  |      //Normal code
  |      
  |      //Hooks for AOP with a ConstructionInvocation
  |    }
  | }
  | 


For ConstructorInvocation to work we need to make sure that everyone who calls 
new Blah(int), calls Blah.Blah_new(int) instead. So ConstructionInvocation can 
be more efficient, but is triggered at a slightly different time.


View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3961839#3961839

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3961839
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to