Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="cache"></param>
        /// <param name="sortItemProvider"></param>
        /// <param name="fReturnFirstDecendentOnly"></param>
        private PartOwnershipTree(FdoCache cache, IMultiListSortItemProvider sortItemProvider, bool fReturnFirstDecendentOnly)
        {
            XmlNode partOwnershipTreeSpec = sortItemProvider.PartOwnershipTreeSpec;

            m_cache = cache;
            m_classOwnershipTree = partOwnershipTreeSpec.SelectSingleNode(".//ClassOwnershipTree");
            XmlNode parentClassPathsToChildren = partOwnershipTreeSpec.SelectSingleNode(".//ParentClassPathsToChildren");

            m_parentToChildrenSpecs = parentClassPathsToChildren.Clone();
            // now go through the seq specs and set the "firstOnly" to the requested value.
            XmlNodeList xnl = m_parentToChildrenSpecs.SelectNodes(".//seq");

            if (xnl == null)
            {
                return;
            }
            foreach (XmlElement xe in xnl)
            {
                XmlAttribute xaFirstOnly = xe.Attributes["firstOnly"];
                if (xaFirstOnly == null)
                {
                    // create the first only attribute
                    xaFirstOnly = xe.OwnerDocument.CreateAttribute("firstOnly");
                    xe.Attributes.Append(xaFirstOnly);
                }
                xaFirstOnly.Value = fReturnFirstDecendentOnly.ToString().ToLowerInvariant();
            }
        }
Ejemplo n.º 2
0
		/// <summary>
		///
		/// </summary>
		/// <param name="cache"></param>
		/// <param name="sortItemProvider"></param>
		/// <param name="fReturnFirstDecendentOnly"></param>
		private PartOwnershipTree(FdoCache cache, IMultiListSortItemProvider sortItemProvider, bool fReturnFirstDecendentOnly)
		{
			XmlNode partOwnershipTreeSpec = sortItemProvider.PartOwnershipTreeSpec;
			m_cache = cache;
			m_classOwnershipTree = partOwnershipTreeSpec.SelectSingleNode(".//ClassOwnershipTree");
			XmlNode parentClassPathsToChildren = partOwnershipTreeSpec.SelectSingleNode(".//ParentClassPathsToChildren");
			m_parentToChildrenSpecs = parentClassPathsToChildren.Clone();
			// now go through the seq specs and set the "firstOnly" to the requested value.
			XmlNodeList xnl = m_parentToChildrenSpecs.SelectNodes(".//seq");
			if (xnl == null)
				return;
			foreach (XmlElement xe in xnl)
			{
				XmlAttribute xaFirstOnly = xe.Attributes["firstOnly"];
				if (xaFirstOnly == null)
				{
					// create the first only attribute
					xaFirstOnly = xe.OwnerDocument.CreateAttribute("firstOnly");
					xe.Attributes.Append(xaFirstOnly);
				}
				xaFirstOnly.Value = fReturnFirstDecendentOnly.ToString().ToLowerInvariant();
			}
		}
Ejemplo n.º 3
0
 /// <summary>
 /// Factory for returning a PartOwnershipTree
 /// </summary>
 /// <param name="cache"></param>
 /// <param name="sortItemProvider"></param>
 /// <param name="fReturnFirstDecendentOnly"></param>
 /// <returns></returns>
 static public PartOwnershipTree Create(FdoCache cache, IMultiListSortItemProvider sortItemProvider, bool fReturnFirstDecendentOnly)
 {
     return(new PartOwnershipTree(cache, sortItemProvider, fReturnFirstDecendentOnly));
 }
Ejemplo n.º 4
0
		/// <summary>
		/// Factory for returning a PartOwnershipTree
		/// </summary>
		/// <param name="cache"></param>
		/// <param name="sortItemProvider"></param>
		/// <param name="fReturnFirstDecendentOnly"></param>
		/// <returns></returns>
		static public PartOwnershipTree Create(FdoCache cache, IMultiListSortItemProvider sortItemProvider, bool fReturnFirstDecendentOnly)
		{
			return new PartOwnershipTree(cache, sortItemProvider, fReturnFirstDecendentOnly);
		}