// $Id: Log.java,v 1.4 1999/06/05 23:29:12 greear Exp $ // $Revision: 1.4 $ $Author: greear $ $Date: 1999/06/05 23:29:12 $ // //Hegemon Client Code: Java Client for ScryMUD Server Code //Copyright (C) 1998 Ben Greear // //This program is free software; you can redistribute it and/or //modify it under the terms of the GNU General Public License //as published by the Free Software Foundation; either version 2 //of the License, or (at your option) any later version. // //This program is distributed in the hope that it will be useful, //but WITHOUT ANY WARRANTY; without even the implied warranty of //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //GNU General Public License for more details. // //You should have received a copy of the GNU General Public License //along with this program; if not, write to the Free Software //Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // To contact the Author, Ben Greear: greear@cyberhighway.net, (preferred) // greearb@agcs.com // class Log extends Object { public Log() { flags = ALL; } public static Log instance() { if (self == null) { self = new Log(); }//if return self; } protected void output(String msg) { System.out.println(msg); System.out.flush(); } public void err(String msg) { if ((flags & ERROR) > 0) { output(msg); }//if }//err public void wrn(String msg) { if ((flags & WARNING) > 0) { output(msg); }//if }//wrn public void inf(String msg) { if ((flags & INFO) > 0) { output(msg); }//if }//inf public void init(String msg) { if ((flags & INIT) > 0) { output(msg); }//if }//init public void trc(String msg) { if ((flags & TRACE) > 0) { output(msg); }//if }//trc public void dbg(String msg) { if ((flags & DEBUG) > 0) { output(msg); }//if }//dbg public void io(String msg) { if ((flags & IO) > 0) { output(msg); }//if }//io public void setLevel(int lvl) { output("Changing Logging level to: " + lvl + "\n"); flags = lvl; } public int getLevel() { return flags; } public void setFlag(int flag) { flags |= flag; } public void clearFlag(int flag) { flags &= ~flag; } public void flush() { System.out.flush(); } private static Log self; protected int flags; public static final int ERROR = 1; public static final int WARNING = 2; public static final int INFO = 4; public static final int INIT = 8; public static final int TRACE = 16; public static final int DEBUG = 32; public static final int IO = 64; public static final int ALL = ~0; }