/// <summary>Snippet for CreateBatch</summary> public void CreateBatchRequestObject() { // Snippet: CreateBatch(CreateBatchRequest, CallSettings) // Create client BatchControllerClient batchControllerClient = BatchControllerClient.Create(); // Initialize request argument(s) CreateBatchRequest request = new CreateBatchRequest { ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"), Batch = new Batch(), BatchId = "", RequestId = "", }; // Make the request Operation <Batch, BatchOperationMetadata> response = batchControllerClient.CreateBatch(request); // Poll until the returned long-running operation is complete Operation <Batch, BatchOperationMetadata> completedResponse = response.PollUntilCompleted(); // Retrieve the operation result Batch result = completedResponse.Result; // Or get the name of the operation string operationName = response.Name; // This name can be stored, then the long-running operation retrieved later by name Operation <Batch, BatchOperationMetadata> retrievedResponse = batchControllerClient.PollOnceCreateBatch(operationName); // Check if the retrieved long-running operation has completed if (retrievedResponse.IsCompleted) { // If it has completed, then access the result Batch retrievedResult = retrievedResponse.Result; } // End snippet }
public void UpsertAccountTest() { // Upsert an account String externalFieldName = ConfigurationManager.AppSettings["ExternalFieldName"]; Assert.AreNotEqual("external_id_here_for_upsert_test", externalFieldName, "Please specify an external id account field."); CreateJobRequest jobRequest = buildDefaultUpsertAccountCreateJobRequest(externalFieldName); Job job = _apiClient.CreateJob(jobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest batchRequest = buildCreateBatchRequest(job.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(batchRequest); // Close job so no more batches are added. _apiClient.CloseJob(job.Id); job = _apiClient.GetCompletedJob(job.Id); Assert.IsTrue(job.NumberBatchesFailed == 0); Assert.IsTrue(job.NumberRecordsProcessed > 0); }
public async Task <CreateBatchResponse> Post(CreateBatchRequest request) { var batch = request.ConvertTo <Batch>(); batch.Id = idGenerator.Generate(); batch.CreatedOn = DateTime.UtcNow; await batchRepository.Create(batch); return(new CreateBatchResponse { BatchId = batch.Id }); }
public void GetBatchResultsTest() { CreateJobRequest insertAccountJobRequest = buildDefaultInsertAccountCreateJobRequest(); Job insertAccountJob = _apiClient.CreateJob(insertAccountJobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest batchRequest = buildCreateBatchRequest(insertAccountJob.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(batchRequest); String batchResults = _apiClient.GetBatchResults(accountBatch.JobId, accountBatch.Id); Assert.IsTrue(String.IsNullOrWhiteSpace(batchResults) == false); }
public void GetBatchRequestTest() { CreateJobRequest insertAccountJobRequest = buildDefaultInsertAccountCreateJobRequest(); Job insertAccountJob = _apiClient.CreateJob(insertAccountJobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest batchRequest = buildCreateBatchRequest(insertAccountJob.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(batchRequest); String batchRequestContents = _apiClient.GetBatchRequest(accountBatch.JobId, accountBatch.Id); Assert.AreEqual(batchContents, batchRequestContents); }
/// <summary> /// 创建批次 /// </summary> /// <param name="req"><see cref="CreateBatchRequest"/></param> /// <returns><see cref="CreateBatchResponse"/></returns> public CreateBatchResponse CreateBatchSync(CreateBatchRequest req) { JsonResponseModel <CreateBatchResponse> rsp = null; try { var strResp = this.InternalRequestSync(req, "CreateBatch"); rsp = JsonConvert.DeserializeObject <JsonResponseModel <CreateBatchResponse> >(strResp); } catch (JsonSerializationException e) { throw new TencentCloudSDKException(e.Message); } return(rsp.Response); }
public void QueryAccountTest() { // Insert an account so there's at least one to query CreateJobRequest insertAccountJobRequest = buildDefaultInsertAccountCreateJobRequest(); Job insertAccountJob = _apiClient.CreateJob(insertAccountJobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest batchRequest = buildCreateBatchRequest(insertAccountJob.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(batchRequest); _apiClient.CloseJob(insertAccountJob.Id); insertAccountJob = _apiClient.GetCompletedJob(insertAccountJob.Id); // Query the account that was inserted. CreateJobRequest queryAccountJobRequest = buildDefaultQueryAccountCreateJobRequest(); Job queryJob = _apiClient.CreateJob(queryAccountJobRequest); String accountQuery = "SELECT Id, Name FROM Account WHERE Name = '" + DEFAULT_ACCOUNT_NAME + "'"; CreateBatchRequest queryBatchRequest = buildCreateBatchRequest(queryJob.Id, accountQuery); queryBatchRequest.BatchContentType = BatchContentType.CSV; Batch queryBatch = _apiClient.CreateBatch(queryBatchRequest); _apiClient.CloseJob(queryJob.Id); queryJob = _apiClient.GetCompletedJob(queryJob.Id); String batchQueryResultsList = _apiClient.GetBatchResults(queryBatch.JobId, queryBatch.Id); List <String> resultIds = _apiClient.GetResultIds(batchQueryResultsList); Assert.AreEqual(1, resultIds.Count); String batchQueryResults = _apiClient.GetBatchResult(queryBatch.JobId, queryBatch.Id, resultIds[0]); Assert.IsTrue(batchQueryResults.Contains(DEFAULT_ACCOUNT_NAME)); }
public void GetJobBatchesTest() { CreateJobRequest insertAccountJobRequest = buildDefaultInsertAccountCreateJobRequest(); Job insertAccountJob = _apiClient.CreateJob(insertAccountJobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest batchRequest = buildCreateBatchRequest(insertAccountJob.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(batchRequest); String batchContents2 = buildDefaultAccountBatchContents("Test Name2"); CreateBatchRequest batchRequest2 = buildCreateBatchRequest(insertAccountJob.Id, batchContents2); Batch accountBatch2 = _apiClient.CreateBatch(batchRequest2); List <Batch> batches = _apiClient.GetBatches(insertAccountJob.Id); Assert.AreEqual(2, batches.Count); }
public void InsertAccountsWith1BatchTest() { CreateJobRequest insertAccountJobRequest = buildDefaultInsertAccountCreateJobRequest(); Job insertAccountJob = _apiClient.CreateJob(insertAccountJobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest insertAccountBatchRequest = buildCreateBatchRequest(insertAccountJob.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(insertAccountBatchRequest); Assert.IsTrue(accountBatch != null); Assert.IsTrue(String.IsNullOrWhiteSpace(accountBatch.Id) == false); // Close job so no more batches are added. _apiClient.CloseJob(insertAccountJob.Id); insertAccountJob = _apiClient.GetCompletedJob(insertAccountJob.Id); Assert.IsTrue(insertAccountJob.NumberRecordsFailed == 0); Assert.IsTrue(insertAccountJob.NumberRecordsProcessed == 1); }
public void DeleteAccountTest() { // Insert an account so there's at least one to delete CreateJobRequest jobRequest = buildDefaultInsertAccountCreateJobRequest(); Job job = _apiClient.CreateJob(jobRequest); String batchContents = buildDefaultAccountBatchContents(); CreateBatchRequest batchRequest = buildCreateBatchRequest(job.Id, batchContents); Batch accountBatch = _apiClient.CreateBatch(batchRequest); _apiClient.CloseJob(job.Id); job = _apiClient.GetCompletedJob(job.Id); // Query the accounts to dynamically retreive the account id to delete CreateJobRequest queryAccountJobRequest = buildDefaultQueryAccountCreateJobRequest(); Job queryJob = _apiClient.CreateJob(queryAccountJobRequest); String accountQuery = "SELECT Id FROM Account WHERE Name = '" + DEFAULT_ACCOUNT_NAME + "'"; CreateBatchRequest queryBatchRequest = buildCreateBatchRequest(queryJob.Id, accountQuery); queryBatchRequest.BatchContentType = BatchContentType.CSV; Batch queryBatch = _apiClient.CreateBatch(queryBatchRequest); // Close job so no more batches are added. _apiClient.CloseJob(queryJob.Id); queryJob = _apiClient.GetCompletedJob(queryJob.Id); String batchQueryResultsList = _apiClient.GetBatchResults(queryBatch.JobId, queryBatch.Id); List <String> resultIds = _apiClient.GetResultIds(batchQueryResultsList); Assert.AreEqual(1, resultIds.Count); String batchQueryResults = _apiClient.GetBatchResult(queryBatch.JobId, queryBatch.Id, resultIds[0]); String[] batchQueryResultsParts = batchQueryResults.Split(new String[] { "\n" }, StringSplitOptions.RemoveEmptyEntries); String firstAccountIdToDelete = batchQueryResultsParts[1].Replace(@"""", String.Empty); // Delete the account CreateJobRequest deleteAccountJobRequest = buildDefaultDeleteAccountCreateJobRequest(); Job deleteJob = _apiClient.CreateJob(deleteAccountJobRequest); String deleteBatchContents = "Id" + Environment.NewLine + firstAccountIdToDelete; CreateBatchRequest deleteBatchRequest = buildCreateBatchRequest(deleteJob.Id, deleteBatchContents); Batch deleteBatch = _apiClient.CreateBatch(deleteBatchRequest); // Close job so no more batches are added. _apiClient.CloseJob(deleteJob.Id); deleteJob = _apiClient.GetCompletedJob(deleteJob.Id); Assert.AreEqual(1, deleteJob.NumberRecordsProcessed); }