This is an automated email from the ASF dual-hosted git repository.
hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git
The following commit(s) were added to refs/heads/main by this push:
new b75c30a3ac Get mails (workflow) and Email messages input (pipeline)
ignore received date filters (#6916)
b75c30a3ac is described below
commit b75c30a3ac5fb90da2f6a11ad568bee9d91da418
Author: Lance <[email protected]>
AuthorDate: Wed Apr 1 16:26:09 2026 +0800
Get mails (workflow) and Email messages input (pipeline) ignore received
date filters (#6916)
Signed-off-by: lance <[email protected]>
---
.../transforms/mailinput/MailInputMeta.java | 64 +++++++++-------------
.../mail/workflow/actions/getpop/ActionGetPOP.java | 1 +
.../actions/getpop/MailConnectionMeta.java | 3 +-
3 files changed, 30 insertions(+), 38 deletions(-)
diff --git
a/plugins/misc/mail/src/main/java/org/apache/hop/mail/pipeline/transforms/mailinput/MailInputMeta.java
b/plugins/misc/mail/src/main/java/org/apache/hop/mail/pipeline/transforms/mailinput/MailInputMeta.java
index f682ed06d0..f691c135d5 100644
---
a/plugins/misc/mail/src/main/java/org/apache/hop/mail/pipeline/transforms/mailinput/MailInputMeta.java
+++
b/plugins/misc/mail/src/main/java/org/apache/hop/mail/pipeline/transforms/mailinput/MailInputMeta.java
@@ -18,7 +18,6 @@
package org.apache.hop.mail.pipeline.transforms.mailinput;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
import lombok.Getter;
@@ -55,8 +54,6 @@ import org.apache.hop.pipeline.transform.TransformMeta;
documentationUrl = "/pipeline/transforms/emailinput.html")
public class MailInputMeta extends BaseTransformMeta<MailInput, MailInputData>
{
private static final Class<?> PKG = MailInputMeta.class;
- private static final String CONST_SPACE = " ";
- private static final String CONST_FIELD = "field";
public static final String DATE_PATTERN = "yyyy-MM-dd HH:mm:ss";
public static final int DEFAULT_BATCH_SIZE = 500;
@@ -67,33 +64,35 @@ public class MailInputMeta extends
BaseTransformMeta<MailInput, MailInputData> {
public int conditionReceivedDate;
public Map<String, String> valueImaps =
- new HashMap<>() {
- {
- put("imaplistall", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetAll.Label"));
- put("imaplistnew", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNew.Label"));
- put("imaplistold", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetOld.Label"));
- put("imaplistread", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetRead.Label"));
- put(
+ Map.ofEntries(
+ Map.entry(
+ "imaplistall", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetAll.Label")),
+ Map.entry(
+ "imaplistnew", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNew.Label")),
+ Map.entry(
+ "imaplistold", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetOld.Label")),
+ Map.entry(
+ "imaplistread", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetRead.Label")),
+ Map.entry(
"imaplistunread",
- BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetUnread.Label"));
- put(
+ BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetUnread.Label")),
+ Map.entry(
"imaplistflagged",
- BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetFlagged.Label"));
- put(
+ BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetFlagged.Label")),
+ Map.entry(
"imaplistnotflagged",
- BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNotFlagged.Label"));
- put("imaplistdraft", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetDraft.Label"));
- put(
+ BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNotFlagged.Label")),
+ Map.entry(
+ "imaplistdraft", BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetDraft.Label")),
+ Map.entry(
"imaplistnotdraft",
- BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNotDraft.Label"));
- put(
+ BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNotDraft.Label")),
+ Map.entry(
"imaplistanswered",
- BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetAnswered.Label"));
- put(
+ BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetAnswered.Label")),
+ Map.entry(
"imaplistnotanswered",
- BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNotAnswered.Label"));
- }
- };
+ BaseMessages.getString(PKG,
"ActionGetPOP.IMAPListGetNotAnswered.Label")));
private int valueImapList;
@@ -201,13 +200,10 @@ public class MailInputMeta extends
BaseTransformMeta<MailInput, MailInputData> {
@Override
public Object clone() {
MailInputMeta retval = (MailInputMeta) super.clone();
- int nrFields = inputFields.size();
- // retval.allocate(nrFields);
List<MailInputField> retvalFields = new ArrayList<>();
for (MailInputField inputField : inputFields) {
if (inputField != null) {
retvalFields.add((MailInputField) inputField.clone());
- // retval.inputFields.set(i) = (MailInputField)
inputFields.get(i).clone();
}
}
retval.setInputFields(retvalFields);
@@ -253,19 +249,9 @@ public class MailInputMeta extends
BaseTransformMeta<MailInput, MailInputData> {
end = null;
stopOnError = true;
- int nrFields = 0;
-
inputFields = new ArrayList<>();
}
- private static final class Tags {
- static final String USE_BATCH = "useBatch";
- static final String BATCH_SIZE = "batchSize";
- static final String START_MSG = "startMsg";
- static final String END_MSG = "endMsg";
- static final String STOP_ON_ERROR = "stopOnError";
- }
-
@Override
public void check(
List<ICheckResult> remarks,
@@ -347,6 +333,10 @@ public class MailInputMeta extends
BaseTransformMeta<MailInput, MailInputData> {
}
public int getConditionReceivedDate() {
+ if (conditionReceivedDate > 0) {
+ return conditionReceivedDate;
+ }
+
return MailConnectionMeta.getConditionDateByDesc(conditionReceivedDateStr);
}
}
diff --git
a/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/ActionGetPOP.java
b/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/ActionGetPOP.java
index 4afe729d48..ccc61778ae 100644
---
a/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/ActionGetPOP.java
+++
b/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/ActionGetPOP.java
@@ -86,6 +86,7 @@ public class ActionGetPOP extends ActionBase implements
Cloneable, IAction {
public int actionType;
+ @HopMetadataProperty(key = "conditionreceiveddate")
public int conditionReceivedDate;
public int valueIMAPList;
diff --git
a/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/MailConnectionMeta.java
b/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/MailConnectionMeta.java
index 2f005fca56..6c3cfcd2c1 100644
---
a/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/MailConnectionMeta.java
+++
b/plugins/misc/mail/src/main/java/org/apache/hop/mail/workflow/actions/getpop/MailConnectionMeta.java
@@ -17,6 +17,7 @@
package org.apache.hop.mail.workflow.actions.getpop;
+import org.apache.commons.lang3.StringUtils;
import org.apache.hop.i18n.BaseMessages;
/** MailConnection handles the process of connecting to, reading from
POP3/IMAP. */
@@ -259,7 +260,7 @@ public class MailConnectionMeta {
}
public static int getConditionDateByDesc(String tt) {
- if (tt == null) {
+ if (StringUtils.isBlank(tt)) {
return 0;
}