Github user PhantomYdn commented on the pull request:

    https://github.com/apache/wicket/pull/164#issuecomment-217828319
  
    I little bit incorrect conclusions...
    
    Regarding injections: it's possible to do in many interesting way - for 
example you can even change passed arguments to a method/constructor. Yes - 
there is no annotations to automate injections, but still it's extremely easy 
to do. All injectors use the same approach as available for javassist too: 
proxies, deep reflection and etc. 
    And one more point: I wouldn't say that injection is key point for 
profiler. Last one should be transparent for application's logic. So profiler 
should not change application's fields, arguments and etc. It should be one 
level up.
    
    There is not need to compile core classes: we are profiling custom app and 
not core. So the main target for instrumenting, should be custom code, but not 
core themselves. There is quite thin boundary: if you check my code - it's 
dynamically overrides core methods in a custom class. So even pure Page's core 
methods can be profiled.
    
    Regarding support of Component's: it's really depends on how IClassResolver 
is being used in wicket. If it will allow: it will be a good place for 
instrumenting anything from custom app logic.  
    
    The following statement is strange, imho:
    
    > We don't want to manipulate or compile classes with a behavior which is 
not needed in a system which do not use metrics.
    
    Strange, because AspectJ manipulates/instruments classes with a behavior 
which is not needed in a system which do not use metrics. AspectJ and javassist 
use the same way to operate: instrumenting of code.
    
    Btw, I have question regarding AspectJ implementation: java agents has 
ability to be attached remotely to a working java processes. 
http://docs.oracle.com/javase/6/docs/technotes/guides/attach/index.html  
    Is it a case for AspectJ? If it's a case: using agent become actually a 
good pro.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to