package org.jboss.resteasy.util;

import java.lang.annotation.Annotation;

public class AnnotationResolver {
    public static Class<?> getClassWithAnnotation(Class<?> clazz, Class<? extends Annotation> annotation) {
        if (clazz.isAnnotationPresent(annotation)) {
            return clazz;
        }
        for (Class<?> intf : clazz.getInterfaces()) {
            if (intf.isAnnotationPresent(annotation)) {
                return intf;
            }
        }
        Class<?> superClass = clazz.getSuperclass();
        if (superClass != Object.class && superClass != null) {
            return getClassWithAnnotation(superClass, annotation);
        }
        return null;

    }
}
