1 /* 2 * @(#)DiagnosticListener.java 1.4 06/03/20 3 * 4 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 5 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. 6 */ 7 8 package javax.tools; 9 10 /** 11 * Interface for receiving diagnostics from tools. 12 * 13 * @param <S> the type of source objects used by diagnostics received 14 * by this listener 15 * 16 * @author Jonathan Gibbons 17 * @author Peter von der Ahé 18 * @since 1.6 19 */ 20 public interface DiagnosticListener<S> { 21 /** 22 * Invoked when a problem is found. 23 * 24 * @param diagnostic a diagnostic representing the problem that 25 * was found 26 * @throws NullPointerException if the diagnostic argument is 27 * {@code null} and the implementation cannot handle {@code null} 28 * arguments 29 */ 30 void report(Diagnostic<? extends S> diagnostic); 31 } 32