Checks to see if the cc number is a valid number for the specified type @param cardType - a string representing the credit card type @param cardNumberPassed - a string representing a credit card number @return true, if the credit card number is valid for the particular credit card type
(String cardType, String cardNumberPassed)
| 1043 | * @return true, if the credit card number is valid for the particular credit card type given in "cardType", false otherwise |
| 1044 | */ |
| 1045 | public static boolean isCardMatch(String cardType, String cardNumberPassed) { |
| 1046 | if (isEmpty(cardType)) return defaultEmptyOK; |
| 1047 | if (isEmpty(cardNumberPassed)) return defaultEmptyOK; |
| 1048 | String cardNumber = stripCharsInBag(cardNumberPassed, creditCardDelimiters); |
| 1049 | |
| 1050 | if ((cardType.equalsIgnoreCase("VISA")) && (isVisa(cardNumber))) return true; |
| 1051 | if ((cardType.equalsIgnoreCase("MASTERCARD")) && (isMasterCard(cardNumber))) return true; |
| 1052 | if (((cardType.equalsIgnoreCase("AMERICANEXPRESS")) || (cardType.equalsIgnoreCase("AMEX"))) && (isAmericanExpress(cardNumber))) return true; |
| 1053 | if ((cardType.equalsIgnoreCase("DISCOVER")) && (isDiscover(cardNumber))) return true; |
| 1054 | if ((cardType.equalsIgnoreCase("JCB")) && (isJCB(cardNumber))) return true; |
| 1055 | if (((cardType.equalsIgnoreCase("DINERSCLUB")) || (cardType.equalsIgnoreCase("DINERS"))) && (isDinersClub(cardNumber))) return true; |
| 1056 | if ((cardType.equalsIgnoreCase("CARTEBLANCHE")) && (isCarteBlanche(cardNumber))) return true; |
| 1057 | if ((cardType.equalsIgnoreCase("ENROUTE")) && (isEnRoute(cardNumber))) return true; |
| 1058 | return false; |
| 1059 | } |
| 1060 | |
| 1061 | |
| 1062 | /** isNotPoBox returns true if address argument does not contain anything that looks like a a PO Box. */ |
nothing calls this directly
no test coverage detected