mirror of
https://codeberg.org/Mercury-IM/Smack
synced 2024-11-22 06:12:05 +01:00
Add ExceptionUtil
This commit is contained in:
parent
3075430713
commit
1122bf394c
2 changed files with 41 additions and 8 deletions
|
@ -16,12 +16,11 @@
|
|||
*/
|
||||
package org.jivesoftware.smack.debugger;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
|
||||
import org.jivesoftware.smack.XMPPConnection;
|
||||
import org.jivesoftware.smack.util.ExceptionUtil;
|
||||
|
||||
/**
|
||||
* Very simple debugger that prints to the console (stdout) the sent and received stanzas. Use
|
||||
|
@ -55,12 +54,8 @@ public class ConsoleDebugger extends AbstractDebugger {
|
|||
|
||||
@Override
|
||||
protected void log(String logMessage, Throwable throwable) {
|
||||
StringWriter sw = new StringWriter();
|
||||
PrintWriter pw = new PrintWriter(sw);
|
||||
// CHECKSTYLE:OFF
|
||||
throwable.printStackTrace(pw);
|
||||
// CHECKSTYLE:ON
|
||||
log(logMessage + sw);
|
||||
String stacktrace = ExceptionUtil.getStackTrace(throwable);
|
||||
log(logMessage + '\n' + stacktrace);
|
||||
}
|
||||
|
||||
public static final class Factory implements SmackDebuggerFactory {
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
/**
|
||||
*
|
||||
* Copyright 2019 Florian Schmaus.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.jivesoftware.smack.util;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.io.StringWriter;
|
||||
|
||||
public class ExceptionUtil {
|
||||
|
||||
public static String getStackTrace(Throwable throwable) {
|
||||
StringWriter stringWriter = new StringWriter();
|
||||
PrintWriter printWriter = new PrintWriter(stringWriter);
|
||||
|
||||
// CHECKSTYLE:OFF
|
||||
throwable.printStackTrace(printWriter);
|
||||
// CHECKSTYLE:ON
|
||||
|
||||
printWriter.flush();
|
||||
|
||||
StringBuffer stringBuffer = stringWriter.getBuffer();
|
||||
return stringBuffer.toString();
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in a new issue