/// <summary> /// Load class defined into the string parameters. /// Use 'classname' tag to define class and try to pass string parameters to configure it. Class must be IVarFormatter. /// </summary> /// <returns></returns> protected virtual void LoadCustomClass(){ IDictionary<string,string> parameters = GetFormatterParametersData(); if(parameters == null)throw new ArgumentNullException("Class Name"); if(!parameters.ContainsKey(ClassNameTag)){ throw new ArgumentNullException("Class Name"); } string className = parameters[ClassNameTag]; Type tLoad = AssembliesTypesLoader.GetType( className ); if(tLoad == null)throw new Exception("Class '"+className+"' not found!"); object objLoad = null; try{ objLoad = Activator.CreateInstance( tLoad, new object[]{ FormatterParameters } );//string constructor first }catch(Exception){ //if crashes use anonymous constructor.. try{ objLoad = Activator.CreateInstance( tLoad, new object[]{} ); }catch(Exception){ } } if(objLoad == null) throw new Exception("Object invocation failed!"); if(!(objLoad is IVarFormatter))throw new InvalidCastException("Object isn't IVarFormatter"); this._customFormatter = (IVarFormatter)objLoad; }
/// <summary> /// Load class defined into the string parameters. /// Use 'classname' tag to define class and try to pass string parameters to configure it. Class must be IVarFormatter. /// </summary> /// <returns></returns> protected virtual void LoadCustomClass() { IDictionary <string, string> parameters = GetFormatterParametersData(); if (parameters == null) { throw new ArgumentNullException("Class Name"); } if (!parameters.ContainsKey(ClassNameTag)) { throw new ArgumentNullException("Class Name"); } string className = parameters[ClassNameTag]; Type tLoad = AssembliesTypesLoader.GetType(className); if (tLoad == null) { throw new Exception("Class '" + className + "' not found!"); } object objLoad = null; try{ objLoad = Activator.CreateInstance(tLoad, new object[] { FormatterParameters }); //string constructor first }catch (Exception) { //if crashes use anonymous constructor.. try{ objLoad = Activator.CreateInstance(tLoad, new object[] {}); }catch (Exception) { } } if (objLoad == null) { throw new Exception("Object invocation failed!"); } if (!(objLoad is IVarFormatter)) { throw new InvalidCastException("Object isn't IVarFormatter"); } this._customFormatter = (IVarFormatter)objLoad; }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="optional"></param> /// <param name="format"></param> /// <param name="formatParameters"></param> public FormatableVariable(string name, bool optional, DefaultFormat format, string formatParameters) : base(name, optional) { _formatter = GetFormatter(format, formatParameters); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="optional"></param> /// <param name="formatter"></param> public FormatableVariable(string name, bool optional, IVarFormatter formatter) : base(name, optional) { _formatter = formatter; }
/// <summary> /// Create a default TEXT variable. /// </summary> /// <param name="name"></param> /// <param name="optional"></param> public FormatableVariable(string name, bool optional) : base(name, optional) { _formatter = new TextVarFormatter(); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="format"></param> /// <param name="formatParameters"></param> public FormatableVariable(string name, DefaultFormat format, string formatParameters) : base(name) { _formatter = GetFormatter(format, formatParameters); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="formatter"></param> public FormatableVariable(string name, IVarFormatter formatter) : base(name) { _formatter = formatter; }
/// <summary> /// Create a default TEXT variable. /// </summary> /// <param name="name"></param> public FormatableVariable(string name) : base(name) { _formatter = new TextVarFormatter(); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="optional"></param> /// <param name="formatter"></param> public FormatableVariable( string name, bool optional, IVarFormatter formatter):base( name,optional ) { _formatter = formatter; }
/// <summary> /// Create a default TEXT variable. /// </summary> /// <param name="name"></param> /// <param name="optional"></param> public FormatableVariable( string name , bool optional):base( name, optional ) { _formatter = new TextVarFormatter(); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="format"></param> /// <param name="formatParameters"></param> public FormatableVariable( string name, DefaultFormat format, string formatParameters):base( name ) { _formatter = GetFormatter( format, formatParameters ); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="formatter"></param> public FormatableVariable( string name, IVarFormatter formatter):base( name ) { _formatter = formatter; }
/// <summary> /// Create a default TEXT variable. /// </summary> /// <param name="name"></param> public FormatableVariable( string name ):base( name ) { _formatter = new TextVarFormatter(); }
/// <summary> /// Create custom formatable var. /// </summary> /// <param name="name"></param> /// <param name="optional"></param> /// <param name="format"></param> /// <param name="formatParameters"></param> public FormatableVariable( string name, bool optional, DefaultFormat format, string formatParameters):base( name, optional ) { _formatter = GetFormatter( format, formatParameters ); }