示例#1
0
        protected void RegisterParameter(string paramName, object value, ParameterValueParser parseParameterDelegate, ParameterValuePresentator valuePresentator = null)
        {
            if (null == valuePresentator)
            {
                valuePresentator = defaultParameterValuePresentator;
            }

            ParametersInfo.Add(paramName, new PluginParameterInfo(paramName, parseParameterDelegate, valuePresentator, value));
        }
示例#2
0
        public PluginParameterInfo(string name, ParameterValueParser parseParameterDelegate, ParameterValuePresentator valuePresentator, object value)
        {
            IsEnum = false;

            Parser      = parseParameterDelegate;
            Presentator = valuePresentator;
            Name        = name;

            Value = value;
        }
示例#3
0
        public PluginParameterInfo(string name, ParameterValueParser parseParameterDelegate, ParameterValuePresentator valuePresentator, HashSet <string> possibleValues, object value)
        {
            IsEnum = true;

            Parser      = parseParameterDelegate;
            Presentator = valuePresentator;
            Name        = name;

            PossibleValues = possibleValues;
            Value          = value;
        }
示例#4
0
 private bool TryParseParameterValue(ParameterValueParser parser, string valueStr, ref object value)
 {
     try
     {
         value = parser(valueStr);
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }