Esempio n. 1
0
        /// <summary>
        /// Gets the build.
        /// </summary>
        /// <param name="buildDescriptor">The build descriptor.</param>
        /// <returns></returns>
        public Build GetBuild(BuildDescriptor buildDescriptor)
        {
            Build build = new NullBuild(buildDescriptor);

            if (buildDescriptor != null)
            {
                var key = build.Number + "-" + build.Url;

                if (Cache.ContainsKey(key))
                {
                    build = Cache[key];

                    System.Diagnostics.Debug.WriteLine("Hit: " + key);
                }
                else
                {
                    build = BuildService.GetBuild(buildDescriptor);

                    if (!build.Building) Cache.Add(key, build);

                    System.Diagnostics.Debug.WriteLine("Miss: " + key);
                }
            }

            return build;
        }
Esempio n. 2
0
        /// <summary>
        /// Gets the build.
        /// </summary>
        /// <param name="buildDescriptor">The build descriptor.</param>
        /// <returns></returns>
        public Build GetBuild(BuildDescriptor buildDescriptor)
        {
            Build build = new NullBuild(buildDescriptor);

            var url = new XmlApiPrepender().Prepend(build.Url);

            if (buildDescriptor != null)
            {
                var xml = XmlService.GetPage(url);

                if (xml.IsValid)
                {
                    build = new BuildMapper().Map(xml.Contents);
                }
            }

            return build;
        }