diff --git a/src/main/java/com/crowdin/client/tasks/model/Task.java b/src/main/java/com/crowdin/client/tasks/model/Task.java index 92c75ea64..df3215351 100644 --- a/src/main/java/com/crowdin/client/tasks/model/Task.java +++ b/src/main/java/com/crowdin/client/tasks/model/Task.java @@ -31,6 +31,7 @@ public class Task { private String translationUrl; private String webUrl; private Integer wordsCount; + private Integer originalWordsCount; private Integer filesCount; private Integer commentsCount; private Date deadline; @@ -45,4 +46,16 @@ public class Task { private List targetLanguages; private Object fields; private Long precedingTaskId; + /** + * Enterprise only. Null when the task is fully synced, not shared, or the counterpart + * task is unavailable. + */ + private SyncScope syncScope; + + @Data + public static class SyncScope { + private Integer syncedWords; + private Integer pendingWords; + private Integer skippedWords; + } } diff --git a/src/test/java/com/crowdin/client/tasks/TasksApiTest.java b/src/test/java/com/crowdin/client/tasks/TasksApiTest.java index b879fd5cf..752410959 100644 --- a/src/test/java/com/crowdin/client/tasks/TasksApiTest.java +++ b/src/test/java/com/crowdin/client/tasks/TasksApiTest.java @@ -352,6 +352,10 @@ public void addStringsBasedEnterpriseTaskTest() { assertEquals(taskId, taskResponseObject.getData().getId()); assertEquals(status, taskResponseObject.getData().getStatus()); assertEquals(fields, taskResponseObject.getData().getFields()); + assertEquals(30, taskResponseObject.getData().getOriginalWordsCount()); + assertEquals(10, taskResponseObject.getData().getSyncScope().getSyncedWords()); + assertEquals(5, taskResponseObject.getData().getSyncScope().getPendingWords()); + assertEquals(2, taskResponseObject.getData().getSyncScope().getSkippedWords()); } @Test diff --git a/src/test/resources/api/tasks/enterpriseTask.json b/src/test/resources/api/tasks/enterpriseTask.json index 9be5a35f0..4b55cc4ec 100644 --- a/src/test/resources/api/tasks/enterpriseTask.json +++ b/src/test/resources/api/tasks/enterpriseTask.json @@ -38,6 +38,7 @@ "translationUrl": "/proofread/9092638ac9f2a2d1b5571d08edc53763/all/en-fr/10?task=dac37aff364d83899128e68afe0de4994", "webUrl": "https://crowdin.com/project/example-project/tasks/1", "wordsCount": 24, + "originalWordsCount": 30, "commentsCount": 0, "deadline": "2019-09-27T07:00:14+00:00", "startedAt": "2019-09-27T07:00:14+00:00", @@ -106,6 +107,11 @@ ], "fields": { "test-key": "test-value" + }, + "syncScope": { + "syncedWords": 10, + "pendingWords": 5, + "skippedWords": 2 } } } \ No newline at end of file