comparison tango/tango/io/selector/SelectorException.d @ 132:1700239cab2e trunk

[svn r136] MAJOR UNSTABLE UPDATE!!! Initial commit after moving to Tango instead of Phobos. Lots of bugfixes... This build is not suitable for most things.
author lindquist
date Fri, 11 Jan 2008 17:57:40 +0100
parents
children
comparison
equal deleted inserted replaced
131:5825d48b27d1 132:1700239cab2e
1 /*******************************************************************************
2 copyright: Copyright (c) 2006 Juan Jose Comellas. All rights reserved
3 license: BSD style: $(LICENSE)
4 author: Juan Jose Comellas <juanjo@comellas.com.ar>
5 *******************************************************************************/
6
7 module tango.io.selector.SelectorException;
8
9 //private import tango.core.Exception;
10
11
12 /**
13 * SelectorException is thrown when the Selector cannot be created because
14 * of insufficient resources (file descriptors, memory, etc.)
15 */
16 public class SelectorException: Exception
17 {
18 /**
19 * Construct a selector exception with the provided text string
20 *
21 * Params:
22 * file = name of the source file where the exception was thrown; you
23 * would normally use __FILE__ for this parameter.
24 * line = line number of the source file where the exception was
25 * thrown; you would normally use __LINE__ for this parameter.
26 */
27 public this(char[] msg, char[] file, uint line)
28 {
29 super(msg, file, line);
30 }
31 }
32
33
34 /**
35 * UnregisteredConduitException is thrown when the selector looks for a
36 * registered conduit and it cannot find it.
37 */
38 public class UnregisteredConduitException: SelectorException
39 {
40 /**
41 * Construct a selector exception with the provided text string
42 *
43 * Params:
44 * file = name of the source file where the exception was thrown; you
45 * would normally use __FILE__ for this parameter.
46 * line = line number of the source file where the exception was
47 * thrown; you would normally use __LINE__ for this parameter.
48 */
49 public this(char[] file, uint line)
50 {
51 super("The conduit is not registered to the selector", file, line);
52 }
53 }
54
55 /**
56 * RegisteredConduitException is thrown when a selector detects that a conduit
57 * registration was attempted more than once.
58 */
59 public class RegisteredConduitException: SelectorException
60 {
61 /**
62 * Construct a selector exception with the provided text string
63 *
64 * Params:
65 * file = name of the source file where the exception was thrown; you
66 * would normally use __FILE__ for this parameter.
67 * line = line number of the source file where the exception was
68 * thrown; you would normally use __LINE__ for this parameter.
69 */
70 public this(char[] file, uint line)
71 {
72 super("The conduit is already registered to the selector", file, line);
73 }
74 }
75
76 /**
77 * InterruptedSystemCallException is thrown when a system call is interrupted
78 * by a signal and the selector was not set to restart it automatically.
79 */
80 public class InterruptedSystemCallException: SelectorException
81 {
82 /**
83 * Construct a selector exception with the provided text string
84 *
85 * Params:
86 * file = name of the source file where the exception was thrown; you
87 * would normally use __FILE__ for this parameter.
88 * line = line number of the source file where the exception was
89 * thrown; you would normally use __LINE__ for this parameter.
90 */
91 public this(char[] file, uint line)
92 {
93 super("A system call was interrupted by a signal", file, line);
94 }
95 }
96
97 /**
98 * OutOfMemoryException is thrown when there is not enough memory.
99 */
100 public class OutOfMemoryException: SelectorException
101 {
102 /**
103 * Construct a selector exception with the provided text string
104 *
105 * Params:
106 * file = name of the source file where the exception was thrown; you
107 * would normally use __FILE__ for this parameter.
108 * line = line number of the source file where the exception was
109 * thrown; you would normally use __LINE__ for this parameter.
110 */
111 public this(char[] file, uint line)
112 {
113 super("Out of memory", file, line);
114 }
115 }
116