1 package org.simantics.graph.db;
\r
3 import java.util.Set;
\r
5 import org.simantics.db.exception.DatabaseException;
\r
7 public class MissingDependencyException extends DatabaseException {
\r
9 private static final long serialVersionUID = -1579450497603555931L;
\r
11 private final Set<String> missingExternals;
\r
13 public MissingDependencyException(Set<String> missingExternals) {
\r
14 super(createMessage(missingExternals));
\r
15 this.missingExternals = missingExternals;
\r
18 public MissingDependencyException(TransferableGraphImportProcess process) {
\r
19 this(process.missingExternals);
\r
22 public MissingDependencyException(StreamingTransferableGraphImportProcess process) {
\r
23 this(process.missingExternals);
\r
26 private static String createMessage(Set<String> missingExternals) {
\r
27 StringBuilder b = new StringBuilder();
\r
28 b.append("The following required items were missing from the database:\r\n");
\r
29 for(String missing : missingExternals) {
\r
30 b.append(" -" + missing + "\r\n");
\r
32 return b.toString();
\r
35 public Set<String> getMissingURIs() {
\r
36 return missingExternals;
\r
40 public String getShortExplanation() {
\r
41 return "Missing dependencies";
\r