getLinesBetween(int start, int end, int offset) {
Field11T cp = newInstance(this);
return SwiftParseUtils.getLines(getLine(cp, start, end, offset));
diff --git a/src/main/java/com/prowidesoftware/swift/model/field/Field11T.java.bak b/src/main/java/com/prowidesoftware/swift/model/field/Field11T.java.bak
deleted file mode 100644
index 7a66058b..00000000
--- a/src/main/java/com/prowidesoftware/swift/model/field/Field11T.java.bak
+++ /dev/null
@@ -1,799 +0,0 @@
-/*
- * Copyright 2006-2023 Prowide
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.prowidesoftware.swift.model.field;
-
-import com.google.gson.JsonObject;
-import com.google.gson.JsonParser;
-import com.prowidesoftware.deprecation.ProwideDeprecated;
-import com.prowidesoftware.deprecation.TargetYear;
-import com.prowidesoftware.swift.model.*;
-import com.prowidesoftware.swift.model.Tag;
-import com.prowidesoftware.swift.utils.SwiftFormatUtils;
-import java.io.Serializable;
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import org.apache.commons.lang3.StringUtils;
-
-/**
- * SWIFT MT Field 11T.
- *
- * Model and parser for field 11T of a SWIFT MT message.
- *
- *
Subfields (components) Data types
- *
- * - Component 1: Type:
Long
- * - Component 2: Date:
Calendar
- * - Component 3: Time:
Calendar
- *
- *
- * Structure definition
- *
- * - validation pattern:
<MT>$<DATE4><HHMM>
- * - parser pattern:
S$<DATE4><HHMM>
- * - components pattern:
NDH
- *
- *
- *
- * This class complies with standard release SRU2022
- *
- * @deprecated This field has been moved to the Prowide Integrator since it is only used in SCORE messages, not in the general MT standard
- */
-@ProwideDeprecated(phase4 = TargetYear.SRU2025)
-public class Field11T extends Field implements Serializable, DateContainer, MultiLineField {
- /**
- * Constant identifying the SRU to which this class belongs to.
- */
- public static final int SRU = 2022;
-
- private static final long serialVersionUID = 1L;
- /**
- * Constant with the field name 11T.
- */
- public static final String NAME = "11T";
- /**
- * Same as NAME, intended to be clear when using static imports.
- */
- public static final String F_11T = "11T";
-
- /**
- * Component number for the Type subfield.
- */
- public static final Integer TYPE = 1;
-
- /**
- * Component number for the Date subfield.
- */
- public static final Integer DATE = 2;
-
- /**
- * Component number for the Time subfield.
- */
- public static final Integer TIME = 3;
-
- /**
- * Default constructor. Creates a new field setting all components to null.
- */
- public Field11T() {
- super(3);
- }
-
- /**
- * Creates a new field and initializes its components with content from the parameter value.
- * @param value complete field value including separators and CRLF
- */
- public Field11T(final String value) {
- super(value);
- }
-
- /**
- * Creates a new field and initializes its components with content from the parameter tag.
- * The value is parsed with {@link #parse(String)}
- * @throws IllegalArgumentException if the parameter tag is null or its tagname does not match the field name
- * @since 7.8
- */
- public Field11T(final Tag tag) {
- this();
- if (tag == null) {
- throw new IllegalArgumentException("tag cannot be null.");
- }
- if (!StringUtils.equals(tag.getName(), "11T")) {
- throw new IllegalArgumentException("cannot create field 11T from tag " + tag.getName()
- + ", tagname must match the name of the field.");
- }
- parse(tag.getValue());
- }
-
- /**
- * Copy constructor.
- * Initializes the components list with a deep copy of the source components list.
- * @param source a field instance to copy
- * @since 7.7
- */
- public static Field11T newInstance(Field11T source) {
- Field11T cp = new Field11T();
- cp.setComponents(new ArrayList<>(source.getComponents()));
- return cp;
- }
-
- /**
- * Create a Tag with this field name and the given value.
- * Shorthand for new Tag(NAME, value)
- * @see #NAME
- * @since 7.5
- */
- public static Tag tag(final String value) {
- return new Tag(NAME, value);
- }
-
- /**
- * Create a Tag with this field name and an empty string as value.
- * Shorthand for new Tag(NAME, "")
- * @see #NAME
- * @since 7.5
- */
- public static Tag emptyTag() {
- return new Tag(NAME, "");
- }
-
- /**
- * Parses the parameter value into the internal components structure.
- *
- *
Used to update all components from a full new value, as an alternative
- * to setting individual components. Previous component values are overwritten.
- *
- * @param value complete field value including separators and CRLF
- * @since 7.8
- */
- @Override
- public void parse(final String value) {
- init(3);
- List lines = SwiftParseUtils.getLines(value);
- if (lines.isEmpty()) {
- return;
- }
- setComponent1(lines.get(0));
- if (lines.size() > 1 && lines.get(1) != null) {
- String line = lines.get(1);
- setComponent2(StringUtils.substring(line, 0, 8));
- if (line.length() > 8) {
- setComponent3(StringUtils.substring(line, 8));
- }
- }
- }
-
- /**
- * Serializes the fields' components into the single string value (SWIFT format)
- */
- @Override
- public String getValue() {
- final StringBuilder result = new StringBuilder();
- append(result, 1);
- if (getComponent2() != null || getComponent3() != null) {
- result.append(com.prowidesoftware.swift.io.writer.FINWriterVisitor.SWIFT_EOL);
- append(result, 2);
- append(result, 3);
- }
- return result.toString();
- }
-
- /**
- * Returns a localized suitable for showing to humans string of a field component.
- *
- * @param component number of the component to display
- * @param locale optional locale to format date and amounts, if null, the default locale is used
- * @return formatted component value or null if component number is invalid or not present
- * @throws IllegalArgumentException if component number is invalid for the field
- * @since 7.8
- */
- @Override
- public String getValueDisplay(int component, Locale locale) {
- if (component < 1 || component > 3) {
- throw new IllegalArgumentException("invalid component number " + component + " for field 11T");
- }
- if (component == 1) {
- // default format (as is)
- return getComponent(1);
- }
- if (component == 2) {
- // date: [YY]YYMMDD
- java.text.DateFormat f =
- java.text.DateFormat.getDateInstance(java.text.DateFormat.DEFAULT, notNull(locale));
- java.util.Calendar cal = getComponent2AsCalendar();
- if (cal != null) {
- return f.format(cal.getTime());
- }
- }
- // time: HH[mm]
- java.text.DateFormat f = new java.text.SimpleDateFormat("HH:mm", notNull(locale));
- java.util.Calendar cal = getComponent3AsCalendar();
- if (cal != null) {
- return f.format(cal.getTime());
- }
- return null;
- }
- }
-
- /**
- * Returns the field component types pattern.
- *
- * This method returns a letter representing the type for each component in the Field. It supersedes
- * the Components Pattern because it distinguishes between N (Number) and I (BigDecimal).
- * @since 9.2.7
- */
- @Override
- public String typesPattern() {
- return "NDH";
- }
-
- /**
- * Returns the field parser pattern.
- */
- @Override
- public String parserPattern() {
- return "S$";
- }
-
- /**
- * Returns the field validator pattern
- */
- @Override
- public String validatorPattern() {
- return "$";
- }
-
- /**
- * Given a component number it returns true if the component is optional,
- * regardless of the field being mandatory in a particular message.
- * Being the field's value conformed by a composition of one or several
- * internal component values, the field may be present in a message with
- * a proper value but with some of its internal components not set.
- *
- * @param component component number, first component of a field is referenced as 1
- * @return true if the component is optional for this field, false otherwise
- */
- @Override
- public boolean isOptional(int component) {
- return false;
- }
-
- /**
- * Returns true if the field is a GENERIC FIELD as specified by the standard.
- * @return true if the field is generic, false otherwise
- */
- @Override
- public boolean isGeneric() {
- return false;
- }
-
- /**
- * Returns the defined amount of components.
- * This is not the amount of components present in the field instance, but the total amount of components
- * that this field accepts as defined.
- * @since 7.7
- */
- @Override
- public int componentsSize() {
- return 3;
- }
-
- /**
- * Returns english label for components.
- *
- * The index in the list is in sync with specific field component structure.
- * @see #getComponentLabel(int)
- * @since 7.8.4
- */
- @Override
- public List getComponentLabels() {
- List result = new ArrayList<>();
- result.add("Type");
- result.add("Date");
- result.add("Time");
- return result;
- }
-
- /**
- * Returns a mapping between component numbers and their label in camel case format.
- * @since 7.10.3
- */
- @Override
- protected Map getComponentMap() {
- Map result = new HashMap<>();
- result.put(1, "type");
- result.put(2, "date");
- result.put(3, "time");
- return result;
- }
-
- /**
- * @see Field#getLabelMap()
- * @since 9.3.12
- */
- @Override
- protected Map getLabelMap() {
- if (super.labelMap != null && !super.labelMap.isEmpty()) {
- // return cached map
- return super.labelMap;
- }
- super.labelMap = new HashMap<>();
- super.labelMap.put("type", 1);
- super.labelMap.put("date", 2);
- super.labelMap.put("time", 3);
- return super.labelMap;
- }
-
- /**
- * Gets the component 1 (Type).
- * @return the component 1
- */
- public String getComponent1() {
- return getComponent(1);
- }
-
- /**
- * Get the component 1 as Long
- *
- * @return the component 1 converted to Long or null if cannot be converted
- * @since 9.2.7
- */
- public java.lang.Long getComponent1AsLong() {
- return SwiftFormatUtils.getLong(getComponent(1));
- }
-
- /**
- * Gets the Type (component 1).
- * @return the Type from component 1
- */
- public String getType() {
- return getComponent1();
- }
-
- /**
- * Get the Type (component 1) as Long
- * @return the Type from component 1 converted to Long or null if cannot be converted
- * @since 9.2.7
- */
- public java.lang.Long getTypeAsLong() {
- return getComponent1AsLong();
- }
-
- /**
- * Gets the component 2 (Date).
- * @return the component 2
- */
- public String getComponent2() {
- return getComponent(2);
- }
-
- /**
- * Get the component 2 as Calendar
- *
- * @return the component 2 converted to Calendar or null if cannot be converted
- */
- public java.util.Calendar getComponent2AsCalendar() {
- return SwiftFormatUtils.getDate4(getComponent(2));
- }
-
- /**
- * Gets the Date (component 2).
- * @return the Date from component 2
- */
- public String getDate() {
- return getComponent2();
- }
-
- /**
- * Get the Date (component 2) as Calendar
- * @return the Date from component 2 converted to Calendar or null if cannot be converted
- */
- public java.util.Calendar getDateAsCalendar() {
- return getComponent2AsCalendar();
- }
-
- /**
- * Gets the component 3 (Time).
- * @return the component 3
- */
- public String getComponent3() {
- return getComponent(3);
- }
-
- /**
- * Get the component 3 as Calendar
- *
- * @return the component 3 converted to Calendar or null if cannot be converted
- */
- public java.util.Calendar getComponent3AsCalendar() {
- return SwiftFormatUtils.getTime3(getComponent(3));
- }
-
- /**
- * Gets the Time (component 3).
- * @return the Time from component 3
- */
- public String getTime() {
- return getComponent3();
- }
-
- /**
- * Get the Time (component 3) as Calendar
- * @return the Time from component 3 converted to Calendar or null if cannot be converted
- */
- public java.util.Calendar getTimeAsCalendar() {
- return getComponent3AsCalendar();
- }
-
- /**
- * Set the component 1 (Type).
- *
- * @param component1 the Type to set
- * @return the field object to enable build pattern
- */
- public Field11T setComponent1(String component1) {
- setComponent(1, component1);
- return this;
- }
-
-
- /**
- * Alternative method setter for field's Type (component 1) as as Number
- *
- * This method supports java constant value boxing for simpler coding styles (ex: 10 becomes an Integer)
- *
- * @param component1 the Number with the Type content to set
- * @return the field object to enable build pattern
- */
- public Field11T setComponent1(java.lang.Number component1) {
-
- // NOTE: remember instanceof implicitly checks for non-null
-
- if (component1 instanceof Long) {
- setComponent(1, SwiftFormatUtils.getLong((Long) component1));
- } else if (component1 instanceof BigInteger || component1 instanceof Integer) {
- setComponent(1, SwiftFormatUtils.getLong(component1.longValue()));
- } else if (component1 != null) {
- // it's another non-null Number (Float, Double, BigDecimal, etc...)
- setComponent(1, SwiftFormatUtils.getLong(component1.longValue()));
- } else {
- // explicitly set component as null
- setComponent(1, null);
- }
- return this;
- }
-
- /**
- * Set the Type (component 1).
- *
- * @param component1 the Type to set
- * @return the field object to enable build pattern
- */
- public Field11T setType(String component1) {
- return setComponent1(component1);
- }
-
- /**
- * Alternative method setter for field's Type (component 1) as as Number
- *
- * This method supports java constant value boxing for simpler coding styles (ex: 10 becomes an Integer)
- *
- * @param component1 the Number with the Type content to set
- * @return the field object to enable build pattern
- */
- public Field11T setType(java.lang.Number component1) {
- return setComponent1(component1);
- }
-
- /**
- * Set the component 2 (Date).
- *
- * @param component2 the Date to set
- * @return the field object to enable build pattern
- */
- public Field11T setComponent2(String component2) {
- setComponent(2, component2);
- return this;
- }
-
- /**
- * Set the component2 from a Calendar object.
- *
- * @param component2 the Calendar with the Date content to set
- * @return the field object to enable build pattern
- */
- public Field11T setComponent2(java.util.Calendar component2) {
- setComponent(2, SwiftFormatUtils.getDate4(component2));
- return this;
- }
-
- /**
- * Set the Date (component 2).
- *
- * @param component2 the Date to set
- * @return the field object to enable build pattern
- */
- public Field11T setDate(String component2) {
- return setComponent2(component2);
- }
-
- /**
- * Set the Date (component 2) from a Calendar object.
- *
- * @see #setComponent2(java.util.Calendar)
- *
- * @param component2 Calendar with the Date content to set
- * @return the field object to enable build pattern
- */
- public Field11T setDate(java.util.Calendar component2) {
- return setComponent2(component2);
- }
-
- /**
- * Set the component 3 (Time).
- *
- * @param component3 the Time to set
- * @return the field object to enable build pattern
- */
- public Field11T setComponent3(String component3) {
- setComponent(3, component3);
- return this;
- }
-
- /**
- * Set the component3 from a Calendar object.
- *
- * @param component3 the Calendar with the Time content to set
- * @return the field object to enable build pattern
- */
- public Field11T setComponent3(java.util.Calendar component3) {
- setComponent(3, SwiftFormatUtils.getTime3(component3));
- return this;
- }
-
- /**
- * Set the Time (component 3).
- *
- * @param component3 the Time to set
- * @return the field object to enable build pattern
- */
- public Field11T setTime(String component3) {
- return setComponent3(component3);
- }
-
- /**
- * Set the Time (component 3) from a Calendar object.
- *
- * @see #setComponent3(java.util.Calendar)
- *
- * @param component3 Calendar with the Time content to set
- * @return the field object to enable build pattern
- */
- public Field11T setTime(java.util.Calendar component3) {
- return setComponent3(component3);
- }
-
- /**
- * Returns all components that can be converted to a Calendar
- *
- * @return the list of converted components (a Calendar object or null)
- */
- @Override
- public List dates() {
- return DateResolver.dates(this);
- }
-
- /**
- * Returns the first component that can be converted to a Calendar
- *
- * @return the converted components (a Calendar object or null)
- */
- public Calendar date() {
- return DateResolver.date(this);
- }
-
- /**
- * Returns the field's name composed by the field number and the letter option (if any).
- * @return the static value of Field11T.NAME
- */
- @Override
- public String getName() {
- return NAME;
- }
-
- /**
- * Gets the first occurrence form the tag list or null if not found.
- * @return null if not found o block is null or empty
- * @param block may be null or empty
- */
- public static Field11T get(final SwiftTagListBlock block) {
- if (block == null || block.isEmpty()) {
- return null;
- }
- final Tag t = block.getTagByName(NAME);
- if (t == null) {
- return null;
- }
- return new Field11T(t);
- }
-
- /**
- * Gets the first instance of Field11T in the given message.
- * @param msg may be empty or null
- * @return null if not found or msg is empty or null
- * @see #get(SwiftTagListBlock)
- */
- public static Field11T get(final SwiftMessage msg) {
- if (msg == null || msg.getBlock4() == null || msg.getBlock4().isEmpty()) {
- return null;
- }
- return get(msg.getBlock4());
- }
-
- /**
- * Gets a list of all occurrences of the field Field11T in the given message
- * an empty list is returned if none found.
- * @param msg may be empty or null in which case an empty list is returned
- * @see #getAll(SwiftTagListBlock)
- */
- public static List getAll(final SwiftMessage msg) {
- if (msg == null || msg.getBlock4() == null || msg.getBlock4().isEmpty()) {
- return java.util.Collections.emptyList();
- }
- return getAll(msg.getBlock4());
- }
-
- /**
- * Gets a list of all occurrences of the field Field11T from the given block
- * an empty list is returned if none found.
- *
- * @param block may be empty or null in which case an empty list is returned
- */
- public static List getAll(final SwiftTagListBlock block) {
- final List result = new ArrayList<>();
- if (block == null || block.isEmpty()) {
- return result;
- }
- final Tag[] arr = block.getTagsByName(NAME);
- if (arr != null) {
- for (final Tag f : arr) {
- result.add(new Field11T(f));
- }
- }
- return result;
- }
-
- /**
- * Returns a specific line from the field's value.
- *
- * @see MultiLineField#getLine(int)
- * @param line a reference to a specific line in the field, first line being 1
- * @return line content or null if not present or if line number is above the expected
- * @since 7.7
- */
- @Override
- public String getLine(int line) {
- return getLine(line, 0);
- }
-
- /**
- * Returns a specific line from the field's value.
- *
- * @see MultiLineField#getLine(int, int)
- * @param line a reference to a specific line in the field, first line being 1
- * @param offset an optional component number used as offset when counting lines
- * @return line content or null if not present or if line number is above the expected
- * @since 7.7
- */
- @Override
- public String getLine(int line, int offset) {
- Field11T cp = newInstance(this);
- return getLine(cp, line, null, offset);
- }
-
- /**
- * Returns the field value split into lines.
- *
- * @see MultiLineField#getLines()
- * @return lines content or empty list if field's value is empty
- * @since 7.7
- */
- @Override
- public List getLines() {
- return SwiftParseUtils.getLines(getValue());
- }
-
- /**
- * Returns the field value starting at the offset component, split into lines.
- *
- * @see MultiLineField#getLines(int)
- * @param offset an optional component number used as offset when counting lines
- * @return found lines or empty list if lines are not present or the offset is invalid
- * @since 7.7
- */
- @Override
- public List getLines(int offset) {
- Field11T cp = newInstance(this);
- return SwiftParseUtils.getLines(getLine(cp, null, null, offset));
- }
-
- /**
- * Returns a specific subset of lines from the field's value, given a range.
- *
- * @see MultiLineField#getLinesBetween(int, int )
- * @param start a reference to a specific line in the field, first line being 1
- * @param end a reference to a specific line in the field, must be greater than start
- * @return found lines or empty list if value is empty
- * @since 7.7
- */
- @Override
- public List getLinesBetween(int start, int end) {
- return getLinesBetween(start, end, 0);
- }
-
- /**
- * Returns a specific subset of lines from the field's value, starting at the offset component.
- *
- * @see MultiLineField#getLinesBetween(int start, int end, int offset)
- * @param start a reference to a specific line in the field, first line being 1
- * @param end a reference to a specific line in the field, must be greater than start
- * @param offset an optional component number used as offset when counting lines
- * @return found lines or empty list if lines are not present or the offset is invalid
- * @since 7.7
- */
- @Override
- public List getLinesBetween(int start, int end, int offset) {
- Field11T cp = newInstance(this);
- return SwiftParseUtils.getLines(getLine(cp, start, end, offset));
- }
-
- /**
- * This method deserializes the JSON data into a Field11T object.
- * @param json JSON structure including tuples with label and value for all field components
- * @return a new field instance with the JSON data parsed into field components or an empty field id the JSON is invalid
- * @since 7.10.3
- * @see Field#fromJson(String)
- */
- public static Field11T fromJson(final String json) {
-
- final Field11T field = new Field11T();
-
- final JsonObject jsonObject = JsonParser.parseString(json).getAsJsonObject();
-
- // **** COMPONENT 1 - Type
-
- if (jsonObject.get("type") != null) {
- field.setComponent1(jsonObject.get("type").getAsString());
- }
-
- // **** COMPONENT 2 - Date
-
- if (jsonObject.get("date") != null) {
- field.setComponent2(jsonObject.get("date").getAsString());
- }
-
- // **** COMPONENT 3 - Time
-
- if (jsonObject.get("time") != null) {
- field.setComponent3(jsonObject.get("time").getAsString());
- }
-
- return field;
- }
-}
diff --git a/src/main/java/com/prowidesoftware/swift/model/field/Field21T.java b/src/main/java/com/prowidesoftware/swift/model/field/Field21T.java
index 605a5eb4..b0658a56 100644
--- a/src/main/java/com/prowidesoftware/swift/model/field/Field21T.java
+++ b/src/main/java/com/prowidesoftware/swift/model/field/Field21T.java
@@ -174,14 +174,11 @@ public String getValue() {
*/
@Override
public String getValueDisplay(int component, Locale locale) {
- if (component < 1 || component > 1) {
+ if (component != 1) {
throw new IllegalArgumentException("invalid component number " + component + " for field 21T");
}
- if (component == 1) {
- // default format (as is)
- return getComponent(1);
- }
- return null;
+ // default format (as is)
+ return getComponent(1);
}
/**
@@ -387,7 +384,7 @@ public static List getAll(final SwiftTagListBlock block) {
return result;
}
final Tag[] arr = block.getTagsByName(NAME);
- if (arr != null && arr.length > 0) {
+ if (arr != null) {
for (final Tag f : arr) {
result.add(new Field21T(f));
}
diff --git a/src/main/java/com/prowidesoftware/swift/model/field/Field29K.java b/src/main/java/com/prowidesoftware/swift/model/field/Field29K.java
index f7ce73f3..b0410815 100644
--- a/src/main/java/com/prowidesoftware/swift/model/field/Field29K.java
+++ b/src/main/java/com/prowidesoftware/swift/model/field/Field29K.java
@@ -171,13 +171,11 @@ public String getValueDisplay(int component, Locale locale) {
// default format (as is)
return getComponent(1);
}
- if (component == 2) {
- // time: HH[mm]
- java.text.DateFormat f = new java.text.SimpleDateFormat("HH:mm", notNull(locale));
- java.util.Calendar cal = getComponent2AsCalendar();
- if (cal != null) {
- return f.format(cal.getTime());
- }
+ // time: HH[mm]
+ java.text.DateFormat f = new java.text.SimpleDateFormat("HH:mm", notNull(locale));
+ java.util.Calendar cal = getComponent2AsCalendar();
+ if (cal != null) {
+ return f.format(cal.getTime());
}
return null;
}
diff --git a/src/main/java/com/prowidesoftware/swift/model/field/Field37P.java b/src/main/java/com/prowidesoftware/swift/model/field/Field37P.java
index 8e7e0383..419677ef 100644
--- a/src/main/java/com/prowidesoftware/swift/model/field/Field37P.java
+++ b/src/main/java/com/prowidesoftware/swift/model/field/Field37P.java
@@ -19,17 +19,14 @@
import com.google.gson.JsonParser;
import com.prowidesoftware.deprecation.ProwideDeprecated;
import com.prowidesoftware.deprecation.TargetYear;
-import com.prowidesoftware.swift.model.*;
+import com.prowidesoftware.swift.model.SwiftMessage;
+import com.prowidesoftware.swift.model.SwiftTagListBlock;
import com.prowidesoftware.swift.model.Tag;
import com.prowidesoftware.swift.utils.SwiftFormatUtils;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
+import java.util.*;
import org.apache.commons.lang3.StringUtils;
/**
@@ -158,17 +155,15 @@ public String getValue() {
*/
@Override
public String getValueDisplay(int component, Locale locale) {
- if (component < 1 || component > 1) {
+ if (component != 1) {
throw new IllegalArgumentException("invalid component number " + component + " for field 37P");
}
- if (component == 1) {
- // amount, rate
- java.text.NumberFormat f = java.text.NumberFormat.getNumberInstance(notNull(locale));
- f.setMaximumFractionDigits(13);
- BigDecimal n = getComponent1AsBigDecimal();
- if (n != null) {
- return f.format(n);
- }
+ // amount, rate
+ java.text.NumberFormat f = java.text.NumberFormat.getNumberInstance(notNull(locale));
+ f.setMaximumFractionDigits(13);
+ BigDecimal n = getComponent1AsBigDecimal();
+ if (n != null) {
+ return f.format(n);
}
return null;
}
@@ -322,24 +317,6 @@ public Field37P setComponent1(String component1) {
return this;
}
- /**
- * Set the component1 from a BigDecimal object.
- *
- * Parses the BigDecimal into a SWIFT amount with truncated zero decimals and mandatory decimal separator.
- *
- * - Example: 1234.00 -> 1234,
- * - Example: 1234 -> 1234,
- * - Example: 1234.56 -> 1234,56
- *
- * @since 9.2.7
- *
- * @param component1 the BigDecimal with the Rate content to set
- * @return the field object to enable build pattern
- */
- public Field37P setComponent1(java.math.BigDecimal component1) {
- setComponent(1, SwiftFormatUtils.getBigDecimal(component1));
- return this;
- }
/**
* Alternative method setter for field's Rate (component 1) as Number
*
@@ -347,7 +324,6 @@ public Field37P setComponent1(java.math.BigDecimal component1) {
*
* @param component1 the Number with the Rate content to set
* @return the field object to enable build pattern
- * @see #setRate(java.math.BigDecimal)
*/
public Field37P setComponent1(java.lang.Number component1) {
@@ -379,19 +355,6 @@ public Field37P setRate(String component1) {
return setComponent1(component1);
}
- /**
- * Set the Rate (component 1) from a BigDecimal object.
- *
- * @see #setComponent1(java.math.BigDecimal)
- *
- * @param component1 BigDecimal with the Rate content to set
- * @return the field object to enable build pattern
- * @since 9.2.7
- */
- public Field37P setRate(java.math.BigDecimal component1) {
- return setComponent1(component1);
- }
-
/**
* Alternative method setter for field's Rate (component 1) as Number
*
@@ -399,7 +362,6 @@ public Field37P setRate(java.math.BigDecimal component1) {
*
* @param component1 the Number with the Rate content to set
* @return the field object to enable build pattern
- * @see #setRate(java.math.BigDecimal)
*/
public Field37P setRate(java.lang.Number component1) {
return setComponent1(component1);
@@ -421,6 +383,7 @@ public List amounts() {
* @return the first amount as BigDecimal value. Can be null
* @see AmountResolver#amount(Field)
*/
+ @Override
public BigDecimal amount() {
return AmountResolver.amount(this);
}
diff --git a/src/main/java/com/prowidesoftware/swift/model/field/Field37U.java b/src/main/java/com/prowidesoftware/swift/model/field/Field37U.java
index df3ca53c..de39249e 100644
--- a/src/main/java/com/prowidesoftware/swift/model/field/Field37U.java
+++ b/src/main/java/com/prowidesoftware/swift/model/field/Field37U.java
@@ -19,17 +19,14 @@
import com.google.gson.JsonParser;
import com.prowidesoftware.deprecation.ProwideDeprecated;
import com.prowidesoftware.deprecation.TargetYear;
-import com.prowidesoftware.swift.model.*;
+import com.prowidesoftware.swift.model.SwiftMessage;
+import com.prowidesoftware.swift.model.SwiftTagListBlock;
import com.prowidesoftware.swift.model.Tag;
import com.prowidesoftware.swift.utils.SwiftFormatUtils;
import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
+import java.util.*;
import org.apache.commons.lang3.StringUtils;
/**
@@ -158,17 +155,15 @@ public String getValue() {
*/
@Override
public String getValueDisplay(int component, Locale locale) {
- if (component < 1 || component > 1) {
+ if (component != 1) {
throw new IllegalArgumentException("invalid component number " + component + " for field 37U");
}
- if (component == 1) {
- // amount, rate
- java.text.NumberFormat f = java.text.NumberFormat.getNumberInstance(notNull(locale));
- f.setMaximumFractionDigits(13);
- BigDecimal n = getComponent1AsBigDecimal();
- if (n != null) {
- return f.format(n);
- }
+ // amount, rate
+ java.text.NumberFormat f = java.text.NumberFormat.getNumberInstance(notNull(locale));
+ f.setMaximumFractionDigits(13);
+ BigDecimal n = getComponent1AsBigDecimal();
+ if (n != null) {
+ return f.format(n);
}
return null;
}
@@ -322,24 +317,6 @@ public Field37U setComponent1(String component1) {
return this;
}
- /**
- * Set the component1 from a BigDecimal object.
- *
- * Parses the BigDecimal into a SWIFT amount with truncated zero decimals and mandatory decimal separator.
- *
- * - Example: 1234.00 -> 1234,
- * - Example: 1234 -> 1234,
- * - Example: 1234.56 -> 1234,56
- *
- * @since 9.2.7
- *
- * @param component1 the BigDecimal with the Rate content to set
- * @return the field object to enable build pattern
- */
- public Field37U setComponent1(java.math.BigDecimal component1) {
- setComponent(1, SwiftFormatUtils.getBigDecimal(component1));
- return this;
- }
/**
* Alternative method setter for field's Rate (component 1) as Number
*
@@ -347,7 +324,6 @@ public Field37U setComponent1(java.math.BigDecimal component1) {
*
* @param component1 the Number with the Rate content to set
* @return the field object to enable build pattern
- * @see #setRate(java.math.BigDecimal)
*/
public Field37U setComponent1(java.lang.Number component1) {
@@ -379,19 +355,6 @@ public Field37U setRate(String component1) {
return setComponent1(component1);
}
- /**
- * Set the Rate (component 1) from a BigDecimal object.
- *
- * @see #setComponent1(java.math.BigDecimal)
- *
- * @param component1 BigDecimal with the Rate content to set
- * @return the field object to enable build pattern
- * @since 9.2.7
- */
- public Field37U setRate(java.math.BigDecimal component1) {
- return setComponent1(component1);
- }
-
/**
* Alternative method setter for field's Rate (component 1) as Number
*
@@ -399,7 +362,6 @@ public Field37U setRate(java.math.BigDecimal component1) {
*
* @param component1 the Number with the Rate content to set
* @return the field object to enable build pattern
- * @see #setRate(java.math.BigDecimal)
*/
public Field37U setRate(java.lang.Number component1) {
return setComponent1(component1);
@@ -421,6 +383,7 @@ public List amounts() {
* @return the first amount as BigDecimal value. Can be null
* @see AmountResolver#amount(Field)
*/
+ @Override
public BigDecimal amount() {
return AmountResolver.amount(this);
}
diff --git a/src/main/java/com/prowidesoftware/swift/model/field/Field39D.java b/src/main/java/com/prowidesoftware/swift/model/field/Field39D.java
index afeab6f8..ac3003de 100644
--- a/src/main/java/com/prowidesoftware/swift/model/field/Field39D.java
+++ b/src/main/java/com/prowidesoftware/swift/model/field/Field39D.java
@@ -19,14 +19,11 @@
import com.google.gson.JsonParser;
import com.prowidesoftware.deprecation.ProwideDeprecated;
import com.prowidesoftware.deprecation.TargetYear;
-import com.prowidesoftware.swift.model.*;
+import com.prowidesoftware.swift.model.SwiftMessage;
+import com.prowidesoftware.swift.model.SwiftTagListBlock;
import com.prowidesoftware.swift.model.Tag;
import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
+import java.util.*;
import org.apache.commons.lang3.StringUtils;
/**
@@ -203,11 +200,8 @@ public String getValueDisplay(int component, Locale locale) {
// default format (as is)
return getComponent(11);
}
- if (component == 12) {
- // default format (as is)
- return getComponent(12);
- }
- return null;
+ // default format (as is)
+ return getComponent(12);
}
/**
@@ -942,6 +936,7 @@ public static List getAll(final SwiftTagListBlock block) {
* @return line content or null if not present or if line number is above the expected
* @since 7.7
*/
+ @Override
public String getLine(int line) {
return getLine(line, 0);
}
@@ -955,6 +950,7 @@ public String getLine(int line) {
* @return line content or null if not present or if line number is above the expected
* @since 7.7
*/
+ @Override
public String getLine(int line, int offset) {
Field39D cp = newInstance(this);
return getLine(cp, line, null, offset);
@@ -967,6 +963,7 @@ public String getLine(int line, int offset) {
* @return lines content or empty list if field's value is empty
* @since 7.7
*/
+ @Override
public List getLines() {
return SwiftParseUtils.getLines(getValue());
}
@@ -979,6 +976,7 @@ public List getLines() {
* @return found lines or empty list if lines are not present or the offset is invalid
* @since 7.7
*/
+ @Override
public List getLines(int offset) {
Field39D cp = newInstance(this);
return SwiftParseUtils.getLines(getLine(cp, null, null, offset));
@@ -993,6 +991,7 @@ public List getLines(int offset) {
* @return found lines or empty list if value is empty
* @since 7.7
*/
+ @Override
public List getLinesBetween(int start, int end) {
return getLinesBetween(start, end, 0);
}
@@ -1007,6 +1006,7 @@ public List getLinesBetween(int start, int end) {
* @return found lines or empty list if lines are not present or the offset is invalid
* @since 7.7
*/
+ @Override
public List getLinesBetween(int start, int end, int offset) {
Field39D cp = newInstance(this);
return SwiftParseUtils.getLines(getLine(cp, start, end, offset));