001/**
002 * Logback: the reliable, generic, fast and flexible logging framework.
003 * Copyright (C) 1999-2015, QOS.ch. All rights reserved.
004 *
005 * This program and the accompanying materials are dual-licensed under
006 * either the terms of the Eclipse Public License v1.0 as published by
007 * the Eclipse Foundation
008 *
009 *   or (per the licensee's choosing)
010 *
011 * under the terms of the GNU Lesser General Public License version 2.1
012 * as published by the Free Software Foundation.
013 */
014package ch.qos.logback.core.joran.spi;
015
016public class NoAutoStartUtil {
017
018    /**
019     * Returns true if the class of the object 'o' passed as parameter is *not*
020     * marked with the NoAutoStart annotation. Return true otherwise.
021     * 
022     * @param o
023     * @return true for classes not marked with the NoAutoStart annotation
024     */
025    static public boolean notMarkedWithNoAutoStart(Object o) {
026        if (o == null) {
027            return false;
028        }
029        Class<?> clazz = o.getClass();
030        NoAutoStart a = clazz.getAnnotation(NoAutoStart.class);
031        return a == null;
032    }
033
034}