Beispiel #1
0
        /// <summary>
        /// Gets the references: a list of packages.
        /// </summary>
        /// <param name="contentItem">The content item is being referenced.</param>
        /// <returns>The list of references. Can return a null value when no package found</returns>
        internal IEnumerable <PackageReference> GetReferences(ContentItemViewModel contentItem)
        {
            List <PackageReference> packages = null;

            _references.TryGetValue(contentItem, out packages);
            return(packages);
        }
Beispiel #2
0
        internal bool HasReferencesToPackage(ContentItemViewModel contentItem, PackageViewModel package)
        {
            List <PackageReference> packages = null;

            _references.TryGetValue(contentItem, out packages);

            return(packages != null &&
                   packages.Any(p => p.Package == package));
        }
Beispiel #3
0
        /// <summary>
        /// Gets the content item.
        /// </summary>
        /// <param name="id">The id.</param>
        /// <param name="language">The language.</param>
        /// <returns>May return null if does not exist</returns>
        public ContentItemViewModel GetContentItem(UInt64 id, string language)
        {
            ContentItemViewModel item = null;

            // Only try the requested language
            if (_contentItemsPerId != null)
            {
                _contentItemsPerId.TryGetValue(new Tuple <UInt64, string>(id, language), out item);
            }

            return(item);
        }
Beispiel #4
0
        /// <summary>
        /// Gets the content item.
        /// </summary>
        /// <param name="id">The id.</param>
        /// <param name="language">The language.</param>
        /// <returns>May return null if does not exist</returns>
        public ContentItemViewModel GetContentItemLanguageSafe(UInt64 id, string language)
        {
            ContentItemViewModel item = null;

            // First try the requested language
            if (_contentItemsPerId != null)
            {
                _contentItemsPerId.TryGetValue(new Tuple <UInt64, string>(id, language), out item);
            }

            // If nothing exist for the requested, we can try the SFX language, it might be a mixed bank
            if (_contentItemsPerId != null && item == null && language != "SFX")
            {
                _contentItemsPerId.TryGetValue(new Tuple <UInt64, string>(id, "SFX"), out item);
            }

            return(item);
        }