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 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