protected Object [ ] getParameterValues ( Object specialVal , BeanManagerImpl manager , CreationalContext < ? > ctx , CreationalContext < ? > transientReferenceContext ) { if ( getInjectionPoints ( ) . isEmpty ( ) ) { if ( specialInjectionPointIndex == - 1 ) { return Arrays2 . EMPTY_ARRAY ; } else { return new Object [ ] { specialVal } ; } } Object [ ] parameterValues = new Object [ getParameterInjectionPoints ( ) . size ( ) ] ; List < ParameterInjectionPoint < ? , X > > parameters = getParameterInjectionPoints ( ) ; for ( int i = 0 ; i < parameterValues . length ; i ++ ) { ParameterInjectionPoint < ? , ? > param = parameters . get ( i ) ; if ( i == specialInjectionPointIndex ) { parameterValues [ i ] = specialVal ; } else if ( hasTransientReferenceParameter && param . getAnnotated ( ) . isAnnotationPresent ( TransientReference . class ) ) { parameterValues [ i ] = param . getValueToInject ( manager , transientReferenceContext ) ; } else { parameterValues [ i ] = param . getValueToInject ( manager , ctx ) ; } } return parameterValues ; }
Helper method for getting the current parameter values from a list of annotated parameters .