]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.graph.db/src/org/simantics/graph/db/MissingDependencyException.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.graph.db / src / org / simantics / graph / db / MissingDependencyException.java
1 package org.simantics.graph.db;\r
2 \r
3 import java.util.Set;\r
4 \r
5 import org.simantics.db.exception.DatabaseException;\r
6 \r
7 public class MissingDependencyException extends DatabaseException {\r
8 \r
9         private static final long serialVersionUID = -1579450497603555931L;\r
10         \r
11         private final Set<String> missingExternals;\r
12         \r
13         public MissingDependencyException(Set<String> missingExternals) {\r
14                 super(createMessage(missingExternals));\r
15                 this.missingExternals = missingExternals;\r
16         }\r
17 \r
18         public MissingDependencyException(TransferableGraphImportProcess process) {\r
19                 this(process.missingExternals);\r
20         }\r
21 \r
22         public MissingDependencyException(StreamingTransferableGraphImportProcess process) {\r
23                 this(process.missingExternals);\r
24         }\r
25 \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
31                 }\r
32                 return b.toString();\r
33         }\r
34         \r
35         public Set<String> getMissingURIs() {\r
36                 return missingExternals;\r
37         }\r
38         \r
39         @Override\r
40         public String getShortExplanation() {\r
41                 return "Missing dependencies";\r
42         }\r
43 \r
44 }\r