/// <returns> /// <see cref="ServiceResponseString"/> /// </returns> protected override async Task <string> RunAsync(HttpClient client) { if (string.IsNullOrEmpty(jobId)) { throw new ArgumentNullException(nameof(jobId)); } var model = new SharePointJobExecutionModel { MigrationType = "Incremental", StartTime = DateTime.Now.AddMinutes(2), }; var requestContent = JsonConvert.SerializeObject(model); var content = new StringContent(requestContent, Encoding.UTF8, "application/json"); var response = await client.PostAsync($"/api/sharepoint/jobs/{jobId}", content); return(await response.Content.ReadAsStringAsync()); }
/// <returns> /// <see cref="ServiceResponsePlanSummaryModel"/> /// </returns> protected override async Task <string> RunAsync(HttpClient client) { var sourceAccount = new AccountModel { Username = "******", Password = "******", }; var destinationAccount = new AccountModel { Username = "******", Password = "******", }; var siteLevelMappingContent = new SharePointMappingContent { Source = new SharePointObject { Url = "<sharepoint site url>", Level = "Site", }, Destination = new SharePointObject { Url = "<sharepoint site url>", Level = "Site" }, Method = "Combine" }; var siteCollectionLevelMappingContent = new SharePointMappingContent { Source = new SharePointObject { Url = "<sharepoint site collection url>", Level = "SiteCollection", }, Destination = new SharePointObject { Url = "<sharepoint site collection url>", Level = "SiteCollection" }, Method = "Combine" }; var mappings = new SharePointMappingModel { SourceAccount = sourceAccount, DestinationAccount = destinationAccount, Contents = new List <SharePointMappingContent> { siteLevelMappingContent, siteCollectionLevelMappingContent }, }; var settings = new SharePointJobExecutionSettingsModel { MigrationMode = "HighSpeed", PolicyId = "Default_SP07To10MigrationOnlineMapping_Profile", Schedule = new ScheduleModel { IntervalType = "OnlyOnce", StartTime = DateTime.Now.AddMinutes(2), }, }; var model = new SharePointJobExecutionModel { Mappings = mappings, Settings = settings, }; var requestContent = JsonConvert.SerializeObject(model); var content = new StringContent(requestContent, Encoding.UTF8, "application/json"); var response = await client.PostAsync("/api/sharepoint/jobs", content); return(await response.Content.ReadAsStringAsync()); }