// Abstract Handler // // Douglas Thrift // // AbstractHandler.cs /* Copyright 2013 Douglas Thrift * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ using System; using System.IO; public abstract class AbstractHandler { protected string FindInPath(string program) { foreach (string location in Environment.GetEnvironmentVariable("PATH").Split(Path.PathSeparator)) { string path = Path.Combine(location, program); if (File.Exists(path)) return path; } return null; } protected void SetYesNoValue(string input, out AutoYesNoOption option, out string value) { value = null; switch (input.ToLowerInvariant()) { case "yes": option = AutoYesNoOption.Yes; break; case "no": option = AutoYesNoOption.No; break; default: value = input; goto case "yes"; } } }