public static async Task ExampleAsync() { using (IAdPostingApiClient client = new AdPostingApiClient(ClientId, ClientSecret, Environment.Integration)) { // Create a new advertisement Advertisement advertisement = GetExampleAdvertisementToCreate(); AdvertisementResource createdAdvertisement = await CreateAdvertisementExampleAsync(advertisement, client); if (createdAdvertisement != null) { // Retrieve advertisement AdvertisementResource advertisementResource = await GetAdvertisementExampleAsync(createdAdvertisement.Id, client); // Modify details on the advertisement advertisementResource.JobTitle = "Senior Dude"; advertisementResource.CreationId = CreationId; AdvertisementResource updatedAdvertisementResource = await UpdateAdvertisementExampleAsync(advertisementResource); // Expire the advertisement await ExpireAdvertisementExampleAsync(updatedAdvertisementResource); } // Get paged summaries of created advertisements AdvertisementSummaryPageResource advertisementSummaryPage = await GetAllAdvertisementsExampleAsync(client); while (!advertisementSummaryPage.Eof) { advertisementSummaryPage = await GetAllAdvertisementsNextPageExampleAsync(advertisementSummaryPage); } } Console.WriteLine("Finished Example. Press a key to exit."); Console.ReadKey(true); }
public static async Task <AdvertisementResource> UpdateAdvertisementExampleAsync(AdvertisementResource advertisement) { AdvertisementResource advertisementResource = null; try { await TransientErrorRetryPolicy.ExecuteAsync(async() => advertisementResource = await advertisement.SaveAsync()); Console.WriteLine($"Updated Advertisement:\n{JsonConvert.SerializeObject(advertisementResource, Formatting.Indented)}"); } catch (RequestException ex) { LogException(ex); } return(advertisementResource); }
private static async Task <AdvertisementResource> GetAdvertisementExampleAsync(Guid advertisementId, IAdPostingApiClient client) { AdvertisementResource advertisementResource = null; try { await TransientErrorRetryPolicy.ExecuteAsync(async() => advertisementResource = await client.GetAdvertisementAsync(advertisementId)); Console.WriteLine($"Retrieved Advertisement:\n{JsonConvert.SerializeObject(advertisementResource, Formatting.Indented)}"); } catch (RequestException ex) { LogException(ex); } return(advertisementResource); }
public static async Task ExampleAsync() { using (IAdPostingApiClient client = new AdPostingApiClient(ClientId, ClientSecret, Environment.Integration)) { // Determine available templates for this advertiser TemplateSummaryListResource templatesList = await GetAllTemplatesForAdvertiserExampleAsync(AdvertiserId, client); // Use first active template TemplateSummaryResource activeTemplate = templatesList.Templates.FirstOrDefault(t => t.State == TemplateStatus.Active); // Create a new advertisement Advertisement advertisement = GetExampleAdvertisementToCreate(); AdvertisementResource createdAdvertisement = await CreateAdvertisementExampleAsync(advertisement, client); if (createdAdvertisement != null) { // Retrieve advertisement AdvertisementResource advertisementResource = await GetAdvertisementExampleAsync(createdAdvertisement.Id, client); // Modify details on the advertisement advertisementResource.JobTitle = "Senior Dude"; if (activeTemplate != null) { advertisementResource.Template.Id = Int32.Parse(activeTemplate.Id); } AdvertisementResource updatedAdvertisementResource = await UpdateAdvertisementExampleAsync(advertisementResource); // Expire the advertisement await ExpireAdvertisementExampleAsync(updatedAdvertisementResource); } // Get paged summaries of created advertisements AdvertisementSummaryPageResource advertisementSummaryPage = await GetAllAdvertisementsExampleAsync(client); while (!advertisementSummaryPage.Eof) { advertisementSummaryPage = await GetAllAdvertisementsNextPageExampleAsync(advertisementSummaryPage); } } Console.WriteLine("Finished Example. Press a key to exit."); Console.ReadKey(true); }
public async Task UpdateExistingAdvertisementUsingHalSelfLink() { OAuth2Token oAuth2Token = new OAuth2TokenBuilder().Build(); var link = $"{AdvertisementLink}/{AdvertisementId}"; var viewRenderedAdvertisementLink = $"{AdvertisementLink}/{AdvertisementId}/view"; this.SetupPactForUpdatingExistingAdvertisement(link, oAuth2Token, viewRenderedAdvertisementLink); Advertisement requestModel = this.SetupModelForExistingAdvertisement(new AdvertisementModelBuilder(this.AllFieldsInitializer)).Build(); AdvertisementResource result; using (AdPostingApiClient client = this.Fixture.GetClient(oAuth2Token)) { result = await client.UpdateAdvertisementAsync(new Uri(this.Fixture.AdPostingApiServiceBaseUri, link), requestModel); } AdvertisementResource expectedResult = this.SetupModelForExistingAdvertisement( new AdvertisementResourceBuilder(this.AllFieldsInitializer).WithId(new Guid(AdvertisementId)).WithLinks(AdvertisementId)).Build(); result.ShouldBeEquivalentTo(expectedResult); }
private void AssertReturnedAdvertisementMatchesExpectedExpiredAdvertisement(string advertisementId, DateTime expiryDate, AdvertisementResource result) { AdvertisementResource expectedResult = new AdvertisementResourceBuilder(this.AllFieldsInitializer) .WithId(new Guid(advertisementId)) .WithLinks(advertisementId) .WithState(AdvertisementState.Expired) .WithExpiryDate(expiryDate) .WithAgentId(null) .Build(); result.ShouldBeEquivalentTo(expectedResult); }
private void AssertRetrievedAdvertisementMatchesExpected(AllFieldsInitializer builderInitializer, string advertisementId, AdvertisementResource result) { AdvertisementResource expectedResult = new AdvertisementResourceBuilder(builderInitializer) .WithId(new Guid(advertisementId)) .WithLinks(advertisementId) .WithProcessingStatus(ProcessingStatus.Completed) .Build(); result.ShouldBeEquivalentTo(expectedResult); }