aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/store-query/src/main/java/tools/refinery/store/query/DnfUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/store-query/src/main/java/tools/refinery/store/query/DnfUtils.java')
-rw-r--r--subprojects/store-query/src/main/java/tools/refinery/store/query/DnfUtils.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/subprojects/store-query/src/main/java/tools/refinery/store/query/DnfUtils.java b/subprojects/store-query/src/main/java/tools/refinery/store/query/DnfUtils.java
new file mode 100644
index 00000000..17564d43
--- /dev/null
+++ b/subprojects/store-query/src/main/java/tools/refinery/store/query/DnfUtils.java
@@ -0,0 +1,24 @@
1package tools.refinery.store.query;
2
3import java.util.Map;
4import java.util.UUID;
5
6public final class DnfUtils {
7 private DnfUtils() {
8 throw new IllegalStateException("This is a static utility class and should not be instantiated directly");
9 }
10
11 public static String generateUniqueName(String originalName) {
12 UUID uuid = UUID.randomUUID();
13 String uniqueString = "_" + uuid.toString().replace('-', '_');
14 if (originalName == null) {
15 return uniqueString;
16 } else {
17 return originalName + uniqueString;
18 }
19 }
20
21 public static Variable maybeSubstitute(Variable variable, Map<Variable, Variable> substitution) {
22 return substitution.getOrDefault(variable, variable);
23 }
24}