static bool TryGetSocketCreator(string socket_kind, out SocketCreator creator) { switch (socket_kind.ToLower()) { case "pipe": creator = delegate(ConfigurationManager configmanager, string[] socketParts, out Socket socket) { return(TryCreatePipe(out socket)); }; return(true); // The FILE sockets is of the format // "file[:PATH]". case "unix": case "file": creator = TryCreateUnixSocket; return(true); // The TCP socket is of the format // "tcp[[:ADDRESS]:PORT]". case "tcp": creator = TryCreateTcpSocket; return(true); default: Logger.Write(LogLevel.Error, WRONG_KIND, socket_kind); creator = null; return(false); } }
static bool TryGetSocketCreator(string socket_kind, out SocketCreator creator) { switch (socket_kind.ToLower ()) { case "pipe": creator = (ConfigurationManager configmanager, string[] socketParts, out Socket socket) => TryCreatePipe (out socket); return true; // The FILE sockets is of the format // "file[:PATH]". case "unix": case "file": creator = TryCreateUnixSocket; return true; // The TCP socket is of the format // "tcp[[:ADDRESS]:PORT]". case "tcp": creator = TryCreateTcpSocket; return true; default: Logger.Write (LogLevel.Error, WRONG_KIND, socket_kind); creator = null; return false; } }
static bool TryGetSocketCreator(string[] socket_parts, out SocketCreator creator) { switch (socket_parts [0].ToLower ()) { case "pipe": creator = TryCreatePipe; return true; // The FILE sockets is of the format // "file[:PATH]". case "unix": case "file": creator = TryCreateUnixSocket; return true; // The TCP socket is of the format // "tcp[[:ADDRESS]:PORT]". case "tcp": creator = TryCreateTcpSocket; return true; default: Logger.Write (LogLevel.Error, "Error in argument \"socket\". \"{0}\" is not a supported type. Use \"pipe\", \"tcp\" or \"unix\".", socket_parts [0]); creator = null; return false; } }