Exemplo n.º 1
0
        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;
 }
Exemplo n.º 3
0
        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);
        }