Here you can find the source of getMethodsAnnotatedWith(Class extends Annotation> ann, Object o)
public static Collection<Method> getMethodsAnnotatedWith(Class<? extends Annotation> ann, Object o)
//package com.java2s; /*/*from ww w . j ava 2 s .c om*/ * Copyright (c) 2004-2016 Universidade do Porto - Faculdade de Engenharia * Laborat?rio de Sistemas e Tecnologia Subaqu?tica (LSTS) * All rights reserved. * Rua Dr. Roberto Frias s/n, sala I203, 4200-465 Porto, Portugal * * This file is part of Neptus, Command and Control Framework. * * Commercial Licence Usage * Licencees holding valid commercial Neptus licences may use this file * in accordance with the commercial licence agreement provided with the * Software or, alternatively, in accordance with the terms contained in a * written agreement between you and Universidade do Porto. For licensing * terms, conditions, and further information contact lsts@fe.up.pt. * * European Union Public Licence - EUPL v.1.1 Usage * Alternatively, this file may be used under the terms of the EUPL, * Version 1.1 only (the "Licence"), appearing in the file LICENCE.md * included in the packaging of this file. You may not use this work * except in compliance with the Licence. Unless required by applicable * law or agreed to in writing, software distributed under the Licence is * distributed on an "AS IS" basis, WITHOUT WARRANTIES OR CONDITIONS OF * ANY KIND, either express or implied. See the Licence for the specific * language governing permissions and limitations at * http://ec.europa.eu/idabc/eupl.html. * * For more information please see <http://lsts.fe.up.pt/neptus>. * * Author: * 20??/??/?? */ import java.lang.annotation.Annotation; import java.lang.reflect.Method; import java.util.Collection; import java.util.HashSet; public class Main { public static Collection<Method> getMethodsAnnotatedWith(Class<? extends Annotation> ann, Object o) { Class<?> c; if (o instanceof Class<?>) c = (Class<?>) o; else c = o.getClass(); HashSet<Method> methods = new HashSet<>(); for (Method m : c.getMethods()) { if (m.getAnnotation(ann) != null) methods.add(m); } for (Method m : c.getDeclaredMethods()) { if (m.getAnnotation(ann) != null) { m.setAccessible(true); methods.add(m); } } return methods; } }