package com.fasterxml.jackson.databind.introspect;

import java.lang.reflect.Method;
import java.util.*;

Simple helper class used to keep track of collection of AnnotatedMethods, accessible by lookup. Lookup is usually needed for augmenting and overriding annotations.
/** * Simple helper class used to keep track of collection of * {@link AnnotatedMethod}s, accessible by lookup. Lookup * is usually needed for augmenting and overriding annotations. */
public final class AnnotatedMethodMap implements Iterable<AnnotatedMethod> { protected Map<MemberKey,AnnotatedMethod> _methods; public AnnotatedMethodMap() { }
Since:2.9
/** * @since 2.9 */
public AnnotatedMethodMap(Map<MemberKey,AnnotatedMethod> m) { _methods = m; } public int size() { return (_methods == null) ? 0 : _methods.size(); } public AnnotatedMethod find(String name, Class<?>[] paramTypes) { if (_methods == null) { return null; } return _methods.get(new MemberKey(name, paramTypes)); } public AnnotatedMethod find(Method m) { if (_methods == null) { return null; } return _methods.get(new MemberKey(m)); } /* /********************************************************** /* Iterable implementation (for iterating over values) /********************************************************** */ @Override public Iterator<AnnotatedMethod> iterator() { if (_methods == null) { return Collections.emptyIterator(); } return _methods.values().iterator(); } }