public virtual void ClearModifiers() { if (modifier != FieldModifier.None) { modifier = FieldModifier.None; Changed(); } }
public override void Out(ByteBuffer buffer) { if (this.OutResponseStatus(buffer)) { buffer.Append(this.typeIndex); buffer.Append(this.members.Length); for (int i = 0; i < this.members.Length; i++) { using (SafeWrapByteBuffer wrap = SafeWrapByteBuffer.Get(buffer)) { try { if (this.members[i] is FieldModifier) { FieldModifier modifier = (this.members[i] as FieldModifier); buffer.Append(modifier.fieldInfo.IsLiteral == false || modifier.fieldInfo.IsInitOnly == true); } else { buffer.Append((this.members[i] as PropertyModifier).propertyInfo.GetSetMethod() != null); } NetField.Serialize(buffer, null, this.members[i]); } catch (Exception ex) { InternalNGDebug.LogException("Inspectable type index \"" + this.typeIndex + "\" at static member \"" + this.members[i].Name + "\" failed.", ex); wrap.Erase(); } } } } }
/// <summary> /// Gets the <see cref="FieldModifier" /> as a C# string. /// </summary> /// <param name="modifier">The <see cref="FieldModifier" /> to convert.</param> /// <returns>The <see cref="FieldModifier" /> as a string.</returns> public static string Declaration(this FieldModifier modifier) { switch (modifier) { case FieldModifier.Static: return("static"); case FieldModifier.Readonly: return("readonly"); case FieldModifier.Constant: return("const"); case FieldModifier.Hider: return("new"); case FieldModifier.Volatile: return("volatile"); case FieldModifier.None: return(""); default: return(""); } }
private void ChangeModifier(FieldModifier modifier) { if (ValidateDeclarationLine()) { Field field = shape.ActiveMember as Field; if (field != null) { try { // Clear other modifiers field.ClearModifiers(); // Set new values field.IsReadonly = ((modifier & FieldModifier.Readonly) != 0); field.IsConstant = ((modifier & FieldModifier.Constant) != 0); field.IsVolatile = ((modifier & FieldModifier.Volatile) != 0); RefreshValues(); } catch (BadSyntaxException ex) { RefreshValues(); SetError(ex.Message); } } } }
public StructureMember(FieldModifier modifier, NamespaceName fieldType, string identifier, Versioning versioning, NamespaceName fieldContainer) : base(identifier, versioning) { _modifier = modifier; _fieldType = fieldType; _fieldContainer = fieldContainer; }
protected override void CopyFrom(Member member) { base.CopyFrom(member); Field field = (Field) member; modifier = field.modifier; initialValue = field.initialValue; }
public override bool IsValidModifier(FieldModifier modifier) { return( modifier == FieldModifier.Static || modifier == FieldModifier.Readonly || modifier == FieldModifier.Volatile ); }
public static string AsString(this FieldModifier modifier) { if (modifier == FieldModifier.None) { return(string.Empty); } return(EnumToLower(modifier)); }
/// <summary> /// Returns a readable string containing the <see cref="FieldModifier"/>. /// </summary> /// <param name="fieldModifier">The <see cref="FieldModifier"/> to convert to a string.</param> /// <returns>The converted <see cref="FieldModifier"/></returns> private static string ToString(FieldModifier fieldModifier) { if (fieldModifier == FieldModifier.None) { return(""); } return(fieldModifier.ToString().ToLower() + " "); }
public static FieldGenerator Field(AccessModifier scope, FieldModifier modifier, Type type, string name) { var field = new FieldGenerator(); field.scope = scope; field.modifier = modifier; field.type = type; field.name = name.LegalMemberName(); field.defaultValue = type.Default(); return(field); }
public static FieldGenerator Field(AccessModifier scope, FieldModifier modifier, Type type, string name) { var field = new FieldGenerator(); field.scope = scope; field.modifier = modifier; field.type = type; field.name = name; field.defaultValue = HUMValue.Create().New(type); return(field); }
public static FieldGenerator Field(AccessModifier scope, FieldModifier modifier, string typeName, string typeNamespace, string name, string defaultValue = null, HighlightType highlightType = HighlightType.None) { var field = new FieldGenerator(); field.scope = scope; field.modifier = modifier; field.typeIsString = true; field.stringTypeNamespace = typeNamespace.SlashesToPeriods(); field.stringType = typeName; field.name = name.LegalMemberName(); field.highlightType = highlightType; return(field); }
public override string GetFieldModifierString(FieldModifier modifier, bool forCode) { if (modifier == FieldModifier.None) { if (forCode) { return(""); } else { return("None"); } } StringBuilder builder = new StringBuilder(30); if ((modifier & FieldModifier.Hider) != 0) { builder.Append(forCode ? "new " : "New, "); } if ((modifier & FieldModifier.Constant) != 0) { builder.Append(forCode ? "const " : "Const, "); } if ((modifier & FieldModifier.Static) != 0) { builder.Append(forCode ? "static " : "Static, "); } if ((modifier & FieldModifier.Readonly) != 0) { builder.Append(forCode ? "readonly " : "Readonly, "); } if ((modifier & FieldModifier.Volatile) != 0) { builder.Append(forCode ? "volatile " : "Volatile, "); } if (forCode) { builder.Remove(builder.Length - 1, 1); } else { builder.Remove(builder.Length - 2, 2); } return(builder.ToString()); }
public MemberDrawer(TypeDrawer typeDrawer, IFieldModifier fieldModifier) { this.typeDrawer = typeDrawer; this.fieldModifier = fieldModifier; if (this.fieldModifier is FieldModifier) { FieldModifier modifier = (this.fieldModifier as FieldModifier); this.isEditable = modifier.fieldInfo.IsLiteral == false && modifier.fieldInfo.IsInitOnly == false; } else { this.isEditable = (this.fieldModifier as PropertyModifier).propertyInfo.GetSetMethod() != null; } }
public IFieldModifier[] GetFields() { FieldInfo[] fields = this.GetFieldInfos(); PropertyInfo[] properties = this.GetPropertyInfos(); IFieldModifier[] result = new IFieldModifier[fields.Length + properties.Length]; int i = 0; for (; i < fields.Length; ++i) { result[i] = new FieldModifier(fields[i]); } for (int j = 0; j < properties.Length; ++j, ++i) { result[i] = new PropertyModifier(properties[j]); } return(result); }
private void RefreshValues() { if (shape.ActiveMember != null) { Member member = shape.ActiveMember; SuspendLayout(); RefreshModifiers(); Language language = shape.CompositeType.Language; int cursorPosition = txtDeclaration.SelectionStart; txtDeclaration.Text = member.ToString(); txtDeclaration.SelectionStart = cursorPosition; txtDeclaration.ReadOnly = (member.MemberType == MemberType.Destructor); SetError(null); needValidation = false; // Visibility RefreshVisibility(); // Static and New modifiers toolStatic.Checked = member.IsStatic; toolStatic.Enabled = (member.MemberType != MemberType.Destructor); toolHider.Checked = member.IsHider; toolHider.Enabled = (member.MemberType != MemberType.Destructor); // Field modifiers Field field = member as Field; if (field != null) { FieldModifier modifier = field.Modifier & (FieldModifier.Constant | FieldModifier.Readonly | FieldModifier.Volatile); if (modifier == FieldModifier.None) { toolFieldModifiers.Text = Strings.None; } else { toolFieldModifiers.Text = language.ValidFieldModifiers[modifier]; } } // Operation modifiers Operation operation = member as Operation; if (operation != null) { OperationModifier modifier = operation.Modifier & (OperationModifier.Abstract | OperationModifier.Override | OperationModifier.Sealed | OperationModifier.Virtual); if (modifier == OperationModifier.None) { toolOperationModifiers.Text = Strings.None; } else { toolOperationModifiers.Text = language.ValidOperationModifiers[modifier]; } toolOperationModifiers.Enabled = (member.MemberType != MemberType.Destructor); } // Property accessor Property property = member as Property; if (property != null) { if (property.IsReadonly) { toolAccessor.Image = Properties.Resources.PublicReadonly; toolAccessor.ToolTipText = Strings.ReadOnly; } else if (property.IsWriteonly) { toolAccessor.Image = Properties.Resources.PublicWriteonly; toolAccessor.ToolTipText = Strings.WriteOnly; } else { toolAccessor.Image = Properties.Resources.PublicProperty; toolAccessor.ToolTipText = Strings.ReadWrite; } } RefreshNewMembers(); RefreshMoveUpDownTools(); ResumeLayout(); } }
/// <summary> /// Implementation of <see cref="IWorkflowScript.OnWorkflowScriptExecute" />. /// <seealso cref="IWorkflowScript" /> /// </summary> /// <param name="app">Unity Application object</param> /// <param name="args">Workflow event arguments</param> // public void OnWorkflowScriptExecute(Application app, WorkflowEventArgs args) //public void OnWorkflowScriptExecute(Application app, WorkflowEventArgs args = null) public void OnWorkflowScriptExecute(Hyland.Unity.Application app, Hyland.Unity.WorkflowEventArgs args) { try { // Initialize global settings IntializeScript(ref app, ref args); KeywordType kwtLicenseType = _currentDocument.DocumentType.KeywordRecordTypes.FindKeywordType(gParamLicType); string strLicenseType = ""; if (kwtLicenseType != null) { KeywordRecord keyRecLicenseType = _currentDocument.KeywordRecords.Find(kwtLicenseType); if (keyRecLicenseType != null) { Keyword kwdLicenseType = keyRecLicenseType.Keywords.Find(kwtLicenseType); if (kwdLicenseType != null) { strLicenseType = CleanSeedKW(kwdLicenseType.ToString()); } } } KeywordType kwtLicenseNum = _currentDocument.DocumentType.KeywordRecordTypes.FindKeywordType(gParamFileNumber); string strFileNum = ""; if (kwtLicenseNum != null) { KeywordRecord keyRecLicenseNum = _currentDocument.KeywordRecords.Find(kwtLicenseNum); if (keyRecLicenseNum != null) { Keyword kwdLicenseNum = keyRecLicenseNum.Keywords.Find(kwtLicenseNum); if (kwdLicenseNum != null) { strFileNum = CleanSeedKW(kwdLicenseNum.ToString()); } } } if ((strFileNum == "") || (strLicenseType == "")) { throw new Exception(string.Format("Either {0} or {1} is blank.", gParamFileNumber, gParamLicType)); } //access Config Item for LicEase User string gUSER = ""; if (app.Configuration.TryGetValue("LicEaseUser", out gUSER)) { } //access Config Item for LicEase Password string gPASS = ""; if (app.Configuration.TryGetValue("LicEasePassword", out gPASS)) { } /* COMMENT THIS SECTION OUT WHEN MOVING TO PROD */ //access Config Item for LicEase UAT ODBC string gODBC = ""; if (app.Configuration.TryGetValue("LicEaseUAT", out gODBC)) { } /* UNCOMMENT THIS SECTION WHEN MOVING TO PROD * //access Config Item for LicEase PROD ODBC * string gODBC = ""; * if (app.Configuration.TryGetValue("LicEasePROD", out gODBC)) * { * } */ string connectionString = string.Format("DSN={0};Uid={1};Pwd={2};", gODBC, gUSER, gPASS); app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Verbose, string.Format("Connection string: {0}", connectionString)); StringBuilder strSql = new StringBuilder(); strSql.Append(@"select * from (select distinct(c.cmpln_nbr) as CASENUMBER, becec.enf_cde as ACTYPE, c.rcv_dte as ISSUEDATE, to_char(cacat.actv_strt_dte, 'MM/DD/YYYY') as CLERKEDDATE, ccscs.cmpln_sta_cde as COMPSTATUS, c.clnt_cde as LICTYPE "); strSql.Append(@", c1_mc.chrg_amt as FINEAMT from cmpln c inner join (select ec.enf_cde, bec.clnt_enf_cde_id from brd_enf_cde bec inner join enf_cde ec on bec.enf_cde_id = ec.enf_cde_id where (ec.enf_cde like 'CLOS' or ec.clnt_cde like 'AD%' or ec.enf_cde like 'AC%') ) becec on c.clnt_cmpln_cls_id = becec.clnt_enf_cde_id inner join "); strSql.Append(@"(select cs.cmpln_sta_cde, ccs.clnt_cmpln_sta_id from clnt_cmpln_sta ccs inner join cmpln_sta cs on ccs.cmpln_sta_id = cs.cmpln_sta_id ) ccscs on c.clnt_cmpln_sta_id = ccscs.clnt_cmpln_sta_id inner join (select l.file_nbr, l.clnt_cde, l.lic_id, r.cmpln_id from rspn r inner join lic l on r.lic_id = l.lic_id ) rl "); strSql.Append(@" on c.cmpln_id = rl.cmpln_id left outer join (select ca.actv_strt_dte, ca.cmpln_id from cmpln_actv ca inner join cmpln_actv_typ cat on ca.cmpln_actv_typ_id = cat.cmpln_actv_typ_id where cat.cmpln_actv_typ_cde = 'A400' ) cacat on c.cmpln_id = cacat.cmpln_id left outer join (select mc.chrg_amt, c1.cmpln_id from cmply_ordr c1 inner join misc_chrg mc on c1.misc_chrg_id = mc.misc_chrg_id ) c1_mc on c.cmpln_id = c1_mc.cmpln_id where rl.file_nbr = '"); strSql.Append(strFileNum); strSql.Append(@"' and rl.clnt_cde = '"); strSql.Append(strLicenseType); strSql.Append(@"' and c.rcv_dte > (SYSDATE - 1826) and c.clnt_cde like '20%' and c.cmpln_nbr > '2010%') order by 1 desc "); using (OdbcConnection con = new OdbcConnection(connectionString)) { try { con.Open(); using (OdbcCommand command = new OdbcCommand(strSql.ToString(), con)) using (OdbcDataReader reader = command.ExecuteReader()) { if (reader.HasRows) { while (reader.Read()) { lstProp1.Add(reader["CASENUMBER"].ToString()); lstProp2.Add(reader["ACTYPE"].ToString()); lstProp3.Add(reader["ISSUEDATE"].ToString()); lstProp4.Add(reader["CLERKEDDATE"].ToString()); lstProp5.Add(reader["COMPSTATUS"].ToString()); lstProp6.Add(reader["LICTYPE"].ToString()); lstProp7.Add(reader["FINEAMT"].ToString()); } // Create keyword modifier object to hold keyword changes EForm currentForm = _currentDocument.EForm; FieldModifier fieldModifier = currentForm.CreateFieldModifier(); foreach (string props in lstProp1) { if (props != null) { fieldModifier.UpdateField("CASENUMBER", props); } } foreach (string props in lstProp2) { if (props != null) { fieldModifier.UpdateField("ACTYPE", props); } } foreach (string props in lstProp3) { if (props != null) { fieldModifier.UpdateField("ISSUEDATE", props); } } foreach (string props in lstProp4) { if (props != null) { fieldModifier.UpdateField("CLERKEDDATE", props); } } foreach (string props in lstProp5) { if (props != null) { fieldModifier.UpdateField("COMPSTATUS", props); } } foreach (string props in lstProp6) { if (props != null) { fieldModifier.UpdateField("LICTYPE", props); } } foreach (string props in lstProp7) { if (props != null) { fieldModifier.UpdateField("FINEAMT", props); } } using (DocumentLock documentLock = _currentDocument.LockDocument()) { // Ensure lock was obtained if (documentLock.Status != DocumentLockStatus.LockObtained) { throw new Exception("Document lock not obtained"); } // Apply keyword change to the document fieldModifier.ApplyChanges(); documentLock.Release(); } } else { throw new Exception(string.Format("No records found in database for {0}='{1}' and {4}{2}='{3}' ", gParamLicType, strLicenseType, gParamFileNumber, strFileNum, Environment.NewLine)); } } } catch (Exception ex) { throw new ApplicationException("Error during database operations!", ex); } finally { if (con.State == ConnectionState.Open) { con.Close(); } } } } catch (Exception ex) { // Handle exceptions and log to Diagnostics Console and document history HandleException(ex, ref app, ref args); } finally { // Log script execution end app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Info, string.Format("End Script - [{0}]", ScriptName)); } }
public override bool IsValidModifier(FieldModifier modifier) { return true; }
public override string GetFieldModifierString(FieldModifier modifier, bool forCode) { if (modifier == FieldModifier.None) { if (forCode) return ""; else return "None"; } StringBuilder builder = new StringBuilder(30); if ((modifier & FieldModifier.Hider) != 0) builder.Append(forCode ? "new " : "New, "); if ((modifier & FieldModifier.Constant) != 0) builder.Append(forCode ? "const " : "Const, "); if ((modifier & FieldModifier.Static) != 0) builder.Append(forCode ? "static " : "Static, "); if ((modifier & FieldModifier.Readonly) != 0) builder.Append(forCode ? "readonly " : "Readonly, "); if ((modifier & FieldModifier.Volatile) != 0) builder.Append(forCode ? "volatile " : "Volatile, "); if (forCode) builder.Remove(builder.Length - 1, 1); else builder.Remove(builder.Length - 2, 2); return builder.ToString(); }
public string GetFieldModifierString(FieldModifier modifier) { return(GetFieldModifierString(modifier, false)); }
public override bool IsValidModifier(FieldModifier modifier) { throw new NotImplementedException(); }
public abstract bool IsValidModifier(FieldModifier modifier);
public StructureMember(FieldModifier modifier, NamespaceName fieldType, string identifier, Versioning versioning) : this(modifier, fieldType, identifier, versioning, null) { }
protected override void CopyFrom(Member member) { base.CopyFrom(member); Field field = (Field) member; modifier = field.modifier; initialValue = field.initialValue; setter = field.setter; getter = field.getter; generateDbColumn = field.generateDbColumn; DbSchema.Initialing = true; DbSchema.NotNull = field.DbSchema.NotNull; DbSchema.AutoIncrement = field.DbSchema.AutoIncrement; DbSchema.DbType = field.DbSchema.DbType; DbSchema.DefaultValue = field.DbSchema.DefaultValue; DbSchema.Index = field.DbSchema.Index; DbSchema.IsPrimaryKey = field.DbSchema.IsPrimaryKey; DbSchema.Length = field.DbSchema.Length; DbSchema.Name = field.DbSchema.Name; DbSchema.Initialing = false; }
public abstract string GetFieldModifierString(FieldModifier modifier, bool forCode);
private void CopyObject(StringBuilder buffer, object instance, string prefix) { if (instance != null) { Type type = instance.GetType(); object[] actions; if (this.typeDrawers.TryGetValue(type, out actions) == true) { buffer.AppendLine((actions[1] as Func <object, string, string>)(instance, prefix)); } else { if (instance.GetType().IsArray == true) { IEnumerable array = instance as IEnumerable; foreach (object element in array) { this.CopyObject(buffer, element, " "); } } else if (type != typeof(string) && (type.IsClass == true || type.IsStruct() == true)) { ClassDefinition classDefinition; if (this.refMembers.TryGetValue(type, out classDefinition) == false) { int j = 0; FieldInfo[] fields = type.GetFields(BindingFlags.Public | BindingFlags.Instance); PropertyInfo[] properties = type.GetProperties(BindingFlags.Public | BindingFlags.Instance); IFieldModifier[] members = new IFieldModifier[fields.Length + properties.Length]; for (int i = 0; i < fields.Length; i++, ++j) { members[j] = new FieldModifier(fields[i]); } for (int i = 0; i < properties.Length; i++, ++j) { members[j] = new PropertyModifier(properties[i]); } classDefinition = new ClassDefinition(members); this.refMembers.Add(type, classDefinition); } for (int i = 0; i < classDefinition.members.Length; i++) { this.CopyObject(buffer, classDefinition.members[i].GetValue(instance), " " + classDefinition.nicifiedNames[i] + " : "); } } else { buffer.AppendLine(prefix + instance.ToString()); } } } else { buffer.AppendLine(prefix + "NULL"); } }
public override bool IsValidModifier(FieldModifier modifier) { return ( modifier == FieldModifier.Static || modifier == FieldModifier.Readonly || modifier == FieldModifier.Volatile ); }
public string GetFieldModifierString(FieldModifier modifier) { return GetFieldModifierString(modifier, false); }
public override string GetFieldModifierString(FieldModifier modifier, bool forCode) { throw new NotImplementedException(); }
public override bool IsValidModifier(FieldModifier modifier) { return(true); }
public override bool IsValidModifier(FieldModifier modifier) => true;
private void RefreshValues() { if (shape.ActiveMember != null) { Member member = shape.ActiveMember; if (member is Property) { this.Height = pnlAdvancedOptions.Bottom + pnlAdvancedOptions.Margin.Bottom; } else { this.Height = pnlAdvancedOptions.Location.Y; } Refresh(); SuspendLayout(); RefreshModifiers(); Language language = shape.CompositeType.Language; int cursorPosition = txtDeclaration.SelectionStart; txtDeclaration.Text = member.ToString(); txtDeclaration.SelectionStart = cursorPosition; txtDeclaration.ReadOnly = (member.MemberType == MemberType.Destructor); int cursorPositionNHMColumn = txtNHMColumnName.SelectionStart; txtNHMColumnName.Text = member.NHMColumnName; txtNHMColumnName.SelectionStart = cursorPositionNHMColumn; chkIsIdentity.Checked = member.IsIdentity; cboManyToOne.SelectedItem = string.IsNullOrEmpty(member.ManyToOne) ? "(None)" : member.ManyToOne; chkIsUnique.Checked = member.IsUnique; chkIsNotNull.Checked = member.IsNotNull; SetError(null); needValidation = false; // Visibility RefreshVisibility(); // Static and New modifiers toolStatic.Checked = member.IsStatic; toolStatic.Enabled = (member.MemberType != MemberType.Destructor); toolHider.Checked = member.IsHider; toolHider.Enabled = (member.MemberType != MemberType.Destructor); // Field modifiers Field field = member as Field; if (field != null) { FieldModifier modifier = field.Modifier & (FieldModifier.Constant | FieldModifier.Readonly | FieldModifier.Volatile); if (modifier == FieldModifier.None) { toolFieldModifiers.Text = Strings.None; } else { toolFieldModifiers.Text = language.ValidFieldModifiers[modifier]; } } // Operation modifiers Operation operation = member as Operation; if (operation != null) { OperationModifier modifier = operation.Modifier & (OperationModifier.Abstract | OperationModifier.Override | OperationModifier.Sealed | OperationModifier.Virtual); if (modifier == OperationModifier.None) { toolOperationModifiers.Text = Strings.None; } else { toolOperationModifiers.Text = language.ValidOperationModifiers[modifier]; } toolOperationModifiers.Enabled = (member.MemberType != MemberType.Destructor); } // Property accessor Property property = member as Property; if (property != null) { if (property.IsReadonly) { toolAccessor.Image = Properties.Resources.PublicReadonly; toolAccessor.ToolTipText = Strings.ReadOnly; } else if (property.IsWriteonly) { toolAccessor.Image = Properties.Resources.PublicWriteonly; toolAccessor.ToolTipText = Strings.WriteOnly; } else { toolAccessor.Image = Properties.Resources.PublicProperty; toolAccessor.ToolTipText = Strings.ReadWrite; } } RefreshNewMembers(); RefreshMoveUpDownTools(); ResumeLayout(); } }
public MonitorType(string path, Type type) : base(path, () => null) { this.type = type; if (this.type.IsGenericTypeDefinition == true) { this.children = new List <MonitorData>(0); return; } FieldInfo[] fields = this.type.GetFields(BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic); PropertyInfo[] properties = this.type.GetProperties(BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic); this.children = new List <MonitorData>(fields.Length + properties.Length); for (int i = 0; i < fields.Length; i++) { FieldModifier modifier = new FieldModifier(fields[i]); CustomMonitorData customMonitor = MonitorDataManager.CreateMonitorData(fields[i].FieldType, this.path + NGServerScene.ValuePathSeparator + fields[i].Name, getInstance, modifier); if (customMonitor != null) { this.children.Add(customMonitor); } else if (fields[i].FieldType.IsUnityArray() == true) { this.children.Add(new MonitorArray(this.path + NGServerScene.ValuePathSeparator + fields[i].Name, modifier, getInstance)); } else { this.children.Add(new MonitorField(this.path + NGServerScene.ValuePathSeparator + fields[i].Name, getInstance, fields[i])); } } for (int i = 0; i < properties.Length; i++) { if (properties[i].GetGetMethod() == null) { continue; } PropertyModifier modifier = new PropertyModifier(properties[i]); CustomMonitorData customMonitor = MonitorDataManager.CreateMonitorData(properties[i].PropertyType, this.path + NGServerScene.ValuePathSeparator + properties[i].Name, getInstance, modifier); if (customMonitor != null) { this.children.Add(customMonitor); } else if (properties[i].PropertyType.IsUnityArray() == true) { this.children.Add(new MonitorArray(this.path + NGServerScene.ValuePathSeparator + properties[i].Name, modifier, getInstance)); } else { try { this.children.Add(new MonitorProperty(this.path + NGServerScene.ValuePathSeparator + properties[i].Name, getInstance, properties[i])); } catch (Exception ex) { InternalNGDebug.LogException("Monitoring Type \"" + type + "\" failed at property \"" + properties[i].Name + "\".", ex); } } } }