Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
32b979e
temp
kiph-soptim Apr 10, 2026
e99f480
association violation checks are now functioning correctly
kiph-soptim Apr 14, 2026
a81a0d0
fix: load SPARQL templates from classpath in packaged backend (#73)
spah-soptim Apr 10, 2026
e6c741f
fix: added unsaved changes adoption, when saving a class property (#6…
rema-soptim Apr 13, 2026
cce9836
fix(navigation): faulty api calls (#64, RDFA-433)
rema-soptim Apr 13, 2026
174ea17
temp
kiph-soptim Apr 10, 2026
051e3a7
association violation checks are now functioning correctly
kiph-soptim Apr 14, 2026
7249106
format
kiph-soptim Apr 14, 2026
34f689c
Merge branch 'main' into fix/RDFA-449-Create-associations-on-the-same…
kiph-soptim Apr 14, 2026
64c02e7
now only shows one violation at the same time
kiph-soptim Apr 15, 2026
d2f0ece
format
kiph-soptim Apr 15, 2026
9692f38
Merge branch 'main' into fix/RDFA-449-Create-associations-on-the-same…
kiph-soptim Apr 16, 2026
33862f8
fixed that after discarding changes in the AttributeEditorDialog or A…
kiph-soptim Apr 16, 2026
55509bc
Revert "fixed that after discarding changes in the AttributeEditorDia…
kiph-soptim Apr 16, 2026
53ee15d
format
kiph-soptim Apr 16, 2026
50f8e84
refactoring
kiph-soptim Apr 17, 2026
cc5760b
Merge branch 'main' into fix/RDFA-449-Create-associations-on-the-same…
kiph-soptim Apr 24, 2026
779c1a2
Merge branch 'main' into fix/RDFA-449-Create-associations-on-the-same…
kiph-soptim Apr 28, 2026
aa93016
format
kiph-soptim Apr 28, 2026
9bb9911
format
kiph-soptim Apr 28, 2026
182fd07
format
kiph-soptim Apr 28, 2026
157d3de
format
kiph-soptim Apr 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,4 @@

package org.rdfarchitect.database;

import lombok.Data;

@Data
public class GraphIdentifier {

private final String datasetName;

private final String graphUri;
}
public record GraphIdentifier(String datasetName, String graphUri) {}
Original file line number Diff line number Diff line change
Expand Up @@ -60,14 +60,14 @@ public void createGraph(GraphIdentifier graphIdentifier, Graph graph) {
database.create(graphIdentifier, graph);
var currentPrefixMapping =
new PrefixMappingImpl()
.setNsPrefixes(database.getPrefixMapping(graphIdentifier.getDatasetName()))
.setNsPrefixes(database.getPrefixMapping(graphIdentifier.datasetName()))
.setNsPrefixes(graph.getPrefixMapping());
database.setPrefixMapping(graphIdentifier.getDatasetName(), currentPrefixMapping);
database.setPrefixMapping(graphIdentifier.datasetName(), currentPrefixMapping);
}

@Override
public void createEmptyGraph(GraphIdentifier graphIdentifier) {
var datasetName = graphIdentifier.getDatasetName();
var datasetName = graphIdentifier.datasetName();
var isNewDataset = !database.listDatasets().contains(datasetName);
database.create(graphIdentifier, GraphFactory.createDefaultGraph());
if (isNewDataset) {
Expand All @@ -77,7 +77,7 @@ public void createEmptyGraph(GraphIdentifier graphIdentifier) {
.setNsPrefixes(PrefixMapping.Standard)
.setNsPrefix(CIM_PREFIX, CIM.namespace)
.setNsPrefix(CIMS_PREFIX, CIMS.namespace);
database.setPrefixMapping(graphIdentifier.getDatasetName(), prefixMapping);
database.setPrefixMapping(graphIdentifier.datasetName(), prefixMapping);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,8 +91,8 @@ public List<String> listDatasets() {

@Override
public GraphRewindableWithUUIDs begin(GraphIdentifier graphIdentifier, TxnType txnType) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
createDataset(datasetName);
Expand All @@ -106,10 +106,10 @@ public GraphRewindableWithUUIDs begin(GraphIdentifier graphIdentifier, TxnType t
public GraphWithContext getGraphWithContext(GraphIdentifier graphIdentifier) {
lock.lock();
try {
createDataset(graphIdentifier.getDatasetName());
createDataset(graphIdentifier.datasetName());
return graphCollections
.get(graphIdentifier.getDatasetName())
.getGraphWithContext(graphIdentifier.getGraphUri());
.get(graphIdentifier.datasetName())
.getGraphWithContext(graphIdentifier.graphUri());
} finally {
lock.unlock();
}
Expand All @@ -119,19 +119,19 @@ public GraphWithContext getGraphWithContext(GraphIdentifier graphIdentifier) {
public void create(GraphIdentifier graphIdentifier, Graph newGraph) {
lock.lock();
try {
createDataset(graphIdentifier.getDatasetName());
createDataset(graphIdentifier.datasetName());
graphCollections
.get(graphIdentifier.getDatasetName())
.create(graphIdentifier.getGraphUri(), newGraph);
.get(graphIdentifier.datasetName())
.create(graphIdentifier.graphUri(), newGraph);
} finally {
lock.unlock();
}
}

@Override
public void remove(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
if (!graphCollections.containsKey(datasetName)) {
Expand All @@ -148,8 +148,8 @@ public void remove(GraphIdentifier graphIdentifier) {

@Override
public boolean containsGraph(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
return graphCollections.containsKey(datasetName)
Expand Down Expand Up @@ -197,8 +197,8 @@ public void setPrefixMapping(String datasetName, PrefixMapping newPrefixes) {
@Override
public void writeToDatabase(
DatabaseConnection databaseConnection, GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
GraphRewindableWithUUIDs graph = null;
try {
Expand Down Expand Up @@ -327,8 +327,8 @@ private Graph fetchGraph(

@Override
public void undo(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
assertThatDatasetExists(datasetName);
Expand All @@ -340,8 +340,8 @@ public void undo(GraphIdentifier graphIdentifier) {

@Override
public void redo(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
assertThatDatasetExists(datasetName);
Expand All @@ -353,8 +353,8 @@ public void redo(GraphIdentifier graphIdentifier) {

@Override
public boolean canUndo(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
assertThatDatasetExists(datasetName);
Expand All @@ -366,8 +366,8 @@ public boolean canUndo(GraphIdentifier graphIdentifier) {

@Override
public boolean canRedo(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
assertThatDatasetExists(datasetName);
Expand All @@ -379,8 +379,8 @@ public boolean canRedo(GraphIdentifier graphIdentifier) {

@Override
public void restore(GraphIdentifier graphIdentifier, UUID versionId) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
lock.lock();
try {
assertThatGraphExists(graphIdentifier);
Expand Down Expand Up @@ -443,8 +443,8 @@ private void assertThatDatasetExists(String datasetName) {
* @throws DataAccessException if the dataset or graph does not exist.
*/
private void assertThatGraphExists(GraphIdentifier graphIdentifier) {
final String datasetName = graphIdentifier.getDatasetName();
final String graphUri = graphIdentifier.getGraphUri();
final String datasetName = graphIdentifier.datasetName();
final String graphUri = graphIdentifier.graphUri();
assertThatDatasetExists(datasetName);
if (!graphCollections.get(datasetName).containsGraph(graphUri)) {
throw new DataAccessException(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,11 +110,11 @@ private void transferGraph(RDFConnection conn, GraphIdentifier graphIdentifier)
var copiedGraph = GraphUtils.deepCopy(graph);
copiedGraph
.getPrefixMapping()
.setNsPrefixes(databasePort.getPrefixMapping(graphIdentifier.getDatasetName()));
.setNsPrefixes(databasePort.getPrefixMapping(graphIdentifier.datasetName()));

removeUUIDs(copiedGraph);

conn.put(graphIdentifier.getGraphUri(), ModelFactory.createModelForGraph(copiedGraph));
conn.put(graphIdentifier.graphUri(), ModelFactory.createModelForGraph(copiedGraph));
} catch (Exception e) {
throw new FusekiServerException(e.getMessage());
} finally {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ public static CIMAssociation createInverseCIMAssociation(
QuerySolution associationQuerySolution) {
var parser = new CIMQuerySolutionParser(associationQuerySolution);
return CIMAssociation.builder()
.uuid(parser.getUUID(CIMQueryVars.UUID))
.uuid(parser.getUUID(CIMQueryVars.Inverse.UUID))
.uri(parser.getURI(CIMQueryVars.INVERSE_ROLE_NAME))
.label(parser.getLabel(CIMQueryVars.Inverse.LABEL))
.multiplicity(parser.getMultiplicity(CIMQueryVars.Inverse.MULTIPLICITY))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ public SelectBuilder getAssociationPairsQuery(
.appendDomainQuery(REQUIRED)
.appendCommentQuery(OPTIONAL)
// inverse
.appendInverseUuidQuery(REQUIRED)
.appendInverseLabelQuery(REQUIRED)
.appendInverseMultiplicityQuery(REQUIRED)
.appendInverseAssociationUsedQuery(REQUIRED)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,17 @@ public CIMQueryBuilder appendPackageQuery(Mode mode) {

// inverse

/**
* Appends query for the uuid of objects connected via "cims:inverseRoleName" as {@link
* CIMQueryVars Inverse.UUID}.
*
* @param mode Whether the result of this is mode.
* @return {@link CIMQueryBuilder this}
*/
public CIMQueryBuilder appendInverseUuidQuery(Mode mode) {
return appendInverseSingleQuery(RDFA.uuid, CIMQueryVars.Inverse.UUID, mode);
}

/**
* Appends query for the label of objects connected via "cims:inverseRoleName" as {@link
* CIMQueryVars Inverse.LABEL}.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,8 +131,8 @@ public static SearchResult createSearchResult(
}

return SearchResult.builder()
.datasetName(graphIdentifier.getDatasetName())
.graphUri(graphIdentifier.getGraphUri())
.datasetName(graphIdentifier.datasetName())
.graphUri(graphIdentifier.graphUri())
.uri(parser.getURI(CIMQueryVars.URI))
.uuid(parser.getUUID(CIMQueryVars.UUID))
.label(parser.getLabel(CIMQueryVars.LABEL))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ public class ChangeLogService implements ChangeLogUseCase {
private GraphChangeLog getChangeLog(GraphIdentifier graphIdentifier) {
return changeLogs
.getOrDefault(SessionContext.getSessionId(), Collections.emptyMap())
.getOrDefault(graphIdentifier.getDatasetName(), Collections.emptyMap())
.getOrDefault(graphIdentifier.getGraphUri(), new GraphChangeLog());
.getOrDefault(graphIdentifier.datasetName(), Collections.emptyMap())
.getOrDefault(graphIdentifier.graphUri(), new GraphChangeLog());
}

@Override
Expand All @@ -56,8 +56,8 @@ public void recordChange(GraphIdentifier graphIdentifier, ChangeLogEntry entry)
.computeIfAbsent(
SessionContext.getSessionId(), _ -> new ConcurrentHashMap<>())
.computeIfAbsent(
graphIdentifier.getDatasetName(), _ -> new ConcurrentHashMap<>())
.computeIfAbsent(graphIdentifier.getGraphUri(), _ -> new GraphChangeLog());
graphIdentifier.datasetName(), _ -> new ConcurrentHashMap<>())
.computeIfAbsent(graphIdentifier.graphUri(), _ -> new GraphChangeLog());
graphChangeLog.addEntry(entry);
}

Expand Down
Loading
Loading