public MethodInjectionPoint buildInjectionPoint ( ASTType rootContainingType , ASTType containingType , ASTMethod astMethod , AnalysisContext context ) { MethodInjectionPoint methodInjectionPoint = new MethodInjectionPoint ( rootContainingType , containingType , astMethod ) ; methodInjectionPoint . addThrows ( astMethod . getThrowsTypes ( ) ) ; List < ASTAnnotation > methodAnnotations = new ArrayList < ASTAnnotation > ( ) ; //bindingAnnotations for single parameter from method level if ( astMethod . getParameters ( ) . size ( ) == 1 ) { methodAnnotations . addAll ( astMethod . getAnnotations ( ) ) ; } for ( ASTParameter astParameter : astMethod . getParameters ( ) ) { List < ASTAnnotation > parameterAnnotations = new ArrayList < ASTAnnotation > ( methodAnnotations ) ; parameterAnnotations . addAll ( astParameter . getAnnotations ( ) ) ; methodInjectionPoint . addInjectionNode ( buildInjectionNode ( parameterAnnotations , astParameter , astParameter . getASTType ( ) , context ) ) ; } return methodInjectionPoint ; }
Build a Method Injection Point from the given ASTMethod