Пример #1
0
        internal InputSource resolveEntity(bool isPE, string name,
                                           InputSource inp, string baseURI)
        {
            InputSource source;

            // external entities might be skipped
            if (isPE && !extPE)
            {
                return(null);
            }
            if (!isPE && !extGE)
            {
                return(null);
            }

            // ... or not
            lexicalHandler.StartEntity(name);
            source = entityResolver.ResolveEntity(name, inp.PublicId,
                                                  baseURI, inp.SystemId);
            if (source == null)
            {
                inp.SystemId = absolutize(baseURI, inp.SystemId, false);
                source       = inp;
            }
            startExternalEntity(name, source.SystemId, true);
            return(source);
        }
Пример #2
0
        public virtual object ResolveEntity(string publicId, string systemId)
        {
            InputSource source = _entityResolver.ResolveEntity(publicId, systemId);

            if (source == null)
            {
                return(null);
            }
            if (source.Stream != null)
            {
                return(source.Stream);
            }
            if (source.Stream != null)
            {
                if (source.Encoding == null)
                {
                    return(source.Stream);
                }
                try {
                    return(new StreamReader(source.Stream, source.Encoding));
                } catch (IOException e) {
                    return(source.Stream);
                }
            }
            string sysId = source.SystemId;

            return(TryToExpand(sysId)); // MHK addition
            // XXX no way to tell AElfred about new public
            // or system ids ... so relative URL resolution
            // through that entity could be less than reliable.
        }
Пример #3
0
 public virtual InputSource ResolveEntity(string publicId, string systemId)
 {
     if (_entityResolver != null)
     {
         return(_entityResolver.ResolveEntity(publicId, systemId));
     }
     return(null);
 }
Пример #4
0
 public virtual InputSource ResolveEntity(string name, string publicId, string baseUri, string systemId)
 {
     if (resolver != null)
     {
         return(resolver.ResolveEntity(name, publicId, baseUri, systemId));
     }
     else
     {
         return(null);
     }
 }