Skip to content

Commit 05569c0

Browse files
authored
GH-5330 throw an exception for unknown repo in getRepositoryCon (#5340)
2 parents 1e175b6 + 7493711 commit 05569c0

File tree

3 files changed

+6
-3
lines changed

3 files changed

+6
-3
lines changed

tools/server-spring/src/main/java/org/eclipse/rdf4j/http/server/repository/RepositoryInterceptor.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,8 +133,11 @@ public static Repository getRepository(HttpServletRequest request) {
133133
* @param request the {@link HttpServletRequest} for which a {@link RepositoryConnection} is to be returned
134134
* @return a configured {@link RepositoryConnection}
135135
*/
136-
public static RepositoryConnection getRepositoryConnection(HttpServletRequest request) {
136+
public static RepositoryConnection getRepositoryConnection(HttpServletRequest request) throws ClientHTTPException {
137137
Repository repo = getRepository(request);
138+
if (repo == null) {
139+
throw new ClientHTTPException(SC_NOT_FOUND, "Unknown repository: " + getRepositoryID(request));
140+
}
138141
RepositoryConnection conn = repo.getConnection();
139142
conn.getParserConfig().addNonFatalError(BasicParserSettings.VERIFY_DATATYPE_VALUES);
140143
conn.getParserConfig().addNonFatalError(BasicParserSettings.VERIFY_LANGUAGE_TAGS);

tools/server-spring/src/main/java/org/eclipse/rdf4j/http/server/repository/namespaces/NamespaceController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ private ModelAndView getUpdateNamespaceResult(HttpServletRequest request, String
115115
}
116116

117117
private ModelAndView getRemoveNamespaceResult(HttpServletRequest request, String prefix)
118-
throws ServerHTTPException {
118+
throws ServerHTTPException, ClientHTTPException {
119119
try (RepositoryConnection repositoryCon = RepositoryInterceptor.getRepositoryConnection(request)) {
120120
repositoryCon.removeNamespace(prefix);
121121
} catch (RepositoryException e) {

tools/server-spring/src/main/java/org/eclipse/rdf4j/http/server/repository/namespaces/NamespacesController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ private ModelAndView getExportNamespacesResult(HttpServletRequest request, HttpS
117117
}
118118

119119
private ModelAndView getClearNamespacesResult(HttpServletRequest request, HttpServletResponse response)
120-
throws ServerHTTPException {
120+
throws ServerHTTPException, ClientHTTPException {
121121
try (RepositoryConnection repositoryCon = RepositoryInterceptor.getRepositoryConnection(request)) {
122122
try {
123123
repositoryCon.clearNamespaces();

0 commit comments

Comments
 (0)