1 /* 2 * Copyright 2004 Sun Microsystems, Inc. All Rights Reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Sun designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Sun in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 22 * CA 95054 USA or visit www.sun.com if you need additional information or 23 * have any questions. 24 */ 25 26 package com.sun.mirror.apt; 27 28 29 import com.sun.mirror.util.SourcePosition; 30 31 32 /** 33 * A <tt>Messager</tt> provides the way for 34 * an annotation processor to report error messages, warnings, and 35 * other notices. 36 * 37 * @author Joseph D. Darcy 38 * @author Scott Seligman 39 * @since 1.5 40 */ 41 42 public interface Messager { 43 44 /** 45 * Prints an error message. 46 * Equivalent to <tt>printError(null, msg)</tt>. 47 * @param msg the message, or an empty string if none 48 */ 49 void printError(String msg); 50 51 /** 52 * Prints an error message. 53 * @param pos the position where the error occured, or null if it is 54 * unknown or not applicable 55 * @param msg the message, or an empty string if none 56 */ 57 void printError(SourcePosition pos, String msg); 58 59 /** 60 * Prints a warning message. 61 * Equivalent to <tt>printWarning(null, msg)</tt>. 62 * @param msg the message, or an empty string if none 63 */ 64 void printWarning(String msg); 65 66 /** 67 * Prints a warning message. 68 * @param pos the position where the warning occured, or null if it is 69 * unknown or not applicable 70 * @param msg the message, or an empty string if none 71 */ 72 void printWarning(SourcePosition pos, String msg); 73 74 /** 75 * Prints a notice. 76 * Equivalent to <tt>printNotice(null, msg)</tt>. 77 * @param msg the message, or an empty string if none 78 */ 79 void printNotice(String msg); 80 81 /** 82 * Prints a notice. 83 * @param pos the position where the noticed occured, or null if it is 84 * unknown or not applicable 85 * @param msg the message, or an empty string if none 86 */ 87 void printNotice(SourcePosition pos, String msg); 88 }