embulk-input-zendesk-all 0.3.9 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 66b582f9b7eb1e5b3269b334e7c8dd46fb8bcd01
4
- data.tar.gz: 1fd7ead56fc82aa40b9d9c9786491b9de5d20fe3
3
+ metadata.gz: 754e901b20a46eb8ac5bce67cea26d5e591b6468
4
+ data.tar.gz: 7e8ff3710c2c7d958fba1e83b8e4f97a9e6dcab9
5
5
  SHA512:
6
- metadata.gz: 7f8b5f051215b0cc328a96b1a7d5c6729102283821f0fbc5a9e9cf0f8a58d45e32a2d9da240a97924a6bcc0b7ccef16c35cd36936b934a96cba46f365845d25e
7
- data.tar.gz: c06cf6a71c462fe6e598d2977745ec129dc5c32130c0fa63d05015b2f08c8942ed1803edb391338f760ab2652a0a3c485596672d5c842a24a2b872e546055dd8
6
+ metadata.gz: 37836c1dd71514cc607ea61bdc63e2b8093138cbaa61a18e68b64efda3b090a0df4cef1e05995b1fb4fd46dce65d72c8f5eac99e0ef266cdd9fa884f1d30a391
7
+ data.tar.gz: eb77b3fade0ae6a129e8cd5f2fcc0ec35f11878ac8656107c4124721aa4c06e05d8de2b0e0d5ed09c5c8ad9d83ef450a5c2331bb718c943cbdd819ef30f6ef7f
data/README.md CHANGED
@@ -15,6 +15,7 @@ Required Embulk version >= 0.9.6.
15
15
  * DOES support JSON type columns
16
16
  * Supports satisfaction_ratings API
17
17
  * Supports ticket_metric_events API
18
+ * Supports SLA Policies API
18
19
 
19
20
 
20
21
  * **Plugin type**: input
data/build.gradle CHANGED
@@ -15,7 +15,7 @@ configurations {
15
15
  provided
16
16
  }
17
17
 
18
- version = "0.3.9"
18
+ version = "0.4.0"
19
19
 
20
20
  sourceCompatibility = 1.8
21
21
  targetCompatibility = 1.8
data/gradlew CHANGED
@@ -168,5 +168,5 @@ eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$A
168
168
  if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
169
169
  cd "$(dirname "$0")"
170
170
  fi
171
-
171
+ echo "$JAVACMD" "$@"
172
172
  exec "$JAVACMD" "$@"
@@ -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
- uriBuilder.setParameter(ZendeskConstants.Field.START_TIME, String.valueOf(startTime))
38
- .setParameter("sort_by", "id")
39
- .setParameter("per_page", String.valueOf(100))
40
- .setParameter("page", String.valueOf(page));
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.3.9
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: 2019-10-31 00:00:00.000000000 Z
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