embulk-input-zendesk-all 0.3.9 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/build.gradle +1 -1
- data/gradlew +1 -1
- data/src/main/java/org/embulk/input/zendesk/services/ZendeskNPSService.java +5 -0
- data/src/main/java/org/embulk/input/zendesk/services/ZendeskNormalServices.java +16 -3
- data/src/main/java/org/embulk/input/zendesk/services/ZendeskSupportAPIService.java +18 -6
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 754e901b20a46eb8ac5bce67cea26d5e591b6468
|
4
|
+
data.tar.gz: 7e8ff3710c2c7d958fba1e83b8e4f97a9e6dcab9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 37836c1dd71514cc607ea61bdc63e2b8093138cbaa61a18e68b64efda3b090a0df4cef1e05995b1fb4fd46dce65d72c8f5eac99e0ef266cdd9fa884f1d30a391
|
7
|
+
data.tar.gz: eb77b3fade0ae6a129e8cd5f2fcc0ec35f11878ac8656107c4124721aa4c06e05d8de2b0e0d5ed09c5c8ad9d83ef450a5c2331bb718c943cbdd819ef30f6ef7f
|
data/README.md
CHANGED
data/build.gradle
CHANGED
data/gradlew
CHANGED
@@ -15,6 +15,11 @@ public class ZendeskNPSService extends ZendeskNormalServices
|
|
15
15
|
{
|
16
16
|
return true;
|
17
17
|
}
|
18
|
+
@Override
|
19
|
+
protected String buildURI(final int page, final long startTime, final long endTime)
|
20
|
+
{
|
21
|
+
return buildURI(page, startTime);
|
22
|
+
}
|
18
23
|
|
19
24
|
@Override
|
20
25
|
protected String buildURI(final int page, final long startTime)
|
@@ -59,11 +59,15 @@ public abstract class ZendeskNormalServices implements ZendeskService
|
|
59
59
|
|
60
60
|
return taskReport;
|
61
61
|
}
|
62
|
-
|
63
62
|
public JsonNode getDataFromPath(String path, final int page, final boolean isPreview, final long startTime)
|
63
|
+
{
|
64
|
+
return getDataFromPath(path, page,isPreview, startTime);
|
65
|
+
}
|
66
|
+
|
67
|
+
public JsonNode getDataFromPath(String path, final int page, final boolean isPreview, final long startTime, final long endTime)
|
64
68
|
{
|
65
69
|
if (path.isEmpty()) {
|
66
|
-
path = buildURI(page, startTime);
|
70
|
+
path = buildURI(page, startTime, endTime);
|
67
71
|
}
|
68
72
|
|
69
73
|
final String response = getZendeskRestClient().doGet(path, task, isPreview);
|
@@ -71,6 +75,8 @@ public abstract class ZendeskNormalServices implements ZendeskService
|
|
71
75
|
}
|
72
76
|
|
73
77
|
protected abstract String buildURI(int page, long startTime);
|
78
|
+
protected abstract String buildURI(int page, long startTime, long endTime);
|
79
|
+
|
74
80
|
|
75
81
|
@VisibleForTesting
|
76
82
|
protected ZendeskRestClient getZendeskRestClient()
|
@@ -287,6 +293,7 @@ public abstract class ZendeskNormalServices implements ZendeskService
|
|
287
293
|
private void importDataForNonIncremental(final ZendeskInputPlugin.PluginTask task, final int taskIndex, RecordImporter recordImporter, final boolean getStartDate)
|
288
294
|
{
|
289
295
|
long startTime = 0;
|
296
|
+
long endTime = 0;
|
290
297
|
|
291
298
|
if (Target.SATISFACTION_RATINGS.equals(task.getTarget())){
|
292
299
|
if (getStartDate && task.getStartTime().isPresent()) {
|
@@ -294,10 +301,16 @@ public abstract class ZendeskNormalServices implements ZendeskService
|
|
294
301
|
}
|
295
302
|
logger.info("Start time = {}", startTime);
|
296
303
|
|
304
|
+
if (task.getEndTime().isPresent()) {
|
305
|
+
endTime = ZendeskDateUtils.isoToEpochSecond(task.getEndTime().get());
|
306
|
+
}
|
307
|
+
|
308
|
+
logger.info("End time = {}", endTime);
|
309
|
+
|
297
310
|
int i = 1;
|
298
311
|
final Set<String> knownIds = ConcurrentHashMap.newKeySet();
|
299
312
|
while (true) {
|
300
|
-
final JsonNode result = getDataFromPath("", taskIndex +i, false, startTime);
|
313
|
+
final JsonNode result = getDataFromPath("", taskIndex +i, false, startTime, endTime);
|
301
314
|
final Iterator<JsonNode> iterator = ZendeskUtils.getListRecords(result, task.getTarget().getJsonName());
|
302
315
|
while (iterator.hasNext()) {
|
303
316
|
final JsonNode recordJsonNode = iterator.next();
|
@@ -22,7 +22,12 @@ public class ZendeskSupportAPIService extends ZendeskNormalServices
|
|
22
22
|
}
|
23
23
|
|
24
24
|
@Override
|
25
|
-
protected String buildURI(final int page, long startTime)
|
25
|
+
protected String buildURI(final int page, long startTime){
|
26
|
+
return buildURI(page, startTime);
|
27
|
+
}
|
28
|
+
|
29
|
+
@Override
|
30
|
+
protected String buildURI(final int page, long startTime, long endTime)
|
26
31
|
{
|
27
32
|
final URIBuilder uriBuilder = ZendeskUtils.getURIBuilder(task.getLoginUrl()).setPath(buildPath());
|
28
33
|
|
@@ -34,11 +39,18 @@ public class ZendeskSupportAPIService extends ZendeskNormalServices
|
|
34
39
|
}
|
35
40
|
else {
|
36
41
|
if (Target.SATISFACTION_RATINGS.equals(task.getTarget())){
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
+
if (endTime>0){
|
43
|
+
uriBuilder.setParameter(ZendeskConstants.Field.START_TIME, String.valueOf(startTime))
|
44
|
+
.setParameter(ZendeskConstants.Field.END_TIME, String.valueOf(endTime))
|
45
|
+
.setParameter("sort_by", "id")
|
46
|
+
.setParameter("per_page", String.valueOf(100))
|
47
|
+
.setParameter("page", String.valueOf(page));
|
48
|
+
}else{
|
49
|
+
uriBuilder.setParameter(ZendeskConstants.Field.START_TIME, String.valueOf(startTime))
|
50
|
+
.setParameter("sort_by", "id")
|
51
|
+
.setParameter("per_page", String.valueOf(100))
|
52
|
+
.setParameter("page", String.valueOf(page));
|
53
|
+
}
|
42
54
|
}
|
43
55
|
else{
|
44
56
|
uriBuilder.setParameter("sort_by", "id")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: embulk-input-zendesk-all
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- hieu.duong
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-02-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|
@@ -139,8 +139,8 @@ files:
|
|
139
139
|
- classpath/commons-logging-1.2.jar
|
140
140
|
- classpath/httpcore-4.4.10.jar
|
141
141
|
- classpath/httpclient-4.5.6.jar
|
142
|
+
- classpath/embulk-input-zendesk-all-0.4.0.jar
|
142
143
|
- classpath/commons-codec-1.10.jar
|
143
|
-
- classpath/embulk-input-zendesk-all-0.3.9.jar
|
144
144
|
homepage: https://github.com/treasure-data/embulk-input-zendesk
|
145
145
|
licenses:
|
146
146
|
- MIT
|