diff --git a/src/main/java/com/cisco/gerrit/plugins/slack/client/WebhookClient.java b/src/main/java/com/cisco/gerrit/plugins/slack/client/WebhookClient.java
index c609d7d..af50032 100644
--- a/src/main/java/com/cisco/gerrit/plugins/slack/client/WebhookClient.java
+++ b/src/main/java/com/cisco/gerrit/plugins/slack/client/WebhookClient.java
@@ -108,12 +108,10 @@
         connection.setDoInput(true);
         connection.setDoOutput(true);
 
-        DataOutputStream request;
-        request = new DataOutputStream(connection.getOutputStream());
-
-        request.write(message.getBytes(StandardCharsets.UTF_8));
-        request.flush();
-        request.close();
+        try (DataOutputStream request = new DataOutputStream(connection.getOutputStream())) {
+          request.write(message.getBytes(StandardCharsets.UTF_8));
+          request.flush();
+        }
       } catch (IOException e) {
         throw new RuntimeException("Error posting message to Slack: [" + e.getMessage() + "].", e);
       }
diff --git a/src/test/java/com/cisco/gerrit/plugins/slack/client/WebhookClientIntegrationTest.java b/src/test/java/com/cisco/gerrit/plugins/slack/client/WebhookClientIntegrationTest.java
index 8f02fcc..b5e8011 100644
--- a/src/test/java/com/cisco/gerrit/plugins/slack/client/WebhookClientIntegrationTest.java
+++ b/src/test/java/com/cisco/gerrit/plugins/slack/client/WebhookClientIntegrationTest.java
@@ -77,14 +77,10 @@
     WebhookClient client;
     client = new WebhookClient(getConfig());
 
-    InputStream testProperties;
-    testProperties = ResourceHelper.loadNamedResourceAsStream("test.properties");
-
-    Properties properties;
-    properties = new Properties();
-    properties.load(testProperties);
-
-    testProperties.close();
+    Properties properties = new Properties();
+    try (InputStream testProperties = ResourceHelper.loadNamedResourceAsStream("test.properties")) {
+      properties.load(testProperties);
+    }
 
     MessageTemplate template;
     template = new MessageTemplate();
@@ -109,14 +105,10 @@
     WebhookClient client;
     client = new WebhookClient(getConfig());
 
-    InputStream testProperties;
-    testProperties = ResourceHelper.loadNamedResourceAsStream("test.properties");
-
-    Properties properties;
-    properties = new Properties();
-    properties.load(testProperties);
-
-    testProperties.close();
+    Properties properties = new Properties();
+    try (InputStream testProperties = ResourceHelper.loadNamedResourceAsStream("test.properties")) {
+      properties.load(testProperties);
+    }
 
     MessageTemplate template;
     template = new MessageTemplate();
