001package com.ericlam.mc.eld.misc; 002 003import java.util.logging.Logger; 004 005/** 006 * 可用於 debug 的日誌輸出 007 */ 008public interface DebugLogger { 009 010 /** 011 * debug 輸出 012 * @param message 訊息 013 * @param args 訊息參數 MessageFormat 014 */ 015 void debug(String message, Object... args); 016 017 /** 018 * debug 輸出 019 * @param throwable 報錯物件 020 * @param message 訊息 021 * @param args 訊息參數 MessageFormat 022 */ 023 void debug(Throwable throwable, String message, Object... args); 024 025 026 /** 027 * debug 輸出 028 * @param message 訊息 029 * @param args 訊息參數 String.format 030 */ 031 void debugF(String message, Object... args); 032 033 /** 034 * debug 輸出 035 * @param throwable 報錯物件 036 * @param message 訊息 037 * @param args 訊息參數 String.format 038 */ 039 void debugF(Throwable throwable, String message, Object... args); 040 041 /** 042 * debug 輸出 043 * @param throwable 報錯物件 044 */ 045 void debug(Throwable throwable); 046 047 /** 048 * info 輸出 049 * @param message 訊息 050 * @param args 訊息參數 MessageFormat 051 */ 052 void info(String message, Object... args); 053 054 /** 055 * info 輸出 056 * @param throwable 報錯物件 057 * @param message 訊息 058 * @param args 訊息參數 MessageFormat 059 */ 060 void info(Throwable throwable, String message, Object... args); 061 062 063 /** 064 * info 輸出 065 * @param message 訊息 066 * @param args 訊息參數 String.format 067 */ 068 void infoF(String message, Object... args); 069 070 /** 071 * info 輸出 072 * @param throwable 報錯物件 073 * @param message 訊息 074 * @param args 訊息參數 String.format 075 */ 076 void infoF(Throwable throwable, String message, Object... args); 077 078 /** 079 * info 輸出 080 * @param throwable 報錯物件 081 */ 082 void info(Throwable throwable); 083 084 /** 085 * warn 輸出 086 * @param message 訊息 087 * @param args 訊息參數 MessageFormat 088 */ 089 void warn(String message, Object... args); 090 091 /** 092 * warn 輸出 093 * @param throwable 報錯物件 094 * @param message 訊息 095 * @param args 訊息參數 MessageFormat 096 */ 097 void warn(Throwable throwable, String message, Object... args); 098 099 100 /** 101 * warn 輸出 102 * @param message 訊息 103 * @param args 訊息參數 String.format 104 */ 105 void warnF(String message, Object... args); 106 107 /** 108 * warn 輸出 109 * @param throwable 報錯物件 110 * @param message 訊息 111 * @param args 訊息參數 String.format 112 */ 113 void warnF(Throwable throwable, String message, Object... args); 114 115 /** 116 * warn 輸出 117 * @param throwable 報錯物件 118 */ 119 void warn(Throwable throwable); 120 121 /** 122 * 獲取真正的 Logger 123 * @return Logger 124 */ 125 Logger getRealLogger(); 126 127}