Package com.irurueta.commons
Class PanMaskGenerator
- java.lang.Object
-
- com.irurueta.commons.PanMaskGenerator
-
public class PanMaskGenerator extends java.lang.Object
Class to generate masks for PAN (Personal Account Numbers) of credit cards. Masks can be used on text fields to determine how users can input text, and masks can also be used to display credit card PAN's on the screen being PCI DSS compliant by showing only the last 4 digits of the PAN.
-
-
Field Summary
Fields Modifier and Type Field Description static char
DEFAULT_GROUP_SEPARATOR
Default character to use to separate groups of digits.static char
DEFAULT_MASK_CHAR
Default character to be used to generate masks.
-
Constructor Summary
Constructors Modifier Constructor Description private
PanMaskGenerator()
Constructor.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
generate(CreditCardNetwork network)
Generates a mask having required grouping for text input or PAN masking a credit card number using default group separator and mask characters.static java.lang.String
generate(CreditCardNetwork network, char maskChar)
Generates a mask having required grouping for text input or PAN masking a credit card number using default group separator character.static java.lang.String
generate(CreditCardNetwork network, char maskChar, char separatorChar)
Generates a mask having required grouping for text input or PAN masking a credit card number.private static void
repeatMaskChar(java.lang.StringBuilder builder, char maskChar, int times)
Repeats a mask character the number of provided times and appends it to provided builder.
-
-
-
Field Detail
-
DEFAULT_MASK_CHAR
public static final char DEFAULT_MASK_CHAR
Default character to be used to generate masks.- See Also:
- Constant Field Values
-
DEFAULT_GROUP_SEPARATOR
public static final char DEFAULT_GROUP_SEPARATOR
Default character to use to separate groups of digits.- See Also:
- Constant Field Values
-
-
Method Detail
-
generate
public static java.lang.String generate(CreditCardNetwork network, char maskChar, char separatorChar)
Generates a mask having required grouping for text input or PAN masking a credit card number.- Parameters:
network
- a credit card network to determine grouping format.maskChar
- mask character to use.separatorChar
- group separator character to use.- Returns:
- generated mask.
-
generate
public static java.lang.String generate(CreditCardNetwork network, char maskChar)
Generates a mask having required grouping for text input or PAN masking a credit card number using default group separator character.- Parameters:
network
- a credit card network to determine grouping format.maskChar
- mask character to use.- Returns:
- generated mask.
-
generate
public static java.lang.String generate(CreditCardNetwork network)
Generates a mask having required grouping for text input or PAN masking a credit card number using default group separator and mask characters.- Parameters:
network
- a credit card network to determine grouping format.- Returns:
- generated mask.
-
repeatMaskChar
private static void repeatMaskChar(java.lang.StringBuilder builder, char maskChar, int times)
Repeats a mask character the number of provided times and appends it to provided builder.- Parameters:
builder
- builder where text is added.maskChar
- mask character to use.times
- number of times to repeat mask character.
-
-