try-with-resources
diff --git a/jena-base/src/main/java/org/apache/jena/atlas/io/IOX.java b/jena-base/src/main/java/org/apache/jena/atlas/io/IOX.java
index f96bd0b..a25fe6b 100644
--- a/jena-base/src/main/java/org/apache/jena/atlas/io/IOX.java
+++ b/jena-base/src/main/java/org/apache/jena/atlas/io/IOX.java
@@ -125,7 +125,7 @@
}
/**
- * Write a file safely, but allow system to use copy-delete if the chnage can not
+ * Write a file safely, but allow system to use copy-delete if the change can not
* be done atomically. Prefer {@link #safeWrite} which requires an atomic move.
*/
public static boolean safeWriteOrCopy(Path file, Path tmpFile, IOConsumer<OutputStream> writerAction) {
diff --git a/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput0/StAX2ModelTest.java b/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput0/StAX2ModelTest.java
index 6d05122..60c8a6a 100644
--- a/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput0/StAX2ModelTest.java
+++ b/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput0/StAX2ModelTest.java
@@ -1160,20 +1160,15 @@
Model expected = ModelFactory.createDefaultModel();
Model got = ModelFactory.createDefaultModel();
- InputStream in;
-
// Load expected using normal mechanism
- try {
- in = new FileInputStream(file);
+ try (InputStream in = new FileInputStream(file)) {
expected.read(in, base);
- in.close();
} catch (Exception e) { return; }
- in = new FileInputStream(file);
- XMLEventReader eventStream = inputFactory.createXMLEventReader(base, in);
- StAX2Model.read(eventStream, got, base);
- in.close();
-
+ try (InputStream in = new FileInputStream(file)) {
+ XMLEventReader eventStream = inputFactory.createXMLEventReader(base, in);
+ StAX2Model.read(eventStream, got, base);
+ }
boolean result = expected.isIsomorphicWith(got);
/*if (!result) {
diff --git a/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput1/TestsStAX2Model.java b/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput1/TestsStAX2Model.java
index 8a132e4..f574d88 100644
--- a/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput1/TestsStAX2Model.java
+++ b/jena-core/src/test/java/org/apache/jena/rdfxml/xmlinput1/TestsStAX2Model.java
@@ -1160,20 +1160,15 @@
Model expected = ModelFactory.createDefaultModel();
Model got = ModelFactory.createDefaultModel();
- InputStream in;
-
// Load expected using normal mechanism
- try {
- in = new FileInputStream(file);
+ try (InputStream in = new FileInputStream(file)) {
expected.read(in, base);
- in.close();
} catch (Exception e) { return; }
- in = new FileInputStream(file);
- XMLEventReader eventStream = inputFactory.createXMLEventReader(base, in);
- StAX2Model.read(eventStream, got, base);
- in.close();
-
+ try (InputStream in = new FileInputStream(file)) {
+ XMLEventReader eventStream = inputFactory.createXMLEventReader(base, in);
+ StAX2Model.read(eventStream, got, base);
+ }
boolean result = expected.isIsomorphicWith(got);
/*if (!result) {
diff --git a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFuseki.java b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFuseki.java
index e2f643b..dfc8cbe 100644
--- a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFuseki.java
+++ b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionFuseki.java
@@ -21,6 +21,7 @@
import org.apache.jena.atlas.logging.LogCtl;
import org.apache.jena.fuseki.Fuseki;
import org.apache.jena.fuseki.main.FusekiTestLib;
+import org.apache.jena.query.QueryExecution;
import org.apache.jena.query.QueryParseException;
import org.apache.jena.query.ResultSet;
import org.apache.jena.rdfconnection.RDFConnection;
@@ -58,9 +59,14 @@
String level = LogCtl.getLevel(Fuseki.actionLog);
try {
LogCtl.setLevel(Fuseki.actionLog, "ERROR");
- FusekiTestLib.expectQueryFail(()->conn.query("FOOBAR").execSelect(), Code.BAD_REQUEST);
+ Runnable action = ()-> {
+ try( QueryExecution qExec = conn.query("FOOBAR") ) {
+ qExec.execSelect();
+ }};
+ FusekiTestLib.expectQueryFail(action, Code.BAD_REQUEST);
} finally {
LogCtl.setLevel(Fuseki.actionLog, level);
+ conn.close();
}
}
}
diff --git a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
index 8764c6c..3237a79 100644
--- a/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
+++ b/jena-integration-tests/src/test/java/org/apache/jena/test/rdfconnection/TestRDFConnectionRemote.java
@@ -24,6 +24,7 @@
import org.apache.jena.fuseki.Fuseki;
import org.apache.jena.fuseki.main.FusekiServer ;
import org.apache.jena.fuseki.main.FusekiTestLib;
+import org.apache.jena.query.QueryExecution;
import org.apache.jena.query.QueryParseException;
import org.apache.jena.query.ResultSet;
import org.apache.jena.rdf.model.Model;
@@ -123,7 +124,11 @@
String level = LogCtl.getLevel(Fuseki.actionLog);
try {
LogCtl.setLevel(Fuseki.actionLog, "ERROR");
- FusekiTestLib.expectQueryFail(()->conn.query("FOOBAR").execSelect(), Code.BAD_REQUEST);
+ Runnable action = ()-> {
+ try( QueryExecution qExec = conn.query("FOOBAR") ) {
+ qExec.execSelect();
+ }};
+ FusekiTestLib.expectQueryFail(action, Code.BAD_REQUEST);
} finally {
LogCtl.setLevel(Fuseki.actionLog, level);
}
diff --git a/jena-integration-tests/src/test/java/org/apache/jena/test/rdflink/TestRDFLinkHTTP.java b/jena-integration-tests/src/test/java/org/apache/jena/test/rdflink/TestRDFLinkHTTP.java
index aaf51be..27468fb 100644
--- a/jena-integration-tests/src/test/java/org/apache/jena/test/rdflink/TestRDFLinkHTTP.java
+++ b/jena-integration-tests/src/test/java/org/apache/jena/test/rdflink/TestRDFLinkHTTP.java
@@ -29,6 +29,7 @@
import org.apache.jena.rdflink.RDFLinkHTTP;
import org.apache.jena.sparql.core.DatasetGraph ;
import org.apache.jena.sparql.core.DatasetGraphFactory ;
+import org.apache.jena.sparql.exec.QueryExec;
import org.apache.jena.sparql.exec.RowSet;
import org.apache.jena.system.Txn ;
import org.apache.jena.web.HttpSC.Code;
@@ -103,7 +104,13 @@
String level = LogCtl.getLevel(Fuseki.actionLog);
try {
LogCtl.setLevel(Fuseki.actionLog, "ERROR");
- FusekiTestLib.expectQueryFail(()->link.query("FOOBAR").select(), Code.BAD_REQUEST);
+ Runnable action = ()-> {
+ try( QueryExec qExec = link.query("FOOBAR") ) {
+ qExec.select();
+ }};
+ FusekiTestLib.expectQueryFail(action, Code.BAD_REQUEST);
+ LogCtl.setLevel(Fuseki.actionLog, "ERROR");
+ FusekiTestLib.expectQueryFail(action, Code.BAD_REQUEST);
} finally {
LogCtl.setLevel(Fuseki.actionLog, level);
}
diff --git a/jena-text/src/main/java/org/apache/jena/query/text/assembler/TextIndexLuceneAssembler.java b/jena-text/src/main/java/org/apache/jena/query/text/assembler/TextIndexLuceneAssembler.java
index 13924dd..9a59072 100644
--- a/jena-text/src/main/java/org/apache/jena/query/text/assembler/TextIndexLuceneAssembler.java
+++ b/jena-text/src/main/java/org/apache/jena/query/text/assembler/TextIndexLuceneAssembler.java
@@ -46,8 +46,7 @@
text:entityMap <#entMap> ;
.
*/
-
- @SuppressWarnings("resource")
+
@Override
public TextIndex open(Assembler a, Resource root, Mode mode) {
try {
@@ -55,10 +54,10 @@
throw new TextIndexException("No 'text:directory' property on " + root) ;
Directory directory ;
-
+
RDFNode n = root.getProperty(pDirectory).getObject() ;
if ( n.isLiteral() ) {
- String literalValue = n.asLiteral().getLexicalForm() ;
+ String literalValue = n.asLiteral().getLexicalForm() ;
if (literalValue.equals("mem")) {
directory = new ByteBuffersDirectory() ;
} else {
@@ -71,7 +70,7 @@
File dir = new File(path) ;
directory = FSDirectory.open(dir.toPath()) ;
}
-
+
String queryParser = null;
Statement queryParserStatement = root.getProperty(pQueryParser);
if (null != queryParserStatement) {
@@ -112,14 +111,14 @@
Statement propListsStmt = root.getProperty(pPropLists);
if (null != propListsStmt) {
RDFNode aNode = propListsStmt.getObject();
-
+
if (! aNode.isResource()) {
throw new TextIndexException("text:propLists property is not a resource (list) : " + aNode);
}
-
+
PropListsAssembler.open(a, (Resource) aNode);
}
-
+
//define any filters and tokenizers first so they can be referenced in analyzer definitions if need be
Statement defAnalyzersStatement = root.getProperty(pDefAnalyzers);
if (null != defAnalyzersStatement) {
@@ -127,7 +126,7 @@
if (! aNode.isResource()) {
throw new TextIndexException("text:defineAnalyzers property is not a resource (list) : " + aNode);
}
-
+
DefineFiltersAssembler.open(a, (Resource) aNode);
DefineTokenizersAssembler.open(a, (Resource) aNode);