Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrii Berezovskyi2017-07-07 11:41:34 +0000
committerAndrii Berezovskyi2017-07-07 12:51:45 +0000
commitb6dbad4995a9addd5a0517a005553ba7d2b1e09d (patch)
tree071ffb282b91d8fe3db08c60c70fd5c99820a2ea
parentaf05f3af99df8680a6ba9afb9b26c657b9a24d7c (diff)
downloadorg.eclipse.lyo.tools-b6dbad4995a9addd5a0517a005553ba7d2b1e09d.tar.gz
org.eclipse.lyo.tools-b6dbad4995a9addd5a0517a005553ba7d2b1e09d.tar.xz
org.eclipse.lyo.tools-b6dbad4995a9addd5a0517a005553ba7d2b1e09d.zip
Bug 519368 - Throw NoSuchElementException instead of NPE
If the resource is missing from the given graph in the triplestore. Change-Id: Ic2ec0f2632b0e8b8ffaad1ae57de95be15ff8a4b Signed-off-by: Andrii Berezovskyi <andriib@kth.se>
-rw-r--r--org.eclipse.lyo.tools.store/src/main/java/org/eclipse/lyo/tools/store/internals/SparqlStoreImpl.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/org.eclipse.lyo.tools.store/src/main/java/org/eclipse/lyo/tools/store/internals/SparqlStoreImpl.java b/org.eclipse.lyo.tools.store/src/main/java/org/eclipse/lyo/tools/store/internals/SparqlStoreImpl.java
index f5e9b12..f766903 100644
--- a/org.eclipse.lyo.tools.store/src/main/java/org/eclipse/lyo/tools/store/internals/SparqlStoreImpl.java
+++ b/org.eclipse.lyo.tools.store/src/main/java/org/eclipse/lyo/tools/store/internals/SparqlStoreImpl.java
@@ -244,7 +244,14 @@ public class SparqlStoreImpl implements Store {
final URI resourceUri, final Class<T> clazz)
throws NoSuchElementException, StoreAccessException, ModelUnmarshallingException {
final Model model = getJenaModelForSubject(namedGraphUri, resourceUri);
- return getResourcesFromModel(model, clazz).get(0);
+ final List<T> modelResources = getResourcesFromModel(model, clazz);
+ if (modelResources == null || modelResources.isEmpty()) {
+ throw new NoSuchElementException(
+ "Empty Jena model for the subject " + resourceUri + ". Use resourceExists(g," +
+ "r) method to check for resource existence before calling this method" +
+ ".");
+ }
+ return modelResources.get(0);
}
@Override

Back to the top