| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 | /******************************************************************************* copyright: Copyright (c) 2006 Juan Jose Comellas. All rights reserved license: BSD style: $(LICENSE) author: Juan Jose Comellas $(EMAIL juanjo@comellas.com.ar) *******************************************************************************/ module tango.io.selector.SelectorException; //private import tango.core.Exception; /** * SelectorException is thrown when the Selector cannot be created because * of insufficient resources (file descriptors, memory, etc.) */ public class SelectorException: Exception { /** * Construct a selector exception with the provided text string * * Params: * file = name of the source file where the exception was thrown; you * would normally use __FILE__ for this parameter. * line = line number of the source file where the exception was * thrown; you would normally use __LINE__ for this parameter. */ public this(string msg, string file, size_t line) { super(msg, file, line); } } /** * UnregisteredConduitException is thrown when the selector looks for a * registered conduit and it cannot find it. */ public class UnregisteredConduitException: SelectorException { /** * Construct a selector exception with the provided text string * * Params: * file = name of the source file where the exception was thrown; you * would normally use __FILE__ for this parameter. * line = line number of the source file where the exception was * thrown; you would normally use __LINE__ for this parameter. */ public this(string file, size_t line) { super("The conduit is not registered to the selector", file, line); } } /** * RegisteredConduitException is thrown when a selector detects that a conduit * registration was attempted more than once. */ public class RegisteredConduitException: SelectorException { /** * Construct a selector exception with the provided text string * * Params: * file = name of the source file where the exception was thrown; you * would normally use __FILE__ for this parameter. * line = line number of the source file where the exception was * thrown; you would normally use __LINE__ for this parameter. */ public this(string file, size_t line) { super("The conduit is already registered to the selector", file, line); } } /** * InterruptedSystemCallException is thrown when a system call is interrupted * by a signal and the selector was not set to restart it automatically. */ public class InterruptedSystemCallException: SelectorException { /** * Construct a selector exception with the provided text string * * Params: * file = name of the source file where the exception was thrown; you * would normally use __FILE__ for this parameter. * line = line number of the source file where the exception was * thrown; you would normally use __LINE__ for this parameter. */ public this(string file, size_t line) { super("A system call was interrupted by a signal", file, line); } } /** * OutOfMemoryException is thrown when there is not enough memory. */ public class OutOfMemoryException: SelectorException { /** * Construct a selector exception with the provided text string * * Params: * file = name of the source file where the exception was thrown; you * would normally use __FILE__ for this parameter. * line = line number of the source file where the exception was * thrown; you would normally use __LINE__ for this parameter. */ public this(string file, size_t line) { super("Out of memory", file, line); } } |