/// <summary> /// Get the value of a variable defined at a certain scope by name /// </summary> /// <param name="name">name of the variable</param> /// <param name="scope">scope at which the variable is defined</param> /// <returns>returns the value of the variable (or null if not existent or exception if you really want to mess things up, dude!)</returns> public T GetVariable <T>(string name, EVariableScope scope) { object o = GetVariable(name, scope); if (o == null) { return(default(T)); } return((T)o); }
// =============================================================================================================================================== // =============================================================================================================================================== /// <summary> /// Get the value of a variable defined at a certain scope by name /// </summary> /// <param name="name">name of the variable</param> /// <param name="scope">scope at which the variable is defined</param> /// <returns>returns the value of the variable (or null if not existent or exception if you really want to mess things up, dude!)</returns> public object GetVariable(string name, EVariableScope scope) { switch (scope) { case EVariableScope.File: return(GetFileVariable(name)); case EVariableScope.User: return(GetUserVariable(name)); case EVariableScope.FileAndUser: return(GetUserFileVariable(name)); case EVariableScope.Global: return(GetGlobalVariable(name)); default: throw new Exception("Error: The scope has to be set to one of the predefined states!"); } }
// =============================================================================================================================================== // =============================================================================================================================================== /// <summary> /// Set the value of a variable defined at a certain scope by name /// </summary> /// <typeparam name="T">The type of the value</typeparam> /// <param name="name">name of the variable</param> /// <param name="value">the value to set to the variable</param> /// <param name="scope">scope at which the variable is/will be defined</param> public void SetVariable <T>(string name, T value, EVariableScope scope) { switch (scope) { case EVariableScope.File: SetFileVariable(name, value); break; case EVariableScope.User: SetUserVariable(name, value); break; case EVariableScope.FileAndUser: SetUserFileVariable(name, value); break; case EVariableScope.Global: SetGlobalVariable(name, value); break; default: throw new Exception("Error: The scope has to be set to one of the predefined states!"); } }