//UC7-Use Reflection to change mood dynamically public static string SetField(string message, string fieldName) { try { MoodAnalyzer obj = new MoodAnalyzer(); Type type = Type.GetType("MoodAnalyzerProblem.MoodAnalyzer"); FieldInfo field = type.GetField(fieldName); if (message == null) { throw new MoodAnalyzerException(MoodAnalyzerException.ExceptionType.NO_SUCH_FEILD, "Mood should not be NULL"); } field.SetValue(obj, message); return obj.message; } catch (NullReferenceException) { throw new MoodAnalyzerException(MoodAnalyzerException.ExceptionType.NO_SUCH_FIELD, "No Such Field"); } }
static void Main(string[] args) { Console.WriteLine("Welcome to Mood Analyser:"); MoodAnalyzer mood = new MoodAnalyzer(); MoodAnalyzerFactory factory = new MoodAnalyzerFactory(); }