2 using System.Configuration;
5 namespace TechBot.Console
7 public class ConsoleServiceOutput : IServiceOutput
9 public void WriteLine(string message)
11 System.Console.WriteLine(message);
18 private static void VerifyRequiredOption(string optionName,
21 if (optionValue == null)
23 throw new Exception(String.Format("Option '{0}' not set.",
28 private static string IRCServerHostName
32 string optionName = "IRCServerHostName";
33 string s = ConfigurationSettings.AppSettings[optionName];
34 VerifyRequiredOption(optionName,
40 private static int IRCServerHostPort
44 string optionName = "IRCServerHostPort";
45 string s = ConfigurationSettings.AppSettings[optionName];
46 VerifyRequiredOption(optionName,
48 return Int32.Parse(s);
52 private static string IRCChannelName
56 string optionName = "IRCChannelName";
57 string s = ConfigurationSettings.AppSettings[optionName];
58 VerifyRequiredOption(optionName,
64 private static string IRCBotName
68 string optionName = "IRCBotName";
69 string s = ConfigurationSettings.AppSettings[optionName];
70 VerifyRequiredOption(optionName,
76 private static string ChmPath
80 string optionName = "ChmPath";
81 string s = ConfigurationSettings.AppSettings[optionName];
82 VerifyRequiredOption(optionName,
88 private static string MainChm
92 string optionName = "MainChm";
93 string s = ConfigurationSettings.AppSettings[optionName];
94 VerifyRequiredOption(optionName,
100 private static string NtstatusXml
104 string optionName = "NtstatusXml";
105 string s = ConfigurationSettings.AppSettings[optionName];
106 VerifyRequiredOption(optionName,
112 private static string WinerrorXml
116 string optionName = "WinerrorXml";
117 string s = ConfigurationSettings.AppSettings[optionName];
118 VerifyRequiredOption(optionName,
124 private static string HresultXml
128 string optionName = "HresultXml";
129 string s = ConfigurationSettings.AppSettings[optionName];
130 VerifyRequiredOption(optionName,
136 private static string SvnCommand
140 string optionName = "SvnCommand";
141 string s = ConfigurationSettings.AppSettings[optionName];
142 VerifyRequiredOption(optionName,
148 private static void RunIrcService()
150 IrcService ircService = new IrcService(IRCServerHostName,
163 public static void Main(string[] args)
165 if (args.Length > 0 && args[0].ToLower().Equals("irc"))
171 System.Console.WriteLine("TechBot running console service...");
172 TechBotService service = new TechBotService(new ConsoleServiceOutput(),
182 string s = System.Console.ReadLine();
183 service.InjectMessage(s);