internal static void GetParameters(this DataTypeDefinition dataTypeDefinition, IDataTypeDefinitionFactory definition, UAModelContext modelContext, Action <TraceMessage> traceEvent) { if (dataTypeDefinition == null || dataTypeDefinition.Field == null || dataTypeDefinition.Field.Length == 0) { return; } foreach (DataTypeField _item in dataTypeDefinition.Field) { IDataTypeFieldFactory _nP = definition.NewField(); _nP.DataType = modelContext.ExportBrowseName(_item.DataType, DataTypes.BaseDataType, traceEvent); _item.Description.ExportLocalizedTextArray(_nP.AddDescription); _nP.Identifier = _item.Value; _nP.Name = _item.Name; _nP.ValueRank = _item.ValueRank.GetValueRank(traceEvent); _nP.SymbolicName = _item.SymbolicName; _nP.Value = _item.Value; if (_item.Definition == null) { continue; } IDataTypeDefinitionFactory _new = _nP.NewDefinition(); _item.Definition.GetParameters(_new, modelContext, traceEvent); } }
internal static void GetParameters(this XML.DataTypeDefinition dataTypeDefinition, IDataTypeDefinitionFactory dataTypeDefinitionFactory, IUAModelContext modelContext, Action <TraceMessage> traceEvent) { //xsd comment < !--BaseType is obsolete and no longer used.Left in for backwards compatibility. --> //definition.BaseType = modelContext.ExportBrowseName(dataTypeDefinition.BaseType, DataTypes.BaseDataType); dataTypeDefinitionFactory.IsOptionSet = dataTypeDefinition.IsOptionSet; dataTypeDefinitionFactory.IsUnion = dataTypeDefinition.IsUnion; dataTypeDefinitionFactory.Name = null; //TODO UADataType.Definition.Name wrong value #341 modelContext.ExportBrowseName( dataTypeDefinition.Name, DataTypes.BaseDataType); dataTypeDefinitionFactory.SymbolicName = dataTypeDefinition.SymbolicName; if (dataTypeDefinition == null || dataTypeDefinition.Field == null || dataTypeDefinition.Field.Length == 0) { return; } foreach (XML.DataTypeField _item in dataTypeDefinition.Field) { IDataTypeFieldFactory _nP = dataTypeDefinitionFactory.NewField(); _nP.Name = _item.Name; _nP.SymbolicName = _item.SymbolicName; _item.DisplayName.ExportLocalizedTextArray(_nP.AddDisplayName); _nP.DataType = modelContext.ExportBrowseName(_item.DataType, DataTypes.BaseDataType); _nP.ValueRank = _item.ValueRank.GetValueRank(traceEvent); _nP.ArrayDimensions = _item.ArrayDimensions; _nP.MaxStringLength = _item.MaxStringLength; _item.Description.ExportLocalizedTextArray(_nP.AddDescription); _nP.Value = _item.Value; _nP.IsOptional = _item.IsOptional; } }