com.groupbyinc.common.jackson.databind.util.Annotations Maven / Gradle / Ivy
package com.fasterxml.jackson.databind.util;
import java.lang.annotation.Annotation;
/**
* Interface that defines interface for accessing contents of a
* collection of annotations. This is needed when introspecting
* annotation-based features from different kinds of things, not
* just objects that Java Reflection interface exposes.
*
* Standard mutable implementation is {@link com.fasterxml.jackson.databind.introspect.AnnotationMap}
*/
public interface Annotations
{
/**
* Main access method used to find value for given annotation.
*/
public A get(Class cls);
/**
* @since 2.9
*/
public boolean has(Class> cls);
/**
* @since 2.9
*/
public boolean hasOneOf(Class extends Annotation>[] annoClasses);
/**
* Returns number of annotation entries in this collection.
*/
public int size();
}