Esempio n. 1
0
            public override void OnWriteTopic(ConceptualItem item)
            {
                ConceptualItemType itemType = item.ItemType;

                if (itemType == ConceptualItemType.Topic ||
                    itemType == ConceptualItemType.Related)
                {
                    _manifestWriter.WriteStartElement("topic"); // start-fileAsset
                    _manifestWriter.WriteAttributeString("id", item.TopicId);
                    _manifestWriter.WriteEndElement();          // end-fileAsset
                }
                else if (itemType == ConceptualItemType.Html)
                {
                    _context[item.TopicId] = item.TopicTitle;
                }
                else if (itemType == ConceptualItemType.Marker)
                {
                    if (_listMarkers == null)
                    {
                        _listMarkers = new BuildKeyedList <ConceptualMarkerTopic>();
                    }

                    _listMarkers.Add((ConceptualMarkerTopic)item);
                }
            }
Esempio n. 2
0
        private void WriteTopic(ConceptualItem item)
        {
            if (item == null || item.IsEmpty)
            {
                return;
            }

            // Signal the beginning of a topic...
            this.OnBeginTopic(item);

            // Signal the writing of a topic...
            this.OnWriteTopic(item);

            // Create the output format for the current topic...
            if (_outputTopics)
            {
                item.CreateTopic(_ddueXmlDir, _ddueCompDir, _ddueHtmlDir);
            }

            // Write the sub-topics
            IList <ConceptualItem> listItems = item.Items;

            int itemCount = listItems == null ? 0 : listItems.Count;

            for (int i = 0; i < itemCount; i++)
            {
                this.WriteTopic(listItems[i]);
            }

            // Signal the end of a topic...
            this.OnEndTopic(item);
        }
Esempio n. 3
0
            public override void OnEndTopic(ConceptualItem item)
            {
                if (item == null || item.ItemType == ConceptualItemType.Related)
                {
                    return;
                }

                _tocWriter.WriteEndElement();
            }
        public bool Exclude(ConceptualItem item)
        {
            if (item == null || item.IsEmpty || !item.Visible)
            {
                return(true);
            }

            return(false);
        }
Esempio n. 5
0
        public override void Insert(int index, ConceptualItem item)
        {
            BuildExceptions.NotNull(item, "item");

            Debug.Assert(this.Content != null);
            item.Content = this.Content;

            _listItems.Insert(index, item);
        }
Esempio n. 6
0
        private void OnEndTopic(ConceptualItem item)
        {
            if (item == null || item.IsEmpty || !_applyAdapters)
            {
                return;
            }

            _tocAdapter.OnEndTopic(item);
            _metadataAdapter.OnEndTopic(item);
            _manifestAdapters.OnEndTopic(item);
        }
Esempio n. 7
0
            public override void OnBeginTopic(ConceptualItem item)
            {
                if (item == null || item.ItemType == ConceptualItemType.Related)
                {
                    return;
                }

                _tocWriter.WriteStartElement("topic");
                _tocWriter.WriteAttributeString("id", item.TopicId);
                _tocWriter.WriteAttributeString("file", item.TopicId);
            }
Esempio n. 8
0
        public override bool Filter(ConceptualItem item)
        {
            BuildExceptions.NotNull(item, "item");
            if (_revNumber < 0)
            {
                return(false);
            }

            bool isFiltered = (item.TopicRevisions == _revNumber);

            return(this.Inverse ? !isFiltered : isFiltered);
        }
Esempio n. 9
0
        public override void Remove(ConceptualItem item)
        {
            if (item == null)
            {
                return;
            }
            if (_listItems == null || _listItems.Count == 0)
            {
                return;
            }

            _listItems.Remove(item);
        }
Esempio n. 10
0
        public override bool Filter(ConceptualItem item)
        {
            BuildExceptions.NotNull(item, "item");

            if (_dicTopicId == null || _dicTopicId.Count == 0)
            {
                return(false);
            }

            bool isFiltered = _dicTopicId.ContainsKey(item.TopicId);

            return(this.Inverse ? !isFiltered : isFiltered);
        }
Esempio n. 11
0
        public override void Add(ConceptualItem item)
        {
            BuildExceptions.NotNull(item, "item");

            if (_listItems == null)
            {
                _listItems = new BuildKeyedList <ConceptualItem>();
            }

            Debug.Assert(this.Content != null);
            item.Content = this.Content;

            _listItems.Add(item);
        }
Esempio n. 12
0
        public override bool Filter(ConceptualItem item)
        {
            BuildExceptions.NotNull(item, "item");

            if (_category.Enabled && _category.IsValid)
            {
                HashSet <string> excludes = item.ExcludesInternal;
                if (excludes == null || excludes.Count == 0)
                {
                    return(false);
                }

                return(excludes.Contains(_category.Name));
            }

            return(false);
        }
        public override bool Equals(ConceptualItem other)
        {
            if (other == null)
            {
                return(false);
            }
            //if (!String.Equals(this._name, other._name))
            //{
            //    return false;
            //}
            //if (!String.Equals(this._value, other._value))
            //{
            //    return false;
            //}

            return(true);
        }
Esempio n. 14
0
        public override bool CreateTopic(string ddueXmlDir, string ddueCompDir,
                                         string ddueHtmlDir)
        {
            if (!base.CreateTopic(ddueXmlDir, ddueCompDir, ddueHtmlDir))
            {
                return(false);
            }

            if (_listItems != null && _listItems.Count > 0)
            {
                int itemCount = _listItems.Count;
                for (int i = 0; i < itemCount; i++)
                {
                    ConceptualItem item = _listItems[i];
                    if (item.Visible)
                    {
                        item.CreateTopic(ddueXmlDir, ddueCompDir, ddueHtmlDir);
                    }
                }
            }

            return(true);
        }
Esempio n. 15
0
 public override void OnEndTopic(ConceptualItem item)
 {
 }
Esempio n. 16
0
 public abstract void OnBeginTopic(ConceptualItem item);
Esempio n. 17
0
 public abstract void OnWriteTopic(ConceptualItem item);
Esempio n. 18
0
 public abstract void OnEndTopic(ConceptualItem item);
Esempio n. 19
0
        private void ReadTopic(XmlReader reader, ConceptualContent content,
                               ConceptualItem parentItem)
        {
            XmlNodeType nodeType  = XmlNodeType.None;
            string      nodeName  = null;
            int         revNumber = 1;

            while (reader.Read())
            {
                nodeType = reader.NodeType;
                if (nodeType == XmlNodeType.Element)
                {
                    nodeName = reader.Name;
                    if (String.Equals(nodeName, "Topic"))
                    {
                        bool isVisible = true;

                        string docId = reader.GetAttribute("id");
                        if (ConceptualUtils.IsValidId(docId))
                        {
                            string textTemp = reader.GetAttribute("visible");
                            if (!String.IsNullOrEmpty(textTemp))
                            {
                                isVisible = Convert.ToBoolean(textTemp);
                            }

                            string docTitle = reader.GetAttribute("title");
                            if (!String.IsNullOrEmpty(docTitle))
                            {
                                string fullPath = Path.Combine(_contentDir,
                                                               docId + ".aml");
                                ConceptualTopic docItem = new ConceptualTopic(
                                    new BuildFilePath(fullPath), docTitle, docId);

                                docItem.Content = content;

                                docItem.BeginInit();

                                docItem.Visible        = isVisible;
                                docItem.TopicRevisions = revNumber;
                                //docItem.IncludesTopicId = true;

                                docItem.EndInit();

                                // handle the sub-item...
                                if (!reader.IsEmptyElement)
                                {
                                    ReadTopic(reader, content, docItem);
                                }

                                parentItem.Add(docItem);
                            }
                        }
                    }
                    else if (String.Equals(nodeName, "HelpKeyword"))
                    {
                        string index = reader.GetAttribute("index");
                        string term  = reader.GetAttribute("term");
                        if (!String.IsNullOrEmpty(index) &&
                            !String.IsNullOrEmpty(term))
                        {
                            KeywordItem keyword = new KeywordItem(
                                KeywordItem.ParseIndex(index), term);

                            parentItem.Keywords.Add(keyword);
                        }
                    }
                }
                else if (nodeType == XmlNodeType.EndElement)
                {
                    if (String.Equals(reader.Name, "Topic"))
                    {
                        break;
                    }
                }
            }
        }
Esempio n. 20
0
 public abstract bool Filter(ConceptualItem item);
Esempio n. 21
0
 public override void OnWriteTopic(ConceptualItem item)
 {
 }
Esempio n. 22
0
            public override void OnWriteTopic(ConceptualItem item)
            {
                ConceptualItemType itemType = item.ItemType;

                if (itemType != ConceptualItemType.Topic &&
                    itemType != ConceptualItemType.Related)
                {
                    return;
                }

                _metadataWriter.WriteStartElement("topic");
                _metadataWriter.WriteAttributeString("id", item.TopicId);
                _metadataWriter.WriteAttributeString("revisionNumber",
                                                     item.TopicRevisions.ToString());

                Version version = item.TopicVersion;

                if (version != null)
                {
                    _metadataWriter.WriteStartElement("item"); // start-item
                    _metadataWriter.WriteAttributeString("id", "PBM_FileVersion");
                    _metadataWriter.WriteString(version.ToString());
                    _metadataWriter.WriteEndElement();         // end-item
                }
                else
                {
                    _metadataWriter.WriteStartElement("item");
                    _metadataWriter.WriteAttributeString("id", "PBM_FileVersion");
                    _metadataWriter.WriteString("1.0.0.0");
                    _metadataWriter.WriteEndElement();
                }

                _metadataWriter.WriteStartElement("title");
                _metadataWriter.WriteString(item.TopicTitle);
                _metadataWriter.WriteEndElement();

                if (!String.IsNullOrEmpty(item.TocTitle))
                {
                    _metadataWriter.WriteStartElement("tableOfContentsTitle");
                    _metadataWriter.WriteString(item.TocTitle);
                    _metadataWriter.WriteEndElement();
                }

                // Write the runningHeaderText tag...
                _metadataWriter.WriteStartElement("runningHeaderText");
                _metadataWriter.WriteAttributeString("uscid", _runningHeaderText);
                _metadataWriter.WriteEndElement();

                // Write the topicType tag...
                _metadataWriter.WriteStartElement("topicType");
                string topicTypeId = item.TopicTypeId;

                if (String.IsNullOrEmpty(topicTypeId))
                {
                    _metadataWriter.WriteAttributeString("id", _topicTypeId);
                }
                else
                {
                    _metadataWriter.WriteAttributeString("id", topicTypeId);
                }
                _metadataWriter.WriteEndElement();

                _metadataWriter.WriteEndElement();
            }
Esempio n. 23
0
 public override void OnBeginTopic(ConceptualItem item)
 {
 }