Skip to content

Commit a5cc71e

Browse files
author
Cyrille Le Clerc
committed
Implement Closeable - fix #25
1 parent c9b9107 commit a5cc71e

File tree

3 files changed

+16
-3
lines changed

3 files changed

+16
-3
lines changed

src/main/java/com/cloudbees/syslog/sender/SyslogMessageSender.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import javax.annotation.Nullable;
2323
import javax.annotation.concurrent.ThreadSafe;
2424
import java.io.CharArrayWriter;
25+
import java.io.Closeable;
2526
import java.io.IOException;
2627
import java.util.concurrent.TimeUnit;
2728

@@ -33,7 +34,7 @@
3334
* @author <a href="mailto:[email protected]">Cyrille Le Clerc</a>
3435
*/
3536
@ThreadSafe
36-
public interface SyslogMessageSender {
37+
public interface SyslogMessageSender extends Closeable {
3738
public static final long DEFAULT_INET_ADDRESS_TTL_IN_MILLIS = TimeUnit.MILLISECONDS.convert(30, TimeUnit.SECONDS);
3839
public static final long DEFAULT_INET_ADDRESS_TTL_IN_NANOS = TimeUnit.NANOSECONDS.convert(DEFAULT_INET_ADDRESS_TTL_IN_MILLIS, TimeUnit.MILLISECONDS);
3940
public static final String DEFAULT_SYSLOG_HOST = "localhost";

src/main/java/com/cloudbees/syslog/sender/TcpSyslogMessageSender.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import javax.net.ssl.SSLSocket;
2828
import javax.net.ssl.SSLSocketFactory;
2929
import java.io.BufferedWriter;
30+
import java.io.Closeable;
3031
import java.io.IOException;
3132
import java.io.OutputStreamWriter;
3233
import java.io.Writer;
@@ -44,7 +45,7 @@
4445
* @author <a href="mailto:[email protected]">Cyrille Le Clerc</a>
4546
*/
4647
@ThreadSafe
47-
public class TcpSyslogMessageSender extends AbstractSyslogMessageSender {
48+
public class TcpSyslogMessageSender extends AbstractSyslogMessageSender implements Closeable {
4849
public final static int SETTING_SOCKET_CONNECT_TIMEOUT_IN_MILLIS_DEFAULT_VALUE = 500;
4950
public final static int SETTING_MAX_RETRY = 2;
5051

@@ -269,4 +270,9 @@ public String toString() {
269270
", trySendErrorCounter=" + trySendErrorCounter +
270271
'}';
271272
}
273+
274+
@Override
275+
public void close() throws IOException {
276+
this.socket.close();
277+
}
272278
}

src/main/java/com/cloudbees/syslog/sender/UdpSyslogMessageSender.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import javax.annotation.Nullable;
2222
import javax.annotation.concurrent.ThreadSafe;
2323
import java.io.ByteArrayOutputStream;
24+
import java.io.Closeable;
2425
import java.io.IOException;
2526
import java.io.OutputStreamWriter;
2627
import java.io.Writer;
@@ -39,7 +40,7 @@
3940
* @author <a href="mailto:[email protected]">Cyrille Le Clerc</a>
4041
*/
4142
@ThreadSafe
42-
public class UdpSyslogMessageSender extends AbstractSyslogMessageSender {
43+
public class UdpSyslogMessageSender extends AbstractSyslogMessageSender implements Closeable {
4344
/**
4445
* {@link java.net.InetAddress InetAddress} of the remote Syslog Server.
4546
*
@@ -147,4 +148,9 @@ public String toString() {
147148
", sendErrorCounter=" + sendErrorCounter +
148149
'}';
149150
}
151+
152+
@Override
153+
public void close() throws IOException {
154+
this.datagramSocket.close();
155+
}
150156
}

0 commit comments

Comments
 (0)