--- /dev/null
+package org.simantics.db.server;\r
+\r
+import java.io.File;\r
+import java.nio.file.Path;\r
+\r
+import org.simantics.db.Database;\r
+import org.simantics.db.exception.SDBException;\r
+import org.simantics.db.server.internal.DatabaseI;\r
+import org.simantics.db.server.internal.DatabaseManager;\r
+\r
+public class Auxiliary {\r
+ public static void ignoreExit(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ if (!db.ignoreExit())\r
+ throw new ProCoreException("Ignoring exit status did not help.");\r
+ }\r
+ public static void ignoreProtocol(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ if (!db.ignoreProtocol())\r
+ throw new ProCoreException("Ignoring protocol version did not help.");\r
+ }\r
+ public static void copyDatabase(File dbFolder, File dbTo)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ db.copy(dbTo);\r
+ }\r
+ public static boolean purgeDatabaseDone(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ return !db.canPurge();\r
+ }\r
+ public static void purgeDatabase(File dbFolder)\r
+ throws SDBException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ db.purge();\r
+ }\r
+ public static void deleteDatabase(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ db.deleteDatabaseFiles();\r
+ }\r
+ public static void deleteDatabaseFiles(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI.deleteDatabaseFiles(dbFolder.toPath());\r
+ }\r
+ public static boolean canReadJournal(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ Database.Journal j = db.getJournal();\r
+ return j.canRead();\r
+ }\r
+ public static Path replaceFromJournal(File dbFolder)\r
+ throws SDBException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ db.replaceFromJournal();\r
+ return dbFolder.toPath();\r
+ }\r
+ public static Path saveDatabase(File dbFolder)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ return db.saveDatabase();\r
+ }\r
+ public static Path saveDatabase(File dbFolder, Path parent)\r
+ throws ProCoreException {\r
+ DatabaseI db = DatabaseManager.getDatabase(dbFolder.toPath());\r
+ return db.saveDatabase(parent);\r
+ }\r
+}\r