Payment Processor
Payment Processor example using Strategy Pattern
@Getter
public enum PaymentType {
ACCOUNT_TO_ACCOUNT(Constant.ACCOUNT_TO_ACCOUNT),
ACCOUNT_TO_WALLET(Constant.ACCOUNT_TO_WALLET),
WALLET_TO_WALLET(Constant.WALLET_TO_WALLET),
LOCAL_TRANSFER(Constant.LOCAL_TRANSFER),
INTERNATIONAL_TRANSFER(Constant.INTERNATIONAL_TRANSFER),
CASH(Constant.CASH),
INTERNAL_TRANSFER(Constant.INTERNAL_TRANSFER);
private final String value;
private PaymentType(String type) {
this.value = type;
}
public class Constant {
public static final String ACCOUNT_TO_ACCOUNT = "ACCOUNT_TO_ACCOUNT";
public static final String ACCOUNT_TO_WALLET = "ACCOUNT_TO_WALLET";
public static final String WALLET_TO_WALLET = "WALLET_TO_WALLET";
public static final String LOCAL_TRANSFER = "LOCAL_TRANSFER";
public static final String INTERNATIONAL_TRANSFER = "INTERNATIONAL_TRANSFER";
public static final String CASH = "CASH";
public static final String INTERNAL_TRANSFER = "INTERNAL_TRANSFER";
}
}


Last updated