1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.millscript.commons.vfs.alerts;
22
23 import org.millscript.commons.alert.Alert;
24 import org.millscript.commons.vfs.VFile;
25
26 import java.io.File;
27
28 /**
29 * This class implements an Alert for use in situations like where a virtual
30 * filesystem entry cannot be opened.
31 */
32 public class VCannotOpenEntryAlert extends VFSAlert {
33
34 /**
35 * This is the ID from the first release for future compatibility.
36 */
37 private static final long serialVersionUID = 3258134643667644977L;
38
39 /**
40 * Constructs a new cannot open entry alert with no explanation.
41 */
42 public VCannotOpenEntryAlert() {
43 this( null );
44 }
45
46 /**
47 * Constructs a new cannot open entry alert with the specified
48 * explanation.
49 *
50 * @param exp the explanation for the alert
51 */
52 public VCannotOpenEntryAlert( final String exp ) {
53 this( "Cannot open virtual filesystem entry", exp );
54 }
55
56 /**
57 * Constructs a new alert with the specified complaint and explanation.
58 * This constructor is for private use, to allow us to provide an exception
59 * hierarchy.
60 *
61 * @param comp the alerts complaint
62 * @param exp the explanation for the alert
63 */
64 protected VCannotOpenEntryAlert( final String comp, final String exp ) {
65 super( comp, exp );
66 }
67
68 public static Alert fileNotFound( final File file ) {
69 return new VEntryNotFoundAlert( "File does not exist" ).culpritFile( file );
70 }
71
72 public static Alert fileNotFound( final VFile file ) {
73 return new VEntryNotFoundAlert( "File does not exist" ).decorate( file );
74 }
75
76 public static Alert entryIsNotAFile( final File file ) {
77 return new VEntryNotFoundAlert( "Required entry exists but is not a file" ).culpritFile( file );
78 }
79
80 public static Alert entryIsNotAFile( final VFile file ) {
81 return new VEntryNotFoundAlert( "Required entry exists but is not a file" ).decorate( file );
82 }
83
84 }