ATMLSchemaLibrary.managers.SchemaManager.LoadSchemaItems C# (CSharp) Method

LoadSchemaItems() private method

private LoadSchemaItems ( ) : void
return void
        private void LoadSchemaItems()
        {
            if (_schemas != null)
            {
                foreach (XmlSchema schema in _schemas.Values)
                {
                    foreach (object schemaObject in schema.SchemaTypes)
                    {
                        var schemaType = schemaObject as XmlSchemaType;
                        if (schemaType != null)
                        {
                            _schemaTypes.Add( schemaType.QualifiedName.ToString(), schemaType );
                        }
                        else if (schemaObject is DictionaryEntry)
                        {
                            _schemaTypes.Add( ( (DictionaryEntry) schemaObject ).Key.ToString(),
                                              (XmlSchemaType) ( (DictionaryEntry) schemaObject ).Value );
                        }
                        else
                        {
                            int i = 0;
                        }
                    }

                    List<XmlSchemaSimpleType> sts = XsdUtils.extractSimpleTypes( schema );
                    List<XmlSchemaComplexType> cts = XsdUtils.extractComplexTypes( schema );
                    List<XmlSchemaAttributeGroup> ats = XsdUtils.extractAttributeGroups( schema );
                    List<XmlSchemaGroup> gts = XsdUtils.extractGroups( schema );
                    List<XmlSchemaElement> els = XsdUtils.extractElements( schema );

                    String _namespace = schema.TargetNamespace;
                    foreach (XmlSchemaSimpleType simpleType in sts)
                    {
                        if (_simpleTypes.ContainsKey( _namespace + ":" + simpleType.Name ))
                            Console.WriteLine( @"Duplicate SimpleType Name: " + _namespace + @":" + simpleType.Name );
                        else
                            _simpleTypes.Add( _namespace + ":" + simpleType.Name, simpleType );
                    }
                    foreach (XmlSchemaComplexType complexType in cts)
                    {
                        if (_complexTypes.ContainsKey( _namespace + ":" + complexType.Name ))
                            Console.WriteLine( @"Duplicate ComplexType Name: " + _namespace + @":" + complexType.Name );
                        else
                            _complexTypes.Add( _namespace + ":" + complexType.Name, complexType );
                    }
                    foreach (XmlSchemaAttributeGroup group in ats)
                    {
                        if (_attributeGroups.ContainsKey( _namespace + ":" + group.Name ))
                            Console.WriteLine( @"Duplicate Attribute Group Name: " + _namespace + @":" + group.Name );
                        else
                            _attributeGroups.Add( _namespace + ":" + group.Name, group );
                    }
                    foreach (XmlSchemaGroup group in gts)
                    {
                        if (_groups.ContainsKey( _namespace + ":" + group.Name ))
                            Console.WriteLine( @"Duplicate Group Name: " + _namespace + @":" + group.Name );
                        else
                            _groups.Add( _namespace + ":" + group.Name, group );
                    }
                    foreach (XmlSchemaElement element in els)
                    {
                        if (_groups.ContainsKey( _namespace + ":" + element.Name ))
                            Console.WriteLine( @"Duplicate Element Name: " + _namespace + @":" + element.Name );
                        else
                            _elements.Add( _namespace + ":" + element.Name, element );
                    }
                }
            }
        }