Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

CreditCard.java

Go to the documentation of this file.
00001 package net.threebit.utils.sosc ; 
00002 
00007 public abstract class CreditCard extends Validatable { 
00008 
00017         protected CreditCard(final String num, final String typ) {
00018                 super(num, typ);
00019         }
00020 
00029         protected boolean checkDigits(final int[] digits) {
00030                 int sumEven;
00031                 int sumOdd;
00032                 int sum;
00033 
00034                 sumEven = 0;
00035                 sumOdd = 0;
00036                 sum = 0;         
00037 
00038                 for (int i = (number.length() - 2); i >= 0; i--) {
00043                         if ((((number.length() - 2) - i) % 2) == 0) {
00044                                 sumEven += Utils.add(digits[i] * 2);
00045                         }
00046                         else {
00047                                 sumOdd += digits[i];
00048                         }
00049                 }
00050 
00051                 sum = sumEven + sumOdd;
00052 
00053                 while ((sum % 10) != 0) {
00054                         sum++;
00055                 }
00056 
00057                 if ((sum - (sumEven + sumOdd)) == digits[number.length() - 1]) {
00058                         return(true);
00059                 }
00060                 return (false);
00061         }
00062 }

Generated on Mon Jul 14 17:19:19 2003 for SOSC by doxygen1.2.15