Example #1
0
        public bool ExpandEntity(string entityName)
        {
            string entity = (string)EntityExpansion[entityName];

            if (entity != null)
            {
                Expand(entity.ToCharArray());
                return(true);
            }

            entityName = entityName.Substring(1, entityName.Length - 1);

            //System.writer.WriteLine("Trying to expand: "+entityName);
            DTDEntity realEntity = Expander.ExpandEntity(entityName);

            if (realEntity != null)
            {
                //System.writer.WriteLine("Expanded: "+entityName);
                StreamReader entityIn = realEntity.GetReader();
                if (entityIn != null)
                {
                    if (InputStreams == null)
                    {
                        InputStreams = new Stack();
                    }

                    InputStreams.Push(StreamInfo);
                    StreamInfo = new StreamInfo(realEntity.GetExternalId(), entityIn);

                    return(true);
                }
            }

            return(false);
        }