public static IEnumerable <StructureGroup> GetStructureGroups(this OrganizationalItem sg, bool recursive)
        {
            var filter = new OrganizationalItemItemsFilter(sg.Session)
            {
                ItemTypes = new[] { ItemType.StructureGroup },
                Recursive = recursive
            };

            return(sg.GetItems(filter).Cast <StructureGroup>());
        }
        public static IEnumerable <Page> GetPages(this OrganizationalItem sg, bool recursive)
        {
            var filter = new OrganizationalItemItemsFilter(sg.Session)
            {
                ItemTypes = new[] { ItemType.Page },
                Recursive = recursive
            };

            return(sg.GetItems(filter).Cast <Page>());
        }
        public static IEnumerable <Component> GetComponents(this OrganizationalItem folder, IEnumerable <Schema> basedOnSchemas, bool recursive)
        {
            var filter = new OrganizationalItemItemsFilter(folder.Session)
            {
                ItemTypes      = new[] { ItemType.Component },
                Recursive      = recursive,
                BasedOnSchemas = basedOnSchemas
            };

            return(folder.GetItems(filter).Cast <Component>());
        }
Example #4
0
        /// <summary>
        /// Retrieves a list of <see cref="T:Tridion.ContentManager.ContentManagement.Component" /> from a
        /// <see cref="T:Tridion.ContentManager.ContentManagement.OrganizationalItem" />
        /// </summary>
        /// <param name="organizationalItem"><see cref="T:Tridion.ContentManager.ContentManagement.OrganizationalItem" /></param>
        /// <param name="recursive">if set to <c>true</c> [recursive].</param>
        /// <returns>
        /// List of <see cref="T:Tridion.ContentManager.ContentManagement.Component" />
        /// </returns>
        public static List <Component> Components(this OrganizationalItem organizationalItem, bool recursive)
        {
            if (organizationalItem != null)
            {
                OrganizationalItemItemsFilter filter = new OrganizationalItemItemsFilter(organizationalItem.Session)
                {
                    ItemTypes = new ItemType[] { ItemType.Component },
                    Recursive = recursive
                };

                // Return a list of all matching component types
                return(organizationalItem.GetItems(filter).OfType <Component>().ToList());
            }

            return(new List <Component>());
        }
Example #5
0
        /// <summary>
        /// Retrieves a list of <see cref="T:Tridion.ContentManager.ContentManagement.Component" /> from a
        /// <see cref="T:Tridion.ContentManager.ContentManagement.OrganizationalItem" />
        /// </summary>
        /// <param name="organizationalItem"><see cref="T:Tridion.ContentManager.ContentManagement.OrganizationalItem" /></param>
        /// <param name="schema">Schema <see cref="T:Tridion.ContentManager.ContentManagement.Schema" /> for filtering.</param>
        /// <returns>List of <see cref="T:Tridion.ContentManager.ContentManagement.Component" /></returns>
        public static List <Component> Components(this OrganizationalItem organizationalItem, Schema schema)
        {
            if (organizationalItem != null)
            {
                OrganizationalItemItemsFilter filter = new OrganizationalItemItemsFilter(organizationalItem.Session)
                {
                    ItemTypes      = new ItemType[] { ItemType.Component },
                    BasedOnSchemas = schema != null ? new Schema[] { schema } : null
                };

                // Return a list of all matching component types
                return(organizationalItem.GetItems(filter).OfType <Component>().ToList());
            }

            return(new List <Component>());
        }