Example #1
0
        public async Task <IActionResult> AddFlick(AddFlickRequest request)
        {
            var cancellation = HttpContext.RequestAborted;

            var imdbId = ImdbId.TryParseFromUrl(request.SourceUrl);

            if (string.IsNullOrWhiteSpace(imdbId))
            {
                return(Problem(
                           statusCode: 400,
                           title: "Invalid URL",
                           detail: $"Provided URL '{request.SourceUrl}' is not a valid IMDB link"
                           ));
            }

            var flickId = await _catalogPopulator.PopulateFlickAsync(imdbId, cancellation);

            if (flickId == null)
            {
                return(Problem(
                           statusCode: 404,
                           title: "Not Found",
                           detail: $"IMDB title '{imdbId}' not found"
                           ));
            }

            return(Ok(new AddFlickResponse
            {
                FlickId = flickId.Value
            }));
        }
Example #2
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (Title != null ? Title.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (ImdbId != null ? ImdbId.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ Year;
         hashCode = (hashCode * 397) ^ (TvdbId != null ? TvdbId.GetHashCode() : 0);
         return(hashCode);
     }
 }
        /// <summary>
        /// Returns a valid query string starting with a ? for this object.
        /// </summary>
        /// <returns></returns>
        public string ToQueryString()
        {
            string quey = "";
            string qn = null, qi = null, qz = null;

            if (Name != null && Name.Trim().Length > 0)
            {
                qn = "name=" + Uri.EscapeUriString(Name);
            }
            if (ImdbId != null && ImdbId.Trim().Length > 0)
            {
                qi = "imdbId=" + Uri.EscapeUriString(ImdbId);
            }
            if (Zap2ItId != null && Zap2ItId.Trim().Length > 0)
            {
                qz = "zap2itId=" + Uri.EscapeUriString(Zap2ItId);
            }

            if (qn != null)
            {
                quey = qn;
            }
            if (qi != null)
            {
                if (quey.Length > 0)
                {
                    quey += "&";
                }
                quey += qi;
            }
            if (qz != null)
            {
                if (quey.Length > 0)
                {
                    quey += "&";
                }
                quey += qz;
            }
            if (quey.Length > 0)
            {
                quey = "?" + quey;
            }

            return(quey);
        }
Example #4
0
        public override int GetHashCode()
        {
            unchecked
            {
                int result = Title != null?Title.GetHashCode() : 0;

                result = (result * 397) ^ (Year.HasValue ? Year.Value : 0);
                result = (result * 397) ^ (ImdbId != null ? ImdbId.GetHashCode() : 0);
                result = (result * 397) ^ (ImdbRating.HasValue ? ImdbRating.Value.GetHashCode() : 0);
                result = (result * 397) ^ (Cover != null ? Cover.GetHashCode() : 0);
                result = (result * 397) ^ TimeAdded;
                result = (result * 397) ^ (Duration.HasValue ? Duration.Value : 0);
                result = (result * 397) ^ (Plot != null ? Plot.GetHashCode() : 0);
                result = (result * 397) ^ (GuessedTitle != null ? GuessedTitle.GetHashCode() : 0);

                foreach (var s in Files.Concat(Principals).Concat(Directors).Concat(Genres).Concat(Writers).Concat(Tags))
                {
                    result = (result * 397) ^ (s != null ? s.GetHashCode() : 0);
                }

                return(result);
            }
        }
Example #5
0
 public override int GetHashCode()
 {
     return(ImdbId != null?ImdbId.GetHashCode() : 0);
 }
Example #6
0
 public bool Any() => TheTvDb.HasValue() || TheMovieDb.HasValue() || ImdbId.HasValue();