-/*******************************************************************************\r
- * Copyright (c) 2007, 2010 Association for Decentralized Information Management\r
- * in Industry THTH ry.\r
- * All rights reserved. This program and the accompanying materials\r
- * are made available under the terms of the Eclipse Public License v1.0\r
- * which accompanies this distribution, and is available at\r
- * http://www.eclipse.org/legal/epl-v10.html\r
- *\r
- * Contributors:\r
- * VTT Technical Research Centre of Finland - initial API and implementation\r
- *******************************************************************************/\r
-package fi.vtt.simantics.procore;\r
-\r
-import java.io.IOException;\r
-import java.net.InetSocketAddress;\r
-import java.nio.file.Files;\r
-import java.nio.file.Path;\r
-import java.nio.file.Paths;\r
-\r
-import org.simantics.db.ServerReference;\r
-import org.simantics.db.common.utils.Logger;\r
-\r
-/**\r
- * @author Toni Kalajainen\r
- */\r
-public final class ProCoreServerReference implements ServerReference {\r
- public final Path dbFolder; // ProCoreServer is identified by database folder.\r
- public final InetSocketAddress socketAddress; // deprecated\r
- public final String dbid; // deprecated\r
-\r
- public ProCoreServerReference() {\r
- dbFolder = Paths.get("/"); // Assuming we don't have write rights to root.\r
- dbid = "";\r
- socketAddress = InetSocketAddress.createUnresolved("127.0.0.0", 0);\r
- }\r
- public ProCoreServerReference(Path dbFolder) {\r
- if (null == dbFolder) // Null means that caller does not care what the value is.\r
- dbFolder = Paths.get("/"); // Assuming we don't have write rights to root.\r
- this.dbFolder = dbFolder;\r
- dbid = "";\r
- socketAddress = InetSocketAddress.createUnresolved("127.0.0.0", 0);\r
- }\r
-// public ProCoreServerReference(ServerAddress address) throws InternalException {\r
-// Path dbFolder = Paths.get(address.getDbid()); // Maybe it would be better to let address resolve folder?\r
-// if (Files.isDirectory(dbFolder))\r
-// throw new ProCoreException("Server address does not contain valid database folder. address=" + address);\r
-// if (null == dbFolder) // Null means that caller does not care what the value is.\r
-// dbFolder = Paths.get("/"); // Assuming we don't have write rights to root.\r
-// this.dbFolder = dbFolder;\r
-// dbid = "";\r
-// socketAddress = InetSocketAddress.createUnresolved("127.0.0.0", 0);\r
-// }\r
- public ProCoreServerReference(Path dbFolder, String hostAndPort) {\r
- this.dbFolder = dbFolder;\r
- String[] split = hostAndPort.split(":");\r
- if (split.length != 2)\r
- throw new IllegalArgumentException("address does not contain a port, missing ':' character");\r
- this.socketAddress = InetSocketAddress.createUnresolved(split[0], Integer.parseInt(split[1]));\r
- this.dbid = null;\r
- }\r
-\r
- public ProCoreServerReference(Path dbFolder, String host, int port) {\r
- this.dbFolder = dbFolder;\r
- this.socketAddress = new InetSocketAddress(host, port);\r
- this.dbid = null;\r
- }\r
-\r
- public ProCoreServerReference(Path dbFolder, String host, int port, String dbid) {\r
- this.dbFolder = dbFolder;\r
- this.socketAddress = InetSocketAddress.createUnresolved(host, port);\r
- this.dbid = dbid;\r
- }\r
-\r
- public ProCoreServerReference(Path dbFolder, InetSocketAddress socketAddress) {\r
- this.dbFolder = dbFolder;\r
- this.socketAddress = socketAddress;\r
- this.dbid = null;\r
- }\r
-\r
- public ProCoreServerReference(Path dbFolder, InetSocketAddress socketAddress, String dbid) {\r
- this.dbFolder = dbFolder;\r
- this.socketAddress = socketAddress;\r
- this.dbid = dbid;\r
- }\r
-\r
- @Override\r
- public int hashCode() {\r
- return dbFolder.hashCode();\r
- }\r
-\r
- @Override\r
- public boolean equals(Object other) {\r
- if (this == other) return true;\r
- if (other == null || !(getClass().equals(other.getClass()))) return false;\r
- ProCoreServerReference r = (ProCoreServerReference) other;\r
- try {\r
- return Files.isSameFile(dbFolder, r.dbFolder);\r
- } catch (IOException e) {\r
- Logger.defaultLogError("Failed to compare db folders. f1=" + dbFolder + " f2=" + r.dbFolder, e);\r
- return false;\r
- }\r
- }\r
-\r
- @Override\r
- public String toString() {\r
- return dbFolder.toString();\r
- }\r
- @Override\r
- public Path getDBFolder() {\r
- return dbFolder;\r
- }\r
-\r
-}\r
+/*******************************************************************************
+ * Copyright (c) 2007, 2010 Association for Decentralized Information Management
+ * in Industry THTH ry.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * VTT Technical Research Centre of Finland - initial API and implementation
+ *******************************************************************************/
+package fi.vtt.simantics.procore;
+
+import java.io.IOException;
+import java.net.InetSocketAddress;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
+import org.simantics.db.ServerReference;
+import org.simantics.db.common.utils.Logger;
+
+/**
+ * @author Toni Kalajainen
+ */
+public final class ProCoreServerReference implements ServerReference {
+ public final Path dbFolder; // ProCoreServer is identified by database folder.
+ public final InetSocketAddress socketAddress; // deprecated
+ public final String dbid; // deprecated
+
+ public ProCoreServerReference() {
+ dbFolder = Paths.get("/"); // Assuming we don't have write rights to root.
+ dbid = "";
+ socketAddress = InetSocketAddress.createUnresolved("127.0.0.0", 0);
+ }
+ public ProCoreServerReference(Path dbFolder) {
+ if (null == dbFolder) // Null means that caller does not care what the value is.
+ dbFolder = Paths.get("/"); // Assuming we don't have write rights to root.
+ this.dbFolder = dbFolder;
+ dbid = "";
+ socketAddress = InetSocketAddress.createUnresolved("127.0.0.0", 0);
+ }
+// public ProCoreServerReference(ServerAddress address) throws InternalException {
+// Path dbFolder = Paths.get(address.getDbid()); // Maybe it would be better to let address resolve folder?
+// if (Files.isDirectory(dbFolder))
+// throw new ProCoreException("Server address does not contain valid database folder. address=" + address);
+// if (null == dbFolder) // Null means that caller does not care what the value is.
+// dbFolder = Paths.get("/"); // Assuming we don't have write rights to root.
+// this.dbFolder = dbFolder;
+// dbid = "";
+// socketAddress = InetSocketAddress.createUnresolved("127.0.0.0", 0);
+// }
+ public ProCoreServerReference(Path dbFolder, String hostAndPort) {
+ this.dbFolder = dbFolder;
+ String[] split = hostAndPort.split(":");
+ if (split.length != 2)
+ throw new IllegalArgumentException("address does not contain a port, missing ':' character");
+ this.socketAddress = InetSocketAddress.createUnresolved(split[0], Integer.parseInt(split[1]));
+ this.dbid = null;
+ }
+
+ public ProCoreServerReference(Path dbFolder, String host, int port) {
+ this.dbFolder = dbFolder;
+ this.socketAddress = new InetSocketAddress(host, port);
+ this.dbid = null;
+ }
+
+ public ProCoreServerReference(Path dbFolder, String host, int port, String dbid) {
+ this.dbFolder = dbFolder;
+ this.socketAddress = InetSocketAddress.createUnresolved(host, port);
+ this.dbid = dbid;
+ }
+
+ public ProCoreServerReference(Path dbFolder, InetSocketAddress socketAddress) {
+ this.dbFolder = dbFolder;
+ this.socketAddress = socketAddress;
+ this.dbid = null;
+ }
+
+ public ProCoreServerReference(Path dbFolder, InetSocketAddress socketAddress, String dbid) {
+ this.dbFolder = dbFolder;
+ this.socketAddress = socketAddress;
+ this.dbid = dbid;
+ }
+
+ @Override
+ public int hashCode() {
+ return dbFolder.hashCode();
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (this == other) return true;
+ if (other == null || !(getClass().equals(other.getClass()))) return false;
+ ProCoreServerReference r = (ProCoreServerReference) other;
+ try {
+ return Files.isSameFile(dbFolder, r.dbFolder);
+ } catch (IOException e) {
+ Logger.defaultLogError("Failed to compare db folders. f1=" + dbFolder + " f2=" + r.dbFolder, e);
+ return false;
+ }
+ }
+
+ @Override
+ public String toString() {
+ return dbFolder.toString();
+ }
+ @Override
+ public Path getDBFolder() {
+ return dbFolder;
+ }
+
+}