DefaultRepositoryResolver.java
/*******************************************************************************
* Copyright (c) 2022 Eclipse RDF4J contributors.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Distribution License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: BSD-3-Clause
*******************************************************************************/
package org.eclipse.rdf4j.http.server.repository.resolver;
import javax.servlet.http.HttpServletRequest;
import org.eclipse.rdf4j.http.server.repository.RepositoryInterceptor;
import org.eclipse.rdf4j.model.Model;
import org.eclipse.rdf4j.repository.Repository;
import org.eclipse.rdf4j.repository.RepositoryConnection;
import org.eclipse.rdf4j.repository.config.RepositoryConfig;
import org.eclipse.rdf4j.repository.config.RepositoryConfigUtil;
import org.eclipse.rdf4j.repository.manager.RepositoryManager;
import org.eclipse.rdf4j.rio.helpers.BasicParserSettings;
public class DefaultRepositoryResolver implements RepositoryResolver {
private final RepositoryManager repositoryManager;
public DefaultRepositoryResolver(RepositoryManager repMan) {
repositoryManager = repMan;
}
public RepositoryManager getRepositoryManager() {
return repositoryManager;
}
public RepositoryConfig getRepositoryConfig(String repId, Model model) {
return RepositoryConfigUtil.getRepositoryConfig(model, repId);
}
public String getRepositoryID(HttpServletRequest request) {
return RepositoryInterceptor.getRepositoryID(request);
}
public RepositoryConnection getRepositoryConnection(HttpServletRequest request, Repository repository) {
RepositoryConnection conn = repository.getConnection();
conn.getParserConfig().addNonFatalError(BasicParserSettings.VERIFY_DATATYPE_VALUES);
conn.getParserConfig().addNonFatalError(BasicParserSettings.VERIFY_LANGUAGE_TAGS);
return conn;
}
public Repository getRepository(HttpServletRequest request) {
return RepositoryInterceptor.getRepository(request);
}
}