com.wesleyhome.dao.processor.AnnotationHelper Maven / Gradle / Ivy
/*
* @(#)AnnotationHelper.java
*
* (C) Copyright 2014 by Travelers
* All Rights Reserved.
*
* This software is the confidential and proprietary information
* of the Travelers Corporation. ("Confidential Information").
* Redistribution of the source code or binary form is not permitted
* without prior authorization from Travelers.
*/
package com.wesleyhome.dao.processor;
import java.lang.annotation.Annotation;
import java.util.List;
import javax.lang.model.element.AnnotationMirror;
import javax.lang.model.element.AnnotationValue;
import javax.lang.model.element.Element;
import javax.lang.model.element.TypeElement;
/**
* The AnnotationHelper
class is a
*
* @author
* @since
*/
public interface AnnotationHelper {
Object getAnnotationValue(Element element, Class extends Annotation> annotationClass, String keyName);
Object getAnnotationValue(Element element, String clazzName, String keyName);
AnnotationMirror getAnnotationMirror(Element typeElement, Class extends Annotation> annotationClass);
AnnotationMirror getAnnotationMirror(Element typeElement, String clazzName);
AnnotationValue getAnnotationValue(AnnotationMirror annotationMirror, String key);
List getAnnotatedElements(TypeElement typeElement, Class extends Annotation> annotation);
Object getRealAnnotationValue(AnnotationMirror mirror, String keyName);
}