Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions src/main/java/com/crowdin/client/translations/TranslationsApi.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,15 @@ public ResponseObject<PreTranslationStatus> applyPreTranslationStringsBased(Long

/**
* @param projectId project identifier
* @param preTranslationId pre-translation identifier
* @param jobIdentifier pre-translation job identifier
* @return pre-translation status
* @see <ul>
* <li><a href="https://developer.crowdin.com/api/v2/#operation/api.projects.pre-translations.post" target="_blank"><b>API Documentation</b></a></li>
* <li><a href="https://developer.crowdin.com/enterprise/api/v2/#operation/api.projects.pre-translations.post" target="_blank"><b>Enterprise API Documentation</b></a></li>
* </ul>
*/
public ResponseObject<PreTranslationStatus> preTranslationStatus(Long projectId, String preTranslationId) throws HttpException, HttpBadRequestException {
PreTranslationStatusResponseObject preTranslationStatusResponseObject = this.httpClient.get(this.url + "/projects/" + projectId + "/pre-translations/" + preTranslationId, new HttpRequestConfig(), PreTranslationStatusResponseObject.class);
public ResponseObject<PreTranslationStatus> preTranslationStatus(Long projectId, String jobIdentifier) throws HttpException, HttpBadRequestException {
PreTranslationStatusResponseObject preTranslationStatusResponseObject = this.httpClient.get(this.url + "/projects/" + projectId + "/pre-translations/" + jobIdentifier, new HttpRequestConfig(), PreTranslationStatusResponseObject.class);
return ResponseObject.of(preTranslationStatusResponseObject.getData());
}

Expand Down Expand Up @@ -280,36 +280,36 @@ public ResponseList<PreTranslation> batchEditPreTranslations(Long projectId, Lis
* Edit Pre-Translation
*
* @param projectId project identifier
* @param preTranslationId pre-translation identifier
* @param jobIdentifier pre-translation job identifier
* @see <ul>
* <li><a href="https://developer.crowdin.com/api/v2/#operation/api.projects.pre-translations.patch" target="_blank"><b>API Documentation</b></a></li>
* <li><a href="https://developer.crowdin.com/enterprise/api/v2/#operation/api.projects.pre-translations.patch" target="_blank"><b>Enterprise API Documentation</b></a></li>
* </ul>
*/
public ResponseObject<PreTranslation> editPreTranslation(Long projectId, String preTranslationId, List<PatchRequest> request) throws HttpException, HttpBadRequestException {
public ResponseObject<PreTranslation> editPreTranslation(Long projectId, String jobIdentifier, List<PatchRequest> request) throws HttpException, HttpBadRequestException {
PreTranslationResponseObject preTranslationResponseObject = this.httpClient.patch(
this.url + "/projects/" + projectId + "/pre-translations/" + preTranslationId,
this.url + "/projects/" + projectId + "/pre-translations/" + jobIdentifier,
request,
new HttpRequestConfig(),
PreTranslationResponseObject.class
);
return ResponseObject.of(preTranslationResponseObject.getData());
}

/**
* Pre-Translation Report
*
*
* @param projectId project identifier
* @param preTranslationId pre-translation identifier
* @param jobIdentifier pre-translation job identifier
* @return pre-translation report data
* @see <ul>
* <li><a href="https://developer.crowdin.com/api/v2/#tag/Translations/operation/api.projects.pre-translations.report.getReport" target="_blank"><b>API Documentation</b></a></li>
* <li><a href="https://developer.crowdin.com/enterprise/api/v2/#tag/Translations/operation/api.projects.pre-translations.report.getReport" target="_blank"><b>Enterprise API Documentation</b></a></li>
* </ul>
*/
public ResponseObject<PreTranslationReportResponse> getPreTranslationReport(Long projectId, String preTranslationId) throws HttpException, HttpBadRequestException {
public ResponseObject<PreTranslationReportResponse> getPreTranslationReport(Long projectId, String jobIdentifier) throws HttpException, HttpBadRequestException {
PreTranslationReportResponseObject response = this.httpClient.get(
this.url + "/projects/" + projectId + "/pre-translations/" + preTranslationId + "/report",
this.url + "/projects/" + projectId + "/pre-translations/" + jobIdentifier + "/report",
new HttpRequestConfig(),
PreTranslationReportResponseObject.class
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ public class ApplyPreTranslationRequest {

private List<String> languageIds;
private List<Long> fileIds;
private List<Long> directoryIds;
private List<Long> branchIds;
private Method method;
private Long engineId;
private Long aiPromptId;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ public class PreTranslationStatus {
public static class Attributes {
private List<String> languageIds;
private List<Long> fileIds;
private List<Long> directoryIds;
private List<Long> branchIds;
private Method method;
private AutoApproveOption autoApproveOption;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ public List<RequestMock> getMocks() {
RequestMock.build(this.url + "/projects/" + projectId + "/pre-translations", HttpPost.METHOD_NAME, "api/translations/preTranslationStringsBasedRequest.json", "api/translations/preTranslationStatusStringsBased.json"),
RequestMock.build(this.url + "/projects/" + projectId + "/pre-translations", HttpPost.METHOD_NAME, "api/translations/preTranslationScopeRequest.json", "api/translations/preTranslationStatus.json"),
RequestMock.build(this.url + "/projects/" + projectId + "/pre-translations", HttpPost.METHOD_NAME, "api/translations/preTranslationScopeStringsBasedRequest.json", "api/translations/preTranslationStatusStringsBased.json"),
RequestMock.build(this.url + "/projects/" + projectId + "/pre-translations", HttpPost.METHOD_NAME, "api/translations/preTranslationDirectoryBranchRequest.json", "api/translations/preTranslationStatusWithDirectoryBranch.json"),
RequestMock.build(this.url + "/projects/" + projectId + "/pre-translations/" + preTranslationId, HttpGet.METHOD_NAME, "api/translations/preTranslationStatus.json"),
RequestMock.build(String.format("%s/projects/%d/translations/builds/directories/%d", this.url, projectId, directoryId), HttpPost.METHOD_NAME, "api/translations/buildProjectDirectoryRequest.json", "api/translations/downloadLink.json"),
RequestMock.build(this.url + "/projects/" + projectId + "/translations/builds/files/" + fileId, HttpPost.METHOD_NAME, "api/translations/buildFileRequest.json", "api/translations/downloadLink.json"),
Expand Down Expand Up @@ -97,6 +98,20 @@ public void applyPreTranslationStringsBasedTest() {
assertEquals(20000L, preTranslationStatusResponseObject.getData().getAttributes().getExcludeLabelIds().get(0));
}

@Test
public void applyPreTranslationDirectoryAndBranchTest() {
ApplyPreTranslationRequest request = new ApplyPreTranslationRequest();
request.setLanguageIds(singletonList(language));
request.setDirectoryIds(singletonList(directoryId));
request.setBranchIds(singletonList(branchId));
request.setAutoApproveOption(AutoApproveOption.NONE);
request.setMethod(Method.MT);
ResponseObject<PreTranslationStatus> preTranslationStatusResponseObject = this.getTranslationsApi().applyPreTranslation(projectId, request);
assertEquals(preTranslationStatusResponseObject.getData().getIdentifier(), preTranslationId);
assertEquals(directoryId, preTranslationStatusResponseObject.getData().getAttributes().getDirectoryIds().get(0));
assertEquals(branchId, preTranslationStatusResponseObject.getData().getAttributes().getBranchIds().get(0));
}

@Test
public void applyPreTranslationScopeTest() {
ApplyPreTranslationRequest request = new ApplyPreTranslationRequest();
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"languageIds": [
"uk"
],
"directoryIds": [
3
],
"branchIds": [
211
],
"method": "mt",
"autoApproveOption": "none"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"data": {
"identifier": "9e7de270-4f83-41cb-b606-2f90631f26e2",
"status": "created",
"progress": 0,
"attributes": {
"languageIds": [
"uk"
],
"directoryIds": [
3
],
"branchIds": [
211
],
"method": "mt",
"autoApproveOption": "none"
},
"createdAt": "2019-09-20T14:05:50+00:00",
"updatedAt": "2019-09-20T14:05:50+00:00",
"startedAt": "2020-04-14T10:32:39Z",
"finishedAt": "2020-04-14T10:32:39Z"
}
}
Loading