This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new 25f30fa CAMEL-15859: camel-salesforce: Don't generate unnecessary
enums (#4616)
25f30fa is described below
commit 25f30fa7f594eb6193201ac7e12bea8096ba133c
Author: Jeremy Ross <[email protected]>
AuthorDate: Mon Nov 16 15:24:38 2020 -0600
CAMEL-15859: camel-salesforce: Don't generate unnecessary enums (#4616)
If the user is only using strings for picklist values, don't generate
java enum files.
---
.../java/org/apache/camel/maven/GenerateMojo.java | 28 ++++++++++++----------
1 file changed, 16 insertions(+), 12 deletions(-)
diff --git
a/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/GenerateMojo.java
b/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/GenerateMojo.java
index d941cc4..afbe6dd 100644
---
a/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/GenerateMojo.java
+++
b/components/camel-salesforce/camel-salesforce-maven-plugin/src/main/java/org/apache/camel/maven/GenerateMojo.java
@@ -451,18 +451,22 @@ public class GenerateMojo extends AbstractSalesforceMojo {
}
// write required Enumerations for any picklists
- for (final SObjectField field : description.getFields()) {
- if (utility.isPicklist(field) ||
utility.isMultiSelectPicklist(field)) {
- final String enumName =
utility.enumTypeName(description.getName(), field.getName());
- final String enumFileName = enumName + JAVA_EXT;
- final File enumFile = new File(pkgDir, enumFileName);
-
- context.put("field", field);
- context.put("enumName", enumName);
- final Template enumTemplate =
engine.getTemplate(SOBJECT_PICKLIST_VM, UTF_8);
-
- try (final Writer writer = new OutputStreamWriter(new
FileOutputStream(enumFile), StandardCharsets.UTF_8)) {
- enumTemplate.merge(context, writer);
+ if (!useStringsForPicklists || (picklistToEnums != null &&
picklistToEnums.length > 0)) {
+ for (final SObjectField field : description.getFields()) {
+ if (utility.isPicklist(field) ||
utility.isMultiSelectPicklist(field)) {
+ final String enumName =
utility.enumTypeName(description.getName(),
+ field.getName());
+ final String enumFileName = enumName + JAVA_EXT;
+ final File enumFile = new File(pkgDir, enumFileName);
+
+ context.put("field", field);
+ context.put("enumName", enumName);
+ final Template enumTemplate =
engine.getTemplate(SOBJECT_PICKLIST_VM, UTF_8);
+
+ try (final Writer writer = new OutputStreamWriter(
+ new FileOutputStream(enumFile),
StandardCharsets.UTF_8)) {
+ enumTemplate.merge(context, writer);
+ }
}
}
}