View Javadoc
1   /*
2    * This file is part of Waarp Project (named also Waarp or GG).
3    *
4    *  Copyright (c) 2019, Waarp SAS, and individual contributors by the @author
5    *  tags. See the COPYRIGHT.txt in the distribution for a full listing of
6    * individual contributors.
7    *
8    *  All Waarp Project is free software: you can redistribute it and/or
9    * modify it under the terms of the GNU General Public License as published by
10   * the Free Software Foundation, either version 3 of the License, or (at your
11   * option) any later version.
12   *
13   * Waarp is distributed in the hope that it will be useful, but WITHOUT ANY
14   * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15   * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16   *
17   *  You should have received a copy of the GNU General Public License along with
18   * Waarp . If not, see <http://www.gnu.org/licenses/>.
19   */
20  
21  package org.waarp.common.logging;
22  
23  /**
24   * Utility class to be used only in classes where WaarpLogger is not allowed
25   */
26  public final class SysErrLogger {
27    /**
28     * FAKE LOGGER used where no LOG could be done
29     */
30    public static final SysErrLogger FAKE_LOGGER = new SysErrLogger();
31  
32    private SysErrLogger() {
33      // Empty
34    }
35  
36    /**
37     * Utility method to log nothing
38     * <p>
39     * Used only in classes where WaarpLogger is not allowed
40     *
41     * @param throwable to log ignore
42     */
43    public final void ignoreLog(final Throwable throwable) {// NOSONAR
44      // Nothing to do
45    }
46  
47    /**
48     * Utility method to log through System.out
49     * <p>
50     * Used only in classes where WaarpLogger is not allowed
51     */
52    public final void sysout() {
53      System.out.println(); // NOSONAR
54    }
55  
56    /**
57     * Utility method to log through System.out
58     * <p>
59     * Used only in classes where WaarpLogger is not allowed
60     *
61     * @param message to write for no error log
62     */
63    public final void sysout(final Object message) {
64      System.out.println(message); // NOSONAR
65    }
66  
67    /**
68     * Utility method to log through System.out
69     *
70     * @param format
71     * @param args
72     */
73    public final void sysoutFormat(final String format, final Object... args) {
74      System.out.format(format, args); // NOSONAR
75    }
76  
77    /**
78     * Utility method to log through System.err
79     * <p>
80     * Used only in classes where WaarpLogger is not allowed
81     *
82     * @param message to write for error
83     */
84    public final void syserrNoLn(final Object message) {
85      System.err.print("ERROR " + message); // NOSONAR
86    }
87  
88    /**
89     * Utility method to log through System.err
90     * <p>
91     * Used only in classes where WaarpLogger is not allowed
92     *
93     * @param message to write for error
94     */
95    public final void syserr(final Object message) {
96      System.err.println("ERROR " + message); // NOSONAR
97    }
98  
99    /**
100    * Utility method to log through System.err the current Stacktrace
101    * <p>
102    * Used only in classes where WaarpLogger is not allowed
103    */
104   public final void syserr() {
105     new RuntimeException("ERROR Stacktrace").printStackTrace(); // NOSONAR
106   }
107 
108   /**
109    * Utility method to log through System.err the current Stacktrace
110    * <p>
111    * Used only in classes where WaarpLogger is not allowed
112    *
113    * @param message to write for error
114    * @param e throw to write as error
115    */
116   public final void syserr(final String message, final Throwable e) {
117     System.err.print("ERROR " + message + ": "); // NOSONAR
118     e.printStackTrace(); // NOSONAR
119   }
120 
121   /**
122    * Utility method to log through System.err the current Stacktrace
123    * <p>
124    * Used only in classes where WaarpLogger is not allowed
125    *
126    * @param e throw to write as error
127    */
128   public final void syserr(final Throwable e) {
129     System.err.print("ERROR: "); // NOSONAR
130     e.printStackTrace(); // NOSONAR
131   }
132 }