protected void UpdateNode(XML.NodeDesign nodeDesign, List <string> path, Action <XML.InstanceDesign, List <string> > createInstanceType) { string _defaultDisplay = string.IsNullOrEmpty(BrowseName) ? SymbolicName.Name : BrowseName; nodeDesign.BrowseName = BrowseName == SymbolicName.Name ? null : BrowseName; List <XML.NodeDesign> _Members = new List <XML.NodeDesign>(); path.Add(SymbolicName.Name); base.ExportNodes(_Members, path, createInstanceType); XML.InstanceDesign[] _items = _Members.Cast <XML.InstanceDesign>().ToArray <XML.InstanceDesign>(); nodeDesign.Category = Category == null ? null : string.Join(", ", Category); nodeDesign.Children = _items == null || _items.Length == 0 ? null : new XML.ListOfChildren() { Items = _items }; nodeDesign.Description = m_Description; nodeDesign.DisplayName = m_DisplayName == null || m_DisplayName.Value == _defaultDisplay ? null : m_DisplayName; nodeDesign.IsDeclaration = false; nodeDesign.NotInAddressSpace = false; nodeDesign.NumericId = 0; nodeDesign.NumericIdSpecified = false; nodeDesign.PartNo = 0; nodeDesign.Purpose = DataTypePurpose.ConvertToDataTypePurpose(); nodeDesign.References = m_References.Count == 0 ? null : m_References.Select <ReferenceFactoryBase, XML.Reference>(x => x.Export()).ToArray <XML.Reference>(); nodeDesign.ReleaseStatus = ReleaseStatus.ConvertToReleaseStatus(); nodeDesign.StringId = null; nodeDesign.SymbolicId = null; nodeDesign.SymbolicName = SymbolicName; nodeDesign.WriteAccess = WriteAccess; // AccessRestrictions _access = AccessRestrictions; model design doesn't support AccessRestrictions }
public DataType() { this.allowArraysField = false; this.notInAddressSpaceField = false; this.partNoField = ((uint)(0)); this.categoryField = ""; this.releaseStatusField = ReleaseStatus.Released; this.purposeField = DataTypePurpose.Normal; }
internal static XML.DataTypePurpose ConvertToDataTypePurpose(this DataTypePurpose releaseStatus) { XML.DataTypePurpose _status = XML.DataTypePurpose.Normal; switch (releaseStatus) { case DataTypePurpose.CodeGenerator: _status = XML.DataTypePurpose.CodeGenerator; break; case DataTypePurpose.Normal: _status = XML.DataTypePurpose.Normal; break; case DataTypePurpose.ServicesOnly: _status = XML.DataTypePurpose.ServicesOnly; break; } return(_status); }