Example #1
0
        public static Task ImageParser(ParseState state, XmlReader reader)
        {
            if (state.NodeType == XmlNodeType.Element && !reader.IsEmptyElement)
            {
                state.InnerState = InnerState.Image;
                state.Image      = new ImageState();
            }

            if (state.NodeType == XmlNodeType.EndElement)
            {
                var ip = new HPEImageParser();
                if (string.IsNullOrEmpty(state.Image.ContentType))
                {
                    state.Image.ContentType = state.Image.ImageUrlHttp.GetContentType();
                }

                var image = new Image(
                    state.Image.GroupingKey1,
                    state.Image.GroupingKey2,
                    state.Image.ContentType,
                    state.Image.PixelHeight,
                    state.Image.Orientation,
                    state.Image.PixelWidth,
                    state.Image.ImageUrlHttp,
                    state.Image.TypeDetail,
                    state.Image.FullTitle,
                    ip.ParseContentTypePriority(state.Image.ContentType),
                    ip.GetSizeCategory(state.Image.PixelHeight, state.Image.PixelWidth),
                    ip.ParseTypeDetail(state.Image.TypeDetail),
                    ip.ParseIntWithDefault(state.Image.PixelHeight),
                    ip.ParseIntWithDefault(state.Image.PixelWidth)
                    );
                state.Links.ImageLinks.Add(image);
                state.Image      = null;
                state.InnerState = InnerState.None;
            }

            return(Task.CompletedTask);
        }
Example #2
0
        public void Should_return_correct_image_category(string height, string width, SizeCategoryEnum category)
        {
            var ip = new HPEImageParser();

            ip.GetSizeCategory(height, width).Should().Be(category);
        }
Example #3
0
 private ImageBuilder()
 {
     _ip = new HPEImageParser();
 }