private boolean isDefaultInterceptorsExcluded(Method m, EJBInterceptorBinding binding)
    {
        boolean exclude;
        if (ivExcludeDefaultFromClassLevel)
        {
            // Default interceptors excluded as class level, so return true.
            exclude = true;
        }
        else if (binding != null && binding.ivExcludeDefaultLevelInterceptors != null)
        {
            // Assumption is xml overrides annotation, although EJB spec implies
            // interceptor-binding is used to augment annotation.  Not clear what
            // is intended, but we are going to assume xml overrides annotation.
            exclude = binding.ivExcludeDefaultLevelInterceptors;
        }
        else
        {
            // If the module is not metadata complete, then check the annotation
            // to determine whether to exclude default interceptors.
            exclude = !ivMetadataComplete && m.getAnnotation(ExcludeDefaultInterceptors.class) != null;
        }

        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
        {
            Tr.debug(tc, "isDefaultInterceptorsExcluded for " + m.getDeclaringClass() + "." + m.getName()
                         + " returning: " + exclude);
        }
        return exclude;
    }
private boolean isDefaultInterceptorsExcluded ( Method m , EJBInterceptorBinding binding ) { boolean exclude ; if ( ivExcludeDefaultFromClassLevel ) { exclude = true ; } else if ( binding != null && binding . ivExcludeDefaultLevelInterceptors != null ) { exclude = binding . ivExcludeDefaultLevelInterceptors ; } else { exclude = ! ivMetadataComplete && m . getAnnotation ( ExcludeDefaultInterceptors . class ) != null ; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) { Tr . debug ( tc , "isDefaultInterceptorsExcluded for " + m . getDeclaringClass ( ) + "." + m . getName ( ) + " returning: " + exclude ) ; } return exclude ; }
d367572.9 updated for xml and metadata-complete