-
Notifications
You must be signed in to change notification settings - Fork 14
/
InferenceConnectorFactory.java
42 lines (33 loc) · 1.33 KB
/
InferenceConnectorFactory.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package cz.cvut.kbss.ontodriver.jena.connector;
import cz.cvut.kbss.ontodriver.config.DriverConfiguration;
import cz.cvut.kbss.ontodriver.jena.exception.JenaDriverException;
import java.util.HashMap;
import java.util.Map;
public class InferenceConnectorFactory extends ConnectorFactory {
private final SharedStorageConnector centralConnector;
private final Map<String, String> reasonerConfig;
public InferenceConnectorFactory(DriverConfiguration configuration, Map<String, String> reasonerConfig) {
this.centralConnector = new SharedStorageConnector(configuration);
this.reasonerConfig = new HashMap<>(reasonerConfig);
}
@Override
public StorageConnector createConnector() {
ensureOpen();
return new SnapshotStorageConnectorWithInference(centralConnector, reasonerConfig);
}
@Override
public InferredStorageConnector createInferredConnector(StorageConnector connector) {
assert connector instanceof SnapshotStorageConnectorWithInference;
return (InferredStorageConnector) connector;
}
@Override
public synchronized void reloadStorage() {
ensureOpen();
centralConnector.reloadStorage();
}
@Override
public synchronized void close() throws JenaDriverException {
super.close();
centralConnector.close();
}
}