You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Clement Escoffier (JIRA)" <ji...@apache.org> on 2010/08/22 16:15:15 UTC

[jira] Resolved: (FELIX-2542) Annotations on methods parameters are not moved on public methods after manipulation

     [ https://issues.apache.org/jira/browse/FELIX-2542?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Clement Escoffier resolved FELIX-2542.
--------------------------------------

    Resolution: Fixed

Fixed in trunk.

Parameter Annotations were not moved to the interceptor method during the annotation processing. This is now fixed.
As for method annotations, only annotation visible at runtime are moved, others are ignored.

> Annotations on methods parameters are not moved on public methods after manipulation
> ------------------------------------------------------------------------------------
>
>                 Key: FELIX-2542
>                 URL: https://issues.apache.org/jira/browse/FELIX-2542
>             Project: Felix
>          Issue Type: Bug
>          Components: iPOJO
>    Affects Versions: iPOJO-1.6.0
>         Environment: Win xp, java 1.6
>            Reporter: Nicolas Dumont
>            Assignee: Clement Escoffier
>            Priority: Minor
>             Fix For: iPOJO-1.8.0
>
>
> The iPojo byte code manipulation replace real public method with private one, and annotation on methods are moved to the new public methods. But this behavior is not used for parameters annotations.
> For exemple :
> public class MyClass {
>   @MyAnnotation
>   public void myMethod(@MyParameterAnnotation int param) {
>      //my code here
>  }
> }
> is transformed into:
> public class MyClass {
>   @MyAnnotation
>   public void myMethod(int param) {
>      // iPojo code here
>  }
>   private void _myMethod(@MyParameterAnnotation int param) {
>    // my code here
>  }
> It should have been transformed into:
> public class MyClass {
>   @MyAnnotation
>   public void myMethod(@MyParameterAnnotation int param) {
>      // iPojo code here
>  }
>   private void _myMethod(int param) {
>    // my code here
>  }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.