1 16 17 package com.google.inject; 18 19 import com.google.inject.matcher.Matcher; 20 import com.google.inject.util.Objects; 21 import java.lang.reflect.Method ; 22 import java.util.Arrays ; 23 import java.util.List ; 24 import org.aopalliance.intercept.MethodInterceptor; 25 26 31 class MethodAspect { 32 33 final Matcher<? super Class <?>> classMatcher; 34 final Matcher<? super Method > methodMatcher; 35 final List <MethodInterceptor> interceptors; 36 37 MethodAspect(Matcher<? super Class <?>> classMatcher, 38 Matcher<? super Method > methodMatcher, MethodInterceptor... interceptors) { 39 this.classMatcher = Objects.nonNull(classMatcher, "class matcher"); 40 this.methodMatcher = Objects.nonNull(methodMatcher, "method matcher"); 41 this.interceptors 42 = Arrays.asList(Objects.nonNull(interceptors, "interceptors")); 43 } 44 45 boolean matches(Class <?> clazz) { 46 return classMatcher.matches(clazz); 47 } 48 49 boolean matches(Method method) { 50 return methodMatcher.matches(method); 51 } 52 53 List <MethodInterceptor> interceptors() { 54 return interceptors; 55 } 56 } 57 | Popular Tags |