code: @SuppressWarnings("unchecked")
      public <A extends Annotation> A getAnnotation(final Method method, final Class<A> annClas) throws AnnotationReadException {
          
          final Class<?> clazz = method.getDeclaringClass();
          
          if(xmlInfo != null && xmlInfo.containsClassInfo(clazz.getName())) {
              final ClassInfo classInfo = xmlInfo.getClassInfo(clazz.getName());
              
              if(classInfo.containsMethodInfo(method.getName())) {
                  MethodInfo methodInfo = classInfo.getMethodInfo(method.getName());
                  if(methodInfo != null && methodInfo.containsAnnotationInfo(annClas.getName())) {
                      AnnotationInfo annInfo = methodInfo.getAnnotationInfo(annClas.getName());
                      try {
                          return (A)annotationBuilder.buildAnnotation(Class.forName(annInfo.getClassName()), annInfo);
                      } catch (ClassNotFoundException e) {
                          throw new AnnotationReadException(String.format("not found class '%s'", annInfo.getClassName()), e);
                      }
                  }
              }
          }
          return method.getAnnotation(annClas);
      }
docs: メソッドに付与された指定したアノテーションを取得する。
  
  @param method 取得対象のメソッド。
  @param annClas 取得対象のアノテーションのタイプ。
  @return
  @throws AnnotationReadException