В моей машине каталог базы данных/данных содержит несколько репозиториев. Но когда я обращаюсь к этому каталогу данных из java-программы, он дает мне только запись репозитория SYSTEM.Репозиторий системы, не отображающий данные репозитория
Код для извлечения репозиториев:
String dataDir = "D:\\SesameStorage\\data\\"
LocalRepositoryManager localManager = new LocalRepositoryManager(new File(dataDir));
localManager.initialize();
// Get all repositories
Collection<Repository> repos = localManager.getAllRepositories();
System.out.println("LocalRepositoryManager All repositories : "
+ repos.size());
for (Repository repo : repos) {
System.out.println("This is : " + repo.getDataDir());
RepositoryResult<Statement> idStatementIter = repo
.getConnection().getStatements(null,
RepositoryConfigSchema.REPOSITORYID, null,
true, new Resource[0]);
Statement idStatement;
try {
while (idStatementIter.hasNext()) {
idStatement = (Statement) idStatementIter.next();
if ((idStatement.getObject() instanceof Literal)) {
Literal idLiteral = (Literal) idStatement
.getObject();
System.out.println("idLiteral.getLabel() : "
+ idLiteral.getLabel());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
Output :
LocalRepositoryManager All repositories : 1
This is : D:\SemanticStorage\data\repositories\SYSTEM
idLiteral.getLabel() : SYSTEM
Добавление хранилища в LocalRepositoryManager:
String repositoryName = "data.ttl";
RepositoryConfig repConfig = new RepositoryConfig(repositoryName);
SailRepositoryConfig config = new SailRepositoryConfig(new MemoryStoreConfig());
repConfig.setRepositoryImplConfig(config);
manager.addRepositoryConfig(repConfig);
Получение объекта хранилища:
Repository repository = manager.getRepository(repositoryName);
repository.initialize();
Я успешно добавлен новый репозиторий LocalRepositoryManager и он показывает мне, что количество репозиториев равно 2. Но когда я перезапускаю приложение показывает мне только один репозиторий, и это репозиторий SYSTEM.
Мой системный репозиторий не обновляется, пожалуйста, предложите мне, как загрузить этот каталог данных в свой объект LocalRepositoryManager.
Я попытался с NativeStoreConfig также, но не работал. – sagarg