Modernization: Using NIO2 instead of IO
diff --git a/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java b/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java
index 237e3f7..d6545ff 100644
--- a/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java
+++ b/jaxrs-api/src/main/java/jakarta/ws/rs/client/FactoryFinder.java
@@ -16,9 +16,10 @@
package jakarta.ws.rs.client;
-import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
import java.security.AccessController;
import java.security.PrivilegedAction;
import java.util.Properties;
@@ -123,15 +124,14 @@
}
// try to read from $java.home/lib/jaxrs.properties
- FileInputStream inputStream = null;
- String configFile = null;
+ InputStream inputStream = null;
+ Path configFile = null;
try {
String javah = System.getProperty("java.home");
- configFile = javah + File.separator + "lib" + File.separator + "jaxrs.properties";
- File f = new File(configFile);
- if (f.exists()) {
+ configFile = Path.of(javah, "lib", "jaxrs.properties");
+ if (Files.exists(configFile)) {
Properties props = new Properties();
- inputStream = new FileInputStream(f);
+ inputStream = Files.newInputStream(configFile);
props.load(inputStream);
String factoryClassName = props.getProperty(factoryId);
return newInstance(factoryClassName, classLoader);
diff --git a/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java b/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java
index bd46f79..b3081bd 100644
--- a/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java
+++ b/jaxrs-api/src/main/java/jakarta/ws/rs/ext/FactoryFinder.java
@@ -16,9 +16,10 @@
package jakarta.ws.rs.ext;
-import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
import java.security.AccessController;
import java.security.PrivilegedAction;
import java.util.Properties;
@@ -123,15 +124,14 @@
}
// try to read from $java.home/lib/jaxrs.properties
- FileInputStream inputStream = null;
- String configFile = null;
+ InputStream inputStream = null;
+ Path configFile = null;
try {
String javah = System.getProperty("java.home");
- configFile = javah + File.separator + "lib" + File.separator + "jaxrs.properties";
- File f = new File(configFile);
- if (f.exists()) {
+ configFile = Path.of(javah, "lib", "jaxrs.properties");
+ if (Files.exists(configFile)) {
Properties props = new Properties();
- inputStream = new FileInputStream(f);
+ inputStream = Files.newInputStream(configFile);
props.load(inputStream);
String factoryClassName = props.getProperty(factoryId);
return newInstance(factoryClassName, classLoader);
diff --git a/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java b/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java
index a9d2415..8622d63 100644
--- a/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java
+++ b/jaxrs-api/src/main/java/jakarta/ws/rs/sse/FactoryFinder.java
@@ -16,9 +16,10 @@
package jakarta.ws.rs.sse;
-import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
+import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
import java.security.AccessController;
import java.security.PrivilegedAction;
import java.util.Properties;
@@ -123,15 +124,14 @@
}
// try to read from $java.home/lib/jaxrs.properties
- FileInputStream inputStream = null;
- String configFile = null;
+ Path configFile = null;
+ InputStream inputStream = null;
try {
String javah = System.getProperty("java.home");
- configFile = javah + File.separator + "lib" + File.separator + "jaxrs.properties";
- File f = new File(configFile);
- if (f.exists()) {
+ configFile = Path.of(javah, "lib", "jaxrs.properties");
+ if (Files.exists(configFile)) {
Properties props = new Properties();
- inputStream = new FileInputStream(f);
+ inputStream = Files.newInputStream(configFile);
props.load(inputStream);
String factoryClassName = props.getProperty(factoryId);
return newInstance(factoryClassName, classLoader);