public int Add(MinifiedUrl url) { _context.MinifiedUrls.Add(url); _context.SaveChanges(); return(url.Id); }
public MinifiedUrlModel(MinifiedUrl minifiedUrl) { OriginalUrl = minifiedUrl.OriginalUrl; ShortUrl = minifiedUrl.ShortUrl; ClickCount = minifiedUrl.ClickCount; DateCreated = minifiedUrl.DateCreated.ToString("g"); }
private MinifiedUrl CreateShortUrl(string urlPrefix, MinifiedUrl minifiedUrl) { minifiedUrl.ShortUrl = $"{urlPrefix}/{BijectiveAlgorithm.Encode(minifiedUrl.Id)}"; _urlRepository.Update(minifiedUrl); return(minifiedUrl); }
public MinifiedUrl Execute(MinifiedUrl minifiedUrl) { if (!IsValid(minifiedUrl)) { throw new ArgumentException(); } minifiedUrl.Created = DateTime.UtcNow; return(minifiedUrl); }
private static bool Validate(MinifiedUrl inputDocument) { if (string.IsNullOrEmpty(inputDocument.FullUrl) || string.IsNullOrEmpty(inputDocument.MinifiedSlug)) { return(false); } return(true); }
public async Task <bool> Execute(MinifiedUrl minifiedUrl) { if (!IsValid(minifiedUrl)) { throw new ArgumentException(); } var client = await cosmosClient.Get(); var response = await client.DeleteDocumentAsync(minifiedUrl.FullUrl); return(response.StatusCode == System.Net.HttpStatusCode.OK); }
private MinifiedUrl CreateInitialMinifiedUrl(Identity user, string originalUrl) { var url = new MinifiedUrl { UserId = user.Id, OriginalUrl = originalUrl, DateCreated = DateTime.Now }; _urlRepository.Add(url); return(url); }
public static async Task Run( [ServiceBusTrigger("new-urls", "CreateUrl", Connection = "GetNewUrlsServiceBusConnection")] MinifiedUrl validatedMinifiedUrl, Binder binder, TraceWriter log) { log.Info($"Processing the url: `{validatedMinifiedUrl.MinifiedSlug}`"); var output = await CreateOutputBinding(binder); var processedMinifiedUrl = new MinifiedUrl { MinifiedSlug = validatedMinifiedUrl.MinifiedSlug, FullUrl = validatedMinifiedUrl.FullUrl, Created = validatedMinifiedUrl.Created }; await output.AddAsync(processedMinifiedUrl); }
private bool IsValid(MinifiedUrl minifiedUrl) { return(!string.IsNullOrWhiteSpace(minifiedUrl.FullUrl) && !string.IsNullOrWhiteSpace(minifiedUrl.MinifiedSlug)); }
private void IncreaseClickCount(MinifiedUrl minifiedUrl) { minifiedUrl.ClickCount++; minifiedUrl.DateLastUpdated = DateTime.Now; _urlRepository.Update(minifiedUrl); }
public void Update(MinifiedUrl url) { _context.MinifiedUrls.Update(url); _context.SaveChanges(); }