diff --git a/src/main/java/com/adyen/model/tapi/AccountType.java b/src/main/java/com/adyen/model/tapi/AccountType.java index 78badf92a..56e0c62df 100644 --- a/src/main/java/com/adyen/model/tapi/AccountType.java +++ b/src/main/java/com/adyen/model/tapi/AccountType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Type of cardholder account used for the transaction. Allows a cardholder to select the type of @@ -37,6 +38,8 @@ public enum AccountType { UNIVERSAL("Universal"); + private static final Logger LOG = Logger.getLogger(AccountType.class.getName()); + private String value; AccountType(String value) { @@ -60,6 +63,12 @@ public static AccountType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "AccountType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(AccountType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/Alignment.java b/src/main/java/com/adyen/model/tapi/Alignment.java index 24675faa0..49b688d2d 100644 --- a/src/main/java/com/adyen/model/tapi/Alignment.java +++ b/src/main/java/com/adyen/model/tapi/Alignment.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets Alignment */ public enum Alignment { @@ -25,6 +26,8 @@ public enum Alignment { RIGHT("Right"); + private static final Logger LOG = Logger.getLogger(Alignment.class.getName()); + private String value; Alignment(String value) { @@ -48,6 +51,12 @@ public static Alignment fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "Alignment: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(Alignment.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/CharacterHeight.java b/src/main/java/com/adyen/model/tapi/CharacterHeight.java index 1cfef2678..6b76bc96c 100644 --- a/src/main/java/com/adyen/model/tapi/CharacterHeight.java +++ b/src/main/java/com/adyen/model/tapi/CharacterHeight.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets CharacterHeight */ public enum CharacterHeight { @@ -23,6 +24,8 @@ public enum CharacterHeight { SINGLE_HEIGHT("SingleHeight"); + private static final Logger LOG = Logger.getLogger(CharacterHeight.class.getName()); + private String value; CharacterHeight(String value) { @@ -46,6 +49,12 @@ public static CharacterHeight fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "CharacterHeight: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(CharacterHeight.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/CharacterStyle.java b/src/main/java/com/adyen/model/tapi/CharacterStyle.java index 210417ee0..c5b9c7efb 100644 --- a/src/main/java/com/adyen/model/tapi/CharacterStyle.java +++ b/src/main/java/com/adyen/model/tapi/CharacterStyle.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets CharacterStyle */ public enum CharacterStyle { @@ -25,6 +26,8 @@ public enum CharacterStyle { UNDERLINE("Underline"); + private static final Logger LOG = Logger.getLogger(CharacterStyle.class.getName()); + private String value; CharacterStyle(String value) { @@ -48,6 +51,12 @@ public static CharacterStyle fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "CharacterStyle: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(CharacterStyle.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/CharacterWidth.java b/src/main/java/com/adyen/model/tapi/CharacterWidth.java index 9fbd24ecf..768d4078e 100644 --- a/src/main/java/com/adyen/model/tapi/CharacterWidth.java +++ b/src/main/java/com/adyen/model/tapi/CharacterWidth.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets CharacterWidth */ public enum CharacterWidth { @@ -21,6 +22,8 @@ public enum CharacterWidth { SINGLE_WIDTH("SingleWidth"); + private static final Logger LOG = Logger.getLogger(CharacterWidth.class.getName()); + private String value; CharacterWidth(String value) { @@ -44,6 +47,12 @@ public static CharacterWidth fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "CharacterWidth: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(CharacterWidth.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/Device.java b/src/main/java/com/adyen/model/tapi/Device.java index c76b4a9f3..d2e4f4b55 100644 --- a/src/main/java/com/adyen/model/tapi/Device.java +++ b/src/main/java/com/adyen/model/tapi/Device.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets Device */ public enum Device { @@ -25,6 +26,8 @@ public enum Device { CUSTOMER_INPUT("CustomerInput"); + private static final Logger LOG = Logger.getLogger(Device.class.getName()); + private String value; Device(String value) { @@ -48,6 +51,12 @@ public static Device fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "Device: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(Device.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/DocumentQualifier.java b/src/main/java/com/adyen/model/tapi/DocumentQualifier.java index f79b9c82e..bb2f2ce81 100644 --- a/src/main/java/com/adyen/model/tapi/DocumentQualifier.java +++ b/src/main/java/com/adyen/model/tapi/DocumentQualifier.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets DocumentQualifier */ public enum DocumentQualifier { @@ -29,6 +30,8 @@ public enum DocumentQualifier { VOUCHER("Voucher"); + private static final Logger LOG = Logger.getLogger(DocumentQualifier.class.getName()); + private String value; DocumentQualifier(String value) { @@ -52,6 +55,12 @@ public static DocumentQualifier fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "DocumentQualifier: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(DocumentQualifier.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/ErrorCondition.java b/src/main/java/com/adyen/model/tapi/ErrorCondition.java index 47aeec156..97462f99c 100644 --- a/src/main/java/com/adyen/model/tapi/ErrorCondition.java +++ b/src/main/java/com/adyen/model/tapi/ErrorCondition.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets ErrorCondition */ public enum ErrorCondition { @@ -51,6 +52,8 @@ public enum ErrorCondition { WRONG_PIN("WrongPIN"); + private static final Logger LOG = Logger.getLogger(ErrorCondition.class.getName()); + private String value; ErrorCondition(String value) { @@ -74,6 +77,12 @@ public static ErrorCondition fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "ErrorCondition: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(ErrorCondition.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/EventToNotify.java b/src/main/java/com/adyen/model/tapi/EventToNotify.java index 8419e3285..b251611f7 100644 --- a/src/main/java/com/adyen/model/tapi/EventToNotify.java +++ b/src/main/java/com/adyen/model/tapi/EventToNotify.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Event the POI notifies to the Sale System. Possible values: * **Abort** * **BeginMaintenance** * @@ -59,6 +60,8 @@ public enum EventToNotify { USE_ANOTHER_CARD_FOR_PREAUTH("UseAnotherCardForPreauth"); + private static final Logger LOG = Logger.getLogger(EventToNotify.class.getName()); + private String value; EventToNotify(String value) { @@ -82,6 +85,12 @@ public static EventToNotify fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "EventToNotify: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(EventToNotify.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/GlobalStatus.java b/src/main/java/com/adyen/model/tapi/GlobalStatus.java index 69a4be52f..67d1b3bc3 100644 --- a/src/main/java/com/adyen/model/tapi/GlobalStatus.java +++ b/src/main/java/com/adyen/model/tapi/GlobalStatus.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets GlobalStatus */ public enum GlobalStatus { @@ -25,6 +26,8 @@ public enum GlobalStatus { UNREACHABLE("Unreachable"); + private static final Logger LOG = Logger.getLogger(GlobalStatus.class.getName()); + private String value; GlobalStatus(String value) { @@ -48,6 +51,12 @@ public static GlobalStatus fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "GlobalStatus: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(GlobalStatus.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/IdentificationSupport.java b/src/main/java/com/adyen/model/tapi/IdentificationSupport.java index 8d64be8b0..3d146c6b6 100644 --- a/src/main/java/com/adyen/model/tapi/IdentificationSupport.java +++ b/src/main/java/com/adyen/model/tapi/IdentificationSupport.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Support of the loyalty account identification. Allows knowing where and how you have found the @@ -29,6 +30,8 @@ public enum IdentificationSupport { NO_CARD("NoCard"); + private static final Logger LOG = Logger.getLogger(IdentificationSupport.class.getName()); + private String value; IdentificationSupport(String value) { @@ -52,6 +55,12 @@ public static IdentificationSupport fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "IdentificationSupport: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(IdentificationSupport.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/IdentificationType.java b/src/main/java/com/adyen/model/tapi/IdentificationType.java index 122fccc62..90e9a2b56 100644 --- a/src/main/java/com/adyen/model/tapi/IdentificationType.java +++ b/src/main/java/com/adyen/model/tapi/IdentificationType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets IdentificationType */ public enum IdentificationType { @@ -27,6 +28,8 @@ public enum IdentificationType { PHONE_NUMBER("PhoneNumber"); + private static final Logger LOG = Logger.getLogger(IdentificationType.class.getName()); + private String value; IdentificationType(String value) { @@ -50,6 +53,12 @@ public static IdentificationType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "IdentificationType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(IdentificationType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/InfoQualify.java b/src/main/java/com/adyen/model/tapi/InfoQualify.java index 0c85b4ac4..460bf7cad 100644 --- a/src/main/java/com/adyen/model/tapi/InfoQualify.java +++ b/src/main/java/com/adyen/model/tapi/InfoQualify.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets InfoQualify */ public enum InfoQualify { @@ -37,6 +38,8 @@ public enum InfoQualify { VOUCHER("Voucher"); + private static final Logger LOG = Logger.getLogger(InfoQualify.class.getName()); + private String value; InfoQualify(String value) { @@ -60,6 +63,12 @@ public static InfoQualify fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "InfoQualify: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(InfoQualify.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/InputCommand.java b/src/main/java/com/adyen/model/tapi/InputCommand.java index aee395938..a8a39ba55 100644 --- a/src/main/java/com/adyen/model/tapi/InputCommand.java +++ b/src/main/java/com/adyen/model/tapi/InputCommand.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets InputCommand */ public enum InputCommand { @@ -35,6 +36,8 @@ public enum InputCommand { TEXT_STRING("TextString"); + private static final Logger LOG = Logger.getLogger(InputCommand.class.getName()); + private String value; InputCommand(String value) { @@ -58,6 +61,12 @@ public static InputCommand fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "InputCommand: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(InputCommand.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/InstalmentType.java b/src/main/java/com/adyen/model/tapi/InstalmentType.java index bc789dfeb..602f80b89 100644 --- a/src/main/java/com/adyen/model/tapi/InstalmentType.java +++ b/src/main/java/com/adyen/model/tapi/InstalmentType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Type of instalment transaction. For requesting an instalment payment transaction. Possible @@ -26,6 +27,8 @@ public enum InstalmentType { INEQUAL_INSTALMENTS("InequalInstalments"); + private static final Logger LOG = Logger.getLogger(InstalmentType.class.getName()); + private String value; InstalmentType(String value) { @@ -49,6 +52,12 @@ public static InstalmentType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "InstalmentType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(InstalmentType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/LoyaltyHandling.java b/src/main/java/com/adyen/model/tapi/LoyaltyHandling.java index 4ffd64825..ac06443aa 100644 --- a/src/main/java/com/adyen/model/tapi/LoyaltyHandling.java +++ b/src/main/java/com/adyen/model/tapi/LoyaltyHandling.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets LoyaltyHandling */ public enum LoyaltyHandling { @@ -27,6 +28,8 @@ public enum LoyaltyHandling { REQUIRED("Required"); + private static final Logger LOG = Logger.getLogger(LoyaltyHandling.class.getName()); + private String value; LoyaltyHandling(String value) { @@ -50,6 +53,12 @@ public static LoyaltyHandling fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "LoyaltyHandling: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(LoyaltyHandling.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/MenuEntryTag.java b/src/main/java/com/adyen/model/tapi/MenuEntryTag.java index 1bc52deb8..bd549264b 100644 --- a/src/main/java/com/adyen/model/tapi/MenuEntryTag.java +++ b/src/main/java/com/adyen/model/tapi/MenuEntryTag.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Characteristics related to the selection of a menu entry. Possible values: * **NonSelectable** * @@ -28,6 +29,8 @@ public enum MenuEntryTag { SUB_MENU("SubMenu"); + private static final Logger LOG = Logger.getLogger(MenuEntryTag.class.getName()); + private String value; MenuEntryTag(String value) { @@ -51,6 +54,12 @@ public static MenuEntryTag fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "MenuEntryTag: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(MenuEntryTag.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/MessageCategory.java b/src/main/java/com/adyen/model/tapi/MessageCategory.java index 81a76ab95..d6d652e4d 100644 --- a/src/main/java/com/adyen/model/tapi/MessageCategory.java +++ b/src/main/java/com/adyen/model/tapi/MessageCategory.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets MessageCategory */ public enum MessageCategory { @@ -59,6 +60,8 @@ public enum MessageCategory { TRANSACTION_STATUS("TransactionStatus"); + private static final Logger LOG = Logger.getLogger(MessageCategory.class.getName()); + private String value; MessageCategory(String value) { @@ -82,6 +85,12 @@ public static MessageCategory fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "MessageCategory: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(MessageCategory.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/MessageClass.java b/src/main/java/com/adyen/model/tapi/MessageClass.java index a583906d5..abddf5e86 100644 --- a/src/main/java/com/adyen/model/tapi/MessageClass.java +++ b/src/main/java/com/adyen/model/tapi/MessageClass.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets MessageClass */ public enum MessageClass { @@ -23,6 +24,8 @@ public enum MessageClass { SERVICE("Service"); + private static final Logger LOG = Logger.getLogger(MessageClass.class.getName()); + private String value; MessageClass(String value) { @@ -46,6 +49,12 @@ public static MessageClass fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "MessageClass: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(MessageClass.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/MessageType.java b/src/main/java/com/adyen/model/tapi/MessageType.java index f6aab2916..b8a3788a3 100644 --- a/src/main/java/com/adyen/model/tapi/MessageType.java +++ b/src/main/java/com/adyen/model/tapi/MessageType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets MessageType */ public enum MessageType { @@ -23,6 +24,8 @@ public enum MessageType { RESPONSE("Response"); + private static final Logger LOG = Logger.getLogger(MessageType.class.getName()); + private String value; MessageType(String value) { @@ -46,6 +49,12 @@ public static MessageType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "MessageType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(MessageType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/OutputFormat.java b/src/main/java/com/adyen/model/tapi/OutputFormat.java index 09f364c78..d605a4332 100644 --- a/src/main/java/com/adyen/model/tapi/OutputFormat.java +++ b/src/main/java/com/adyen/model/tapi/OutputFormat.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Format of the content to display or print. Display or print device function. Possible values: * @@ -28,6 +29,8 @@ public enum OutputFormat { XHTML("XHTML"); + private static final Logger LOG = Logger.getLogger(OutputFormat.class.getName()); + private String value; OutputFormat(String value) { @@ -51,6 +54,12 @@ public static OutputFormat fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "OutputFormat: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(OutputFormat.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/PINFormat.java b/src/main/java/com/adyen/model/tapi/PINFormat.java index 21ac1eaba..5b8ed907a 100644 --- a/src/main/java/com/adyen/model/tapi/PINFormat.java +++ b/src/main/java/com/adyen/model/tapi/PINFormat.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets PINFormat */ public enum PINFormat { @@ -25,6 +26,8 @@ public enum PINFormat { ISO3("ISO3"); + private static final Logger LOG = Logger.getLogger(PINFormat.class.getName()); + private String value; PINFormat(String value) { @@ -48,6 +51,12 @@ public static PINFormat fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "PINFormat: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(PINFormat.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/PINRequestType.java b/src/main/java/com/adyen/model/tapi/PINRequestType.java index 4bf856e35..53a751fdb 100644 --- a/src/main/java/com/adyen/model/tapi/PINRequestType.java +++ b/src/main/java/com/adyen/model/tapi/PINRequestType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Type of PIN Service. Possible values: * **PINEnter** * **PINVerify** * **PINVerifyOnly** */ public enum PINRequestType { @@ -23,6 +24,8 @@ public enum PINRequestType { PIN_VERIFY_ONLY("PINVerifyOnly"); + private static final Logger LOG = Logger.getLogger(PINRequestType.class.getName()); + private String value; PINRequestType(String value) { @@ -46,6 +49,12 @@ public static PINRequestType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "PINRequestType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(PINRequestType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/PaymentInstrumentType.java b/src/main/java/com/adyen/model/tapi/PaymentInstrumentType.java index 15e6185df..5ca95760b 100644 --- a/src/main/java/com/adyen/model/tapi/PaymentInstrumentType.java +++ b/src/main/java/com/adyen/model/tapi/PaymentInstrumentType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets PaymentInstrumentType */ public enum PaymentInstrumentType { @@ -27,6 +28,8 @@ public enum PaymentInstrumentType { STORED_VALUE("StoredValue"); + private static final Logger LOG = Logger.getLogger(PaymentInstrumentType.class.getName()); + private String value; PaymentInstrumentType(String value) { @@ -50,6 +53,12 @@ public static PaymentInstrumentType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "PaymentInstrumentType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(PaymentInstrumentType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/PaymentType.java b/src/main/java/com/adyen/model/tapi/PaymentType.java index ac1dbecd0..d38e27075 100644 --- a/src/main/java/com/adyen/model/tapi/PaymentType.java +++ b/src/main/java/com/adyen/model/tapi/PaymentType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets PaymentType */ public enum PaymentType { @@ -41,6 +42,8 @@ public enum PaymentType { UPDATE_RESERVATION("UpdateReservation"); + private static final Logger LOG = Logger.getLogger(PaymentType.class.getName()); + private String value; PaymentType(String value) { @@ -64,6 +67,12 @@ public static PaymentType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "PaymentType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(PaymentType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/PeriodUnit.java b/src/main/java/com/adyen/model/tapi/PeriodUnit.java index e6305009f..2efe0070d 100644 --- a/src/main/java/com/adyen/model/tapi/PeriodUnit.java +++ b/src/main/java/com/adyen/model/tapi/PeriodUnit.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Type of instalment transaction. Possible values: * **Annual** * **Daily** * **Monthly** * @@ -28,6 +29,8 @@ public enum PeriodUnit { WEEKLY("Weekly"); + private static final Logger LOG = Logger.getLogger(PeriodUnit.class.getName()); + private String value; PeriodUnit(String value) { @@ -51,6 +54,12 @@ public static PeriodUnit fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "PeriodUnit: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(PeriodUnit.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/PrinterStatus.java b/src/main/java/com/adyen/model/tapi/PrinterStatus.java index a892c35d9..24278ef57 100644 --- a/src/main/java/com/adyen/model/tapi/PrinterStatus.java +++ b/src/main/java/com/adyen/model/tapi/PrinterStatus.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Indicates if the printer is working and usable. Possible values: * **NoPaper** * **OK** * @@ -30,6 +31,8 @@ public enum PrinterStatus { PAPER_LOW("PaperLow"); + private static final Logger LOG = Logger.getLogger(PrinterStatus.class.getName()); + private String value; PrinterStatus(String value) { @@ -53,6 +56,12 @@ public static PrinterStatus fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "PrinterStatus: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(PrinterStatus.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/ReconciliationType.java b/src/main/java/com/adyen/model/tapi/ReconciliationType.java index 32d66e482..a88daba12 100644 --- a/src/main/java/com/adyen/model/tapi/ReconciliationType.java +++ b/src/main/java/com/adyen/model/tapi/ReconciliationType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets ReconciliationType */ public enum ReconciliationType { @@ -25,6 +26,8 @@ public enum ReconciliationType { SALE_RECONCILIATION("SaleReconciliation"); + private static final Logger LOG = Logger.getLogger(ReconciliationType.class.getName()); + private String value; ReconciliationType(String value) { @@ -48,6 +51,12 @@ public static ReconciliationType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "ReconciliationType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(ReconciliationType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/ResponseMode.java b/src/main/java/com/adyen/model/tapi/ResponseMode.java index e5008e34e..80dda8004 100644 --- a/src/main/java/com/adyen/model/tapi/ResponseMode.java +++ b/src/main/java/com/adyen/model/tapi/ResponseMode.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets ResponseMode */ public enum ResponseMode { @@ -25,6 +26,8 @@ public enum ResponseMode { SOUND_END("SoundEnd"); + private static final Logger LOG = Logger.getLogger(ResponseMode.class.getName()); + private String value; ResponseMode(String value) { @@ -48,6 +51,12 @@ public static ResponseMode fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "ResponseMode: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(ResponseMode.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/Result.java b/src/main/java/com/adyen/model/tapi/Result.java index b1e9299c4..908ef6bc1 100644 --- a/src/main/java/com/adyen/model/tapi/Result.java +++ b/src/main/java/com/adyen/model/tapi/Result.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets Result */ public enum Result { @@ -23,6 +24,8 @@ public enum Result { SUCCESS("Success"); + private static final Logger LOG = Logger.getLogger(Result.class.getName()); + private String value; Result(String value) { @@ -46,6 +49,12 @@ public static Result fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "Result: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(Result.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/ReversalReason.java b/src/main/java/com/adyen/model/tapi/ReversalReason.java index 9eeaa6782..434a3e232 100644 --- a/src/main/java/com/adyen/model/tapi/ReversalReason.java +++ b/src/main/java/com/adyen/model/tapi/ReversalReason.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Reason of the payment or loyalty reversal. Possible values: * **CustCancel** * **Malfunction** * @@ -28,6 +29,8 @@ public enum ReversalReason { UNABLE2_COMPL("Unable2Compl"); + private static final Logger LOG = Logger.getLogger(ReversalReason.class.getName()); + private String value; ReversalReason(String value) { @@ -51,6 +54,12 @@ public static ReversalReason fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "ReversalReason: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(ReversalReason.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/SoundAction.java b/src/main/java/com/adyen/model/tapi/SoundAction.java index c30b8cf59..b8811f1df 100644 --- a/src/main/java/com/adyen/model/tapi/SoundAction.java +++ b/src/main/java/com/adyen/model/tapi/SoundAction.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets SoundAction */ public enum SoundAction { @@ -23,6 +24,8 @@ public enum SoundAction { STOP_SOUND("StopSound"); + private static final Logger LOG = Logger.getLogger(SoundAction.class.getName()); + private String value; SoundAction(String value) { @@ -46,6 +49,12 @@ public static SoundAction fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "SoundAction: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(SoundAction.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/SoundFormat.java b/src/main/java/com/adyen/model/tapi/SoundFormat.java index a79ccd74b..f4fe6def9 100644 --- a/src/main/java/com/adyen/model/tapi/SoundFormat.java +++ b/src/main/java/com/adyen/model/tapi/SoundFormat.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets SoundFormat */ public enum SoundFormat { @@ -23,6 +24,8 @@ public enum SoundFormat { TEXT("Text"); + private static final Logger LOG = Logger.getLogger(SoundFormat.class.getName()); + private String value; SoundFormat(String value) { @@ -46,6 +49,12 @@ public static SoundFormat fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "SoundFormat: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(SoundFormat.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/StoredValueAccountType.java b/src/main/java/com/adyen/model/tapi/StoredValueAccountType.java index 065d8f00e..437ad2f90 100644 --- a/src/main/java/com/adyen/model/tapi/StoredValueAccountType.java +++ b/src/main/java/com/adyen/model/tapi/StoredValueAccountType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets StoredValueAccountType */ public enum StoredValueAccountType { @@ -23,6 +24,8 @@ public enum StoredValueAccountType { PHONE_CARD("PhoneCard"); + private static final Logger LOG = Logger.getLogger(StoredValueAccountType.class.getName()); + private String value; StoredValueAccountType(String value) { @@ -46,6 +49,12 @@ public static StoredValueAccountType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "StoredValueAccountType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(StoredValueAccountType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/StoredValueTransactionType.java b/src/main/java/com/adyen/model/tapi/StoredValueTransactionType.java index 7b784e89c..5a5e9e853 100644 --- a/src/main/java/com/adyen/model/tapi/StoredValueTransactionType.java +++ b/src/main/java/com/adyen/model/tapi/StoredValueTransactionType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets StoredValueTransactionType */ public enum StoredValueTransactionType { @@ -29,6 +30,8 @@ public enum StoredValueTransactionType { UNLOAD("Unload"); + private static final Logger LOG = Logger.getLogger(StoredValueTransactionType.class.getName()); + private String value; StoredValueTransactionType(String value) { @@ -52,6 +55,12 @@ public static StoredValueTransactionType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "StoredValueTransactionType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(StoredValueTransactionType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/TokenRequestedType.java b/src/main/java/com/adyen/model/tapi/TokenRequestedType.java index 985b98ad4..c0f9174e4 100644 --- a/src/main/java/com/adyen/model/tapi/TokenRequestedType.java +++ b/src/main/java/com/adyen/model/tapi/TokenRequestedType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Type of token replacing the PAN of a payment card to identify the payment mean of the customer. @@ -25,6 +26,8 @@ public enum TokenRequestedType { TRANSACTION("Transaction"); + private static final Logger LOG = Logger.getLogger(TokenRequestedType.class.getName()); + private String value; TokenRequestedType(String value) { @@ -48,6 +51,12 @@ public static TokenRequestedType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "TokenRequestedType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(TokenRequestedType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/TrackFormat.java b/src/main/java/com/adyen/model/tapi/TrackFormat.java index 4fcdd182e..5485699a6 100644 --- a/src/main/java/com/adyen/model/tapi/TrackFormat.java +++ b/src/main/java/com/adyen/model/tapi/TrackFormat.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Magnetic track or magnetic ink characters line. Possible values: * **AAMVA** * **ISO** */ public enum TrackFormat { @@ -21,6 +22,8 @@ public enum TrackFormat { ISO("ISO"); + private static final Logger LOG = Logger.getLogger(TrackFormat.class.getName()); + private String value; TrackFormat(String value) { @@ -44,6 +47,12 @@ public static TrackFormat fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "TrackFormat: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(TrackFormat.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/TransactionAction.java b/src/main/java/com/adyen/model/tapi/TransactionAction.java index 51d709b85..ff4975cfd 100644 --- a/src/main/java/com/adyen/model/tapi/TransactionAction.java +++ b/src/main/java/com/adyen/model/tapi/TransactionAction.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** * Action to realise on a transaction. In an `EnableService` request message: - Starts a @@ -27,6 +28,8 @@ public enum TransactionAction { START_TRANSACTION("StartTransaction"); + private static final Logger LOG = Logger.getLogger(TransactionAction.class.getName()); + private String value; TransactionAction(String value) { @@ -50,6 +53,12 @@ public static TransactionAction fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "TransactionAction: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(TransactionAction.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/TransactionType.java b/src/main/java/com/adyen/model/tapi/TransactionType.java index 33f5e8e22..b492f2394 100644 --- a/src/main/java/com/adyen/model/tapi/TransactionType.java +++ b/src/main/java/com/adyen/model/tapi/TransactionType.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets TransactionType */ public enum TransactionType { @@ -55,6 +56,8 @@ public enum TransactionType { UPDATE_RESERVATION("UpdateReservation"); + private static final Logger LOG = Logger.getLogger(TransactionType.class.getName()); + private String value; TransactionType(String value) { @@ -78,6 +81,12 @@ public static TransactionType fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "TransactionType: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(TransactionType.values())); + return null; } } diff --git a/src/main/java/com/adyen/model/tapi/TypeCode.java b/src/main/java/com/adyen/model/tapi/TypeCode.java index 649dd6519..c1992f925 100644 --- a/src/main/java/com/adyen/model/tapi/TypeCode.java +++ b/src/main/java/com/adyen/model/tapi/TypeCode.java @@ -14,6 +14,7 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import java.util.*; +import java.util.logging.Logger; /** Gets or Sets TypeCode */ public enum TypeCode { @@ -21,6 +22,8 @@ public enum TypeCode { PERSONAL("Personal"); + private static final Logger LOG = Logger.getLogger(TypeCode.class.getName()); + private String value; TypeCode(String value) { @@ -44,6 +47,12 @@ public static TypeCode fromValue(String value) { return b; } } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); + // handling unexpected value + LOG.warning( + "TypeCode: unexpected enum value '" + + value + + "' - Supported values are " + + Arrays.toString(TypeCode.values())); + return null; } } diff --git a/src/main/java/com/adyen/service/clouddevice/CloudDeviceApi.java b/src/main/java/com/adyen/service/clouddevice/CloudDeviceApi.java index ebe14ebb2..9de3ea1c3 100644 --- a/src/main/java/com/adyen/service/clouddevice/CloudDeviceApi.java +++ b/src/main/java/com/adyen/service/clouddevice/CloudDeviceApi.java @@ -3,6 +3,7 @@ import com.adyen.Client; import com.adyen.Service; import com.adyen.constants.ApiConstants; +import com.adyen.model.RequestOptions; import com.adyen.model.clouddevice.*; import com.adyen.model.clouddevice.CloudDeviceApiAsyncResponse; import com.adyen.service.exception.ApiException; @@ -139,11 +140,11 @@ public CloudDeviceApiAsyncResponse async( } /** - * Get a list of connected devices for a merchant account. + * Get a list of connected devices * - * @param merchantAccount The unique identifier of the merchant account. - * @return An instance of ConnectedDevicesResponse. - * @throws ApiException when an error occurs + * @param merchantAccount {@link String } The unique identifier of the merchant account. (required) + * @return {@link ConnectedDevicesResponse } + * @throws ApiException if fails to make API call */ public ConnectedDevicesResponse getConnectedDevices(String merchantAccount) throws ApiException, IOException { @@ -151,12 +152,13 @@ public ConnectedDevicesResponse getConnectedDevices(String merchantAccount) } /** - * Get a list of connected devices for a merchant account and store. + * Get a list of connected devices * - * @param merchantAccount The unique identifier of the merchant account. - * @param store The unique identifier of the store. - * @return An instance of ConnectedDevicesResponse. - * @throws ApiException when an error occurs + * @param merchantAccount {@link String } The unique identifier of the merchant account. (required) + * @param store {@link String } Query: The store ID of the store belonging to the merchant account + * specified in the path. (optional) + * @return {@link ConnectedDevicesResponse } + * @throws ApiException if fails to make API call */ public ConnectedDevicesResponse getConnectedDevices(String merchantAccount, String store) throws ApiException, IOException { @@ -168,18 +170,19 @@ public ConnectedDevicesResponse getConnectedDevices(String merchantAccount, Stri } pathParams.put("merchantAccount", merchantAccount); - Map queryParams = null; + // Add query params + Map queryParams = new HashMap<>(); if (store != null) { - queryParams = new HashMap<>(); queryParams.put("store", store); } + String requestBody = null; Resource resource = new Resource(this, this.baseURL + "/merchants/{merchantAccount}/connectedDevices", null); - String response = - resource.request(null, null, ApiConstants.HttpMethod.GET, pathParams, queryParams); + String jsonResult = + resource.request(requestBody, null, ApiConstants.HttpMethod.GET, pathParams, queryParams); - return ConnectedDevicesResponse.fromJson(response); + return ConnectedDevicesResponse.fromJson(jsonResult); } /** diff --git a/src/test/java/com/adyen/serializer/ModelTest.java b/src/test/java/com/adyen/serializer/ModelTest.java index 9d9a98245..b7fe44a90 100644 --- a/src/test/java/com/adyen/serializer/ModelTest.java +++ b/src/test/java/com/adyen/serializer/ModelTest.java @@ -12,9 +12,17 @@ import com.adyen.model.legalentitymanagement.*; import com.adyen.model.management.Connectivity; import com.adyen.model.management.TerminalSettings; +import com.adyen.model.tapi.PaymentRequest; +import com.adyen.model.tapi.PaymentResponse; +import com.adyen.model.tapi.Response; +import com.adyen.model.tapi.Result; +import com.adyen.model.tapi.SaleData; +import com.adyen.model.tapi.TransactionIDType; import com.fasterxml.jackson.core.JsonProcessingException; import java.time.Month; +import java.time.OffsetDateTime; import java.time.ZoneId; +import java.time.ZoneOffset; import org.junit.jupiter.api.Test; /** Test model serialization (toJson) and deserialization (fromJson) */ @@ -198,6 +206,101 @@ public void testFromJsonCheckoutPaymentMethodBcmcMobile() throws Exception { assertEquals("7219687191761347", storedPaymentMethodDetails.getStoredPaymentMethodId()); } + @Test + public void testTapiTimestampDeserialization() throws JsonProcessingException { + String json = + "{" + + "\"Response\":{\"Result\":\"Success\"}," + + "\"SaleData\":{" + + " \"SaleTransactionID\":{" + + " \"TransactionID\":\"txn-001\"," + + " \"TimeStamp\":\"2024-01-15T10:30:00+01:00\"" + + " }" + + "}," + + "\"POIData\":{" + + " \"POITransactionID\":{" + + " \"TransactionID\":\"poi-txn-001\"," + + " \"TimeStamp\":\"2024-01-15T10:30:05+01:00\"" + + " }" + + "}" + + "}"; + + PaymentResponse response = PaymentResponse.fromJson(json); + + assertNotNull(response); + assertEquals(Result.SUCCESS, response.getResponse().getResult()); + + OffsetDateTime saleTimestamp = response.getSaleData().getSaleTransactionID().getTimeStamp(); + assertNotNull(saleTimestamp); + assertEquals(2024, saleTimestamp.getYear()); + assertEquals(Month.JANUARY, saleTimestamp.getMonth()); + assertEquals(15, saleTimestamp.getDayOfMonth()); + assertEquals(10, saleTimestamp.getHour()); + assertEquals(30, saleTimestamp.getMinute()); + assertEquals(ZoneOffset.of("+01:00"), saleTimestamp.getOffset()); + + OffsetDateTime poiTimestamp = response.getPoiData().getPoITransactionID().getTimeStamp(); + assertNotNull(poiTimestamp); + assertEquals(5, poiTimestamp.getSecond()); + } + + @Test + public void testTapiTimestampSerialization() throws JsonProcessingException { + OffsetDateTime timestamp = + OffsetDateTime.of(2024, 1, 15, 10, 30, 0, 0, ZoneOffset.of("+01:00")); + + PaymentRequest request = + new PaymentRequest() + .saleData( + new SaleData() + .saleTransactionID( + new TransactionIDType().transactionID("txn-001").timeStamp(timestamp))); + + String json = request.toJson(); + + assertNotNull(json); + assertTrue(json.contains("\"TimeStamp\":\"2024-01-15T10:30:00+01:00\"")); + assertTrue(json.contains("\"TransactionID\":\"txn-001\"")); + } + + @Test + public void testTapiPaymentResponseWithUnknownAttribute() throws JsonProcessingException { + String json = + "{" + + "\"Response\":{\"Result\":\"Success\"}," + + "\"UnknownField\":\"someValue\"," + + "\"SaleData\":{" + + " \"SaleTransactionID\":{" + + " \"TransactionID\":\"txn-001\"," + + " \"TimeStamp\":\"2024-01-15T10:30:00+01:00\"," + + " \"UnknownNestedField\":123" + + " }" + + "}" + + "}"; + + PaymentResponse response = PaymentResponse.fromJson(json); + + assertNotNull(response); + assertEquals(Result.SUCCESS, response.getResponse().getResult()); + assertEquals("txn-001", response.getSaleData().getSaleTransactionID().getTransactionID()); + } + + // test unknown enum value for tapi model + @Test + public void testFromJsonTapiResponseWithInvalidEnum() throws JsonProcessingException { + String json = + "{\n" + + " \"Result\": \"UNKNOWN_RESULT\",\n" + + " \"AdditionalResponse\": \"some info\"\n" + + "}"; + + Response response = Response.fromJson(json); + + assertNotNull(response); + assertEquals("some info", response.getAdditionalResponse()); + assertNull(response.getResult()); + } + // test null values are not serialized @Test public void testToJsonTerminalSettingsSurchargeNotSet() throws JsonProcessingException { @@ -262,4 +365,9 @@ public void testToJsonFlagTrueButFieldNotSet() throws JsonProcessingException { // It should only be present if we called setSurcharge(). assertEquals("{\"connectivity\":{\"simcardStatus\":\"ACTIVATED\"}}", json); } + + @Test + public void testTapiEnumFromValueNull() { + assertNull(Result.fromValue(null)); + } } diff --git a/src/test/java/com/adyen/service/clouddevice/CloudDeviceApiTest.java b/src/test/java/com/adyen/service/clouddevice/CloudDeviceApiTest.java index 8f768252d..68d72f775 100644 --- a/src/test/java/com/adyen/service/clouddevice/CloudDeviceApiTest.java +++ b/src/test/java/com/adyen/service/clouddevice/CloudDeviceApiTest.java @@ -175,7 +175,7 @@ public void getConnectedDevices() throws Exception { false, null, ApiConstants.HttpMethod.GET, - null); + Map.of()); } @Test diff --git a/templates-v7/libraries/jersey3/modelEnum.mustache b/templates-v7/libraries/jersey3/modelEnum.mustache new file mode 100644 index 000000000..95b20c94e --- /dev/null +++ b/templates-v7/libraries/jersey3/modelEnum.mustache @@ -0,0 +1,124 @@ +{{#jackson}} +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; +{{/jackson}} +{{#gson}} +import java.io.IOException; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +{{/gson}} +{{#isUri}} +import java.net.URI; +{{/isUri}} + +/** + * {{description}}{{^description}}Gets or Sets {{{name}}}{{/description}} + */ +{{#gson}} +@JsonAdapter({{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}.Adapter.class) +{{/gson}} +{{#jsonb}} +@JsonbTypeSerializer({{datatypeWithEnum}}.Serializer.class) +@JsonbTypeDeserializer({{datatypeWithEnum}}.Deserializer.class) +{{/jsonb}} +{{>additionalEnumTypeAnnotations}}public enum {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} { +{{#allowableValues}}{{#enumVars}} +{{#enumDescription}} + /** + * {{.}} + */ +{{/enumDescription}} +{{#withXml}} + @XmlEnumValue({{#isInteger}}"{{/isInteger}}{{#isDouble}}"{{/isDouble}}{{#isLong}}"{{/isLong}}{{#isFloat}}"{{/isFloat}}{{{value}}}{{#isInteger}}"{{/isInteger}}{{#isDouble}}"{{/isDouble}}{{#isLong}}"{{/isLong}}{{#isFloat}}"{{/isFloat}}) +{{/withXml}} + {{{name}}}({{{value}}}){{^-last}}, +{{/-last}}{{#-last}};{{/-last}}{{/enumVars}}{{/allowableValues}} + + private static final Logger LOG = Logger.getLogger({{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}.class.getName()); + + private {{{dataType}}} value; + + {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}({{{dataType}}} value) { + this.value = value; + } + +{{#jackson}} + @JsonValue +{{/jackson}} + public {{{dataType}}} getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + +{{#jackson}} + @JsonCreator +{{/jackson}} + public static {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} fromValue({{{dataType}}} value) { + for ({{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} b : {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}.values()) { + if (b.value.{{^isString}}equals{{/isString}}{{#isString}}{{#useEnumCaseInsensitive}}equalsIgnoreCase{{/useEnumCaseInsensitive}}{{^useEnumCaseInsensitive}}equals{{/useEnumCaseInsensitive}}{{/isString}}(value)) { + return b; + } + } + // handling unexpected value + LOG.warning("{{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{classname}}{{/datatypeWithEnum}}: unexpected enum value '" + value + "' - Supported values are " + Arrays.toString({{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{classname}}{{/datatypeWithEnum}}.values())); + return null; + } +{{#gson}} + + public static class Adapter extends TypeAdapter<{{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}> { + @Override + public void write(final JsonWriter jsonWriter, final {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} enumeration) throws IOException { + jsonWriter.value(enumeration.getValue(){{#isUri}}.toASCIIString(){{/isUri}}); + } + + @Override + public {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} read(final JsonReader jsonReader) throws IOException { + {{^isNumber}}{{{dataType}}}{{/isNumber}}{{#isNumber}}String{{/isNumber}} value = {{#isFloat}}(float){{/isFloat}}{{#isUri}}URI.create({{/isUri}}jsonReader.{{#isNumber}}nextString(){{/isNumber}}{{#isInteger}}nextInt(){{/isInteger}}{{#isUri}}nextString()){{/isUri}}{{^isNumber}}{{^isInteger}}{{^isUri}}{{#isFloat}}nextDouble{{/isFloat}}{{^isFloat}}next{{{dataType}}}{{/isFloat}}(){{/isUri}}{{/isInteger}}{{/isNumber}}; + return {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{classname}}{{/datatypeWithEnum}}.fromValue({{#isNumber}}new BigDecimal({{/isNumber}}value{{#isNumber}}){{/isNumber}}); + } + } +{{/gson}} +{{#jsonb}} + + public static final class Deserializer implements JsonbDeserializer<{{datatypeWithEnum}}> { + @Override + public {{datatypeWithEnum}} deserialize(JsonParser parser, DeserializationContext ctx, Type rtType) { + for ({{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}} b : {{{datatypeWithEnum}}}{{^datatypeWithEnum}}{{{classname}}}{{/datatypeWithEnum}}.values()) { + if (String.valueOf(b.value).equals(parser.getString())) { + return b; + } + } + return null; + } + } + + public static final class Serializer implements JsonbSerializer<{{datatypeWithEnum}}> { + @Override + public void serialize({{datatypeWithEnum}} obj, JsonGenerator generator, SerializationContext ctx) { + generator.write(obj.value); + } + } +{{/jsonb}} +{{#supportUrlQuery}} + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +{{/supportUrlQuery}} +}