(THRIFT-12) Make the Java library use java.util.logging instead of stdout.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@672868 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/java/src/com/facebook/thrift/server/TSimpleServer.java b/lib/java/src/com/facebook/thrift/server/TSimpleServer.java
index bf66843..1c25261 100644
--- a/lib/java/src/com/facebook/thrift/server/TSimpleServer.java
+++ b/lib/java/src/com/facebook/thrift/server/TSimpleServer.java
@@ -6,6 +6,9 @@
package com.facebook.thrift.server;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
import com.facebook.thrift.TException;
import com.facebook.thrift.TProcessor;
import com.facebook.thrift.TProcessorFactory;
@@ -23,6 +26,8 @@
*/
public class TSimpleServer extends TServer {
+ private static final Logger LOGGER = Logger.getLogger(TSimpleServer.class.getName());
+
private boolean stopped_ = false;
public TSimpleServer(TProcessor processor,
@@ -77,7 +82,7 @@
try {
serverTransport_.listen();
} catch (TTransportException ttx) {
- ttx.printStackTrace();
+ LOGGER.log(Level.SEVERE, "Error occurred during listening.", ttx);
return;
}
@@ -102,11 +107,11 @@
// Client died, just move on
} catch (TException tx) {
if (!stopped_) {
- tx.printStackTrace();
+ LOGGER.log(Level.SEVERE, "Thrift error occurred during processing of message.", tx);
}
} catch (Exception x) {
if (!stopped_) {
- x.printStackTrace();
+ LOGGER.log(Level.SEVERE, "Error occurred during processing of message.", x);
}
}
diff --git a/lib/java/src/com/facebook/thrift/server/TThreadPoolServer.java b/lib/java/src/com/facebook/thrift/server/TThreadPoolServer.java
index 7b97071..13f83a1 100644
--- a/lib/java/src/com/facebook/thrift/server/TThreadPoolServer.java
+++ b/lib/java/src/com/facebook/thrift/server/TThreadPoolServer.java
@@ -22,6 +22,8 @@
import java.util.concurrent.SynchronousQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
+import java.util.logging.Level;
+import java.util.logging.Logger;
/**
@@ -32,6 +34,8 @@
*/
public class TThreadPoolServer extends TServer {
+ private static final Logger LOGGER = Logger.getLogger(TThreadPoolServer.class.getName());
+
// Executor service for handling client connections
private ExecutorService executorService_;
@@ -156,7 +160,7 @@
try {
serverTransport_.listen();
} catch (TTransportException ttx) {
- ttx.printStackTrace();
+ LOGGER.log(Level.SEVERE, "Error occurred during listening.", ttx);
return;
}
@@ -170,7 +174,7 @@
} catch (TTransportException ttx) {
if (!stopped_) {
++failureCount;
- ttx.printStackTrace();
+ LOGGER.log(Level.WARNING, "Transport error occurred during acceptance of message.", ttx);
}
}
}
@@ -237,9 +241,9 @@
} catch (TTransportException ttx) {
// Assume the client died and continue silently
} catch (TException tx) {
- tx.printStackTrace();
+ LOGGER.log(Level.SEVERE, "Thrift error occurred during processing of message.", tx);
} catch (Exception x) {
- x.printStackTrace();
+ LOGGER.log(Level.SEVERE, "Error occurred during processing of message.", x);
}
if (inputTransport != null) {
diff --git a/lib/java/src/com/facebook/thrift/transport/TIOStreamTransport.java b/lib/java/src/com/facebook/thrift/transport/TIOStreamTransport.java
index 5fef3b7..fd561ed 100644
--- a/lib/java/src/com/facebook/thrift/transport/TIOStreamTransport.java
+++ b/lib/java/src/com/facebook/thrift/transport/TIOStreamTransport.java
@@ -9,6 +9,8 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.util.logging.Level;
+import java.util.logging.Logger;
/**
* This is the most commonly used base transport. It takes an InputStream
@@ -20,6 +22,8 @@
*/
public class TIOStreamTransport extends TTransport {
+ private static final Logger LOGGER = Logger.getLogger(TIOStreamTransport.class.getName());
+
/** Underlying inputStream */
protected InputStream inputStream_ = null;
@@ -84,8 +88,7 @@
try {
inputStream_.close();
} catch (IOException iox) {
- System.err.println("WARNING: Error closing input stream: " +
- iox.getMessage());
+ LOGGER.log(Level.WARNING, "Error closing input stream.", iox);
}
inputStream_ = null;
}
@@ -93,8 +96,7 @@
try {
outputStream_.close();
} catch (IOException iox) {
- System.err.println("WARNING: Error closing output stream: " +
- iox.getMessage());
+ LOGGER.log(Level.WARNING, "Error closing output stream.", iox);
}
outputStream_ = null;
}
diff --git a/lib/java/src/com/facebook/thrift/transport/TServerSocket.java b/lib/java/src/com/facebook/thrift/transport/TServerSocket.java
index 2692ac4..14a925b 100644
--- a/lib/java/src/com/facebook/thrift/transport/TServerSocket.java
+++ b/lib/java/src/com/facebook/thrift/transport/TServerSocket.java
@@ -11,6 +11,8 @@
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
/**
* Wrapper around ServerSocket for Thrift.
@@ -19,6 +21,8 @@
*/
public class TServerSocket extends TServerTransport {
+ private static final Logger LOGGER = Logger.getLogger(TServerSocket.class.getName());
+
/**
* Underlying serversocket object
*/
@@ -81,7 +85,7 @@
try {
serverSocket_.setSoTimeout(0);
} catch (SocketException sx) {
- sx.printStackTrace();
+ LOGGER.log(Level.WARNING, "Could not set socket timeout.", sx);
}
}
}
@@ -105,8 +109,7 @@
try {
serverSocket_.close();
} catch (IOException iox) {
- System.err.println("WARNING: Could not close server socket: " +
- iox.getMessage());
+ LOGGER.log(Level.WARNING, "Could not close server socket.", iox);
}
serverSocket_ = null;
}
diff --git a/lib/java/src/com/facebook/thrift/transport/TSocket.java b/lib/java/src/com/facebook/thrift/transport/TSocket.java
index 2053850..c30a478 100644
--- a/lib/java/src/com/facebook/thrift/transport/TSocket.java
+++ b/lib/java/src/com/facebook/thrift/transport/TSocket.java
@@ -12,6 +12,8 @@
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.SocketException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
/**
* Socket implementation of the TTransport interface. To be commented soon!
@@ -20,6 +22,8 @@
*/
public class TSocket extends TIOStreamTransport {
+ private static final Logger LOGGER = Logger.getLogger(TSocket.class.getName());
+
/**
* Wrapped Socket object
*/
@@ -52,7 +56,7 @@
socket_.setSoLinger(false, 0);
socket_.setTcpNoDelay(true);
} catch (SocketException sx) {
- sx.printStackTrace();
+ LOGGER.log(Level.WARNING, "Could not configure socket.", sx);
}
if (isOpen()) {
@@ -102,7 +106,7 @@
socket_.setTcpNoDelay(true);
socket_.setSoTimeout(timeout_);
} catch (SocketException sx) {
- sx.printStackTrace();
+ LOGGER.log(Level.WARNING, "Could not configure socket.", sx);
}
}
@@ -116,7 +120,7 @@
try {
socket_.setSoTimeout(timeout);
} catch (SocketException sx) {
- sx.printStackTrace();
+ LOGGER.log(Level.WARNING, "Could not set socket timeout.", sx);
}
}
@@ -181,8 +185,7 @@
try {
socket_.close();
} catch (IOException iox) {
- System.err.println("WARNING: exception closing socket: " +
- iox.getMessage());
+ LOGGER.log(Level.WARNING, "Could not close socket.", iox);
}
socket_ = null;
}