System.Xml.Xsl.XsltOld.Compiler.AddNamespaceAlias C# (CSharp) Method

AddNamespaceAlias() private method

private AddNamespaceAlias ( String StylesheetURI, NamespaceInfo AliasInfo ) : void
StylesheetURI String
AliasInfo NamespaceInfo
return void
        internal void AddNamespaceAlias(String StylesheetURI, NamespaceInfo AliasInfo)
        {
            if (_globalNamespaceAliasTable == null)
            {
                _globalNamespaceAliasTable = new Hashtable();
            }
            NamespaceInfo duplicate = _globalNamespaceAliasTable[StylesheetURI] as NamespaceInfo;
            if (duplicate == null || AliasInfo.stylesheetId <= duplicate.stylesheetId)
            {
                _globalNamespaceAliasTable[StylesheetURI] = AliasInfo;
            }
        }

Usage Example

Ejemplo n.º 1
0
        internal void CompileNamespaceAlias(Compiler compiler)
        {
            NavigatorInput input = compiler.Input;
            string         element = input.LocalName;
            string         namespace1 = null, namespace2 = null;
            string         prefix1 = null, prefix2 = null;

            if (input.MoveToFirstAttribute())
            {
                do
                {
                    string nspace = input.NamespaceURI;
                    string name   = input.LocalName;

                    if (nspace.Length != 0)
                    {
                        continue;
                    }

                    if (Ref.Equal(name, input.Atoms.StylesheetPrefix))
                    {
                        prefix1    = input.Value;
                        namespace1 = compiler.GetNsAlias(ref prefix1);
                    }
                    else if (Ref.Equal(name, input.Atoms.ResultPrefix))
                    {
                        prefix2    = input.Value;
                        namespace2 = compiler.GetNsAlias(ref prefix2);
                    }
                    else
                    {
                        if (!compiler.ForwardCompatibility)
                        {
                            throw XsltException.Create(SR.Xslt_InvalidAttribute, name, element);
                        }
                    }
                }while (input.MoveToNextAttribute());
                input.ToParent();
            }

            CheckRequiredAttribute(compiler, namespace1, "stylesheet-prefix");
            CheckRequiredAttribute(compiler, namespace2, "result-prefix");
            CheckEmpty(compiler);

            //String[] resultarray = { prefix2, namespace2 };
            compiler.AddNamespaceAlias(namespace1, new NamespaceInfo(prefix2, namespace2, compiler.Stylesheetid));
        }
All Usage Examples Of System.Xml.Xsl.XsltOld.Compiler::AddNamespaceAlias