/// <summary>
        /// Adds <paramref name="name"/> into values but first makes it all uppercase and trims it.
        /// </summary>
        /// <param name="name">The name of the value</param>
        /// <param name="value">The value to set it to</param>
        protected void SetValue(String name, String value, String fileDirectory)
        {
            if (String.IsNullOrWhiteSpace(name))
            {
                if (log.IsDebugEnabled)
                {
                    log.Debug("An empty name was received");
                }
                return;
            }

            if(String.IsNullOrWhiteSpace(fileDirectory))
            {
                fileDirectory = Environment.CurrentDirectory;
            }

            Values[NormalizeKey(name)] = new PropertyMetaData
            {
                Value = value,
                FullPath = fileDirectory
            };
        }
 protected PropertyMetaData ResolveFormatAndMethods(PropertyMetaData value)
 {
     if (value == null)
     {
         return null;
     }
     String fixedValue = VariableReferenceRegex.Replace(value, VariableMatch);
     fixedValue = MethodReferenceRegex.Replace(fixedValue, MethodMatch);
     return new PropertyMetaData
         {
             Value = fixedValue,
             FullPath = value.FullPath
         };
 }