GoogleAuthenticatorKey.java
package sk.iway.iwcm.system.googleauth;
/**
* GoogleAuthenticatorKey.java
*
*@Title webjet8
*@Company Interway s.r.o. (www.interway.sk)
*@Copyright Interway s.r.o. (c) 2001-2017
*@author $Author: jeeff mminda $
*@version $Revision: 1.3 $
*@created Date: Jun 5, 2017 9:46:12 AM
*@modified $Date: 2004/08/16 06:26:11 $
*/
import java.util.ArrayList;
import java.util.List;
/**
* This class is a JavaBean used by the GoogleAuthenticator library to represent
* a secret key.
* <p/>
* This class is immutable.
* <p/>
* Instance of this class should only be constructed by the GoogleAuthenticator
* library.
*
* @author Enrico M. Crisostomo
* @version 1.0
* @see GoogleAuthenticator
* @since 1.0
*/
public final class GoogleAuthenticatorKey {
/**
* The secret key in Base32 encoding.
*/
private final String key;
/**
* The verification code at time = 0 (the UNIX epoch).
*/
private final int verificationCode;
/**
* The list of scratch codes.
*/
private final List<Integer> scratchCodes;
/**
* The constructor with package visibility.
*
* @param secretKey the secret key in Base32 encoding.
* @param code the verification code at time = 0 (the UNIX epoch).
* @param scratchCodes the list of scratch codes.
*/
/* package */ GoogleAuthenticatorKey(
String secretKey, int code,
List<Integer> scratchCodes) {
key = secretKey;
verificationCode = code;
this.scratchCodes = new ArrayList<>(scratchCodes);
}
/**
* Get the list of scratch codes.
*
* @return the list of scratch codes.
*/
public List<Integer> getScratchCodes() {
return scratchCodes;
}
/**
* Returns the secret key in Base32 encoding.
*
* @return the secret key in Base32 encoding.
*/
public String getKey() {
return key;
}
/**
* Returns the verification code at time = 0 (the UNIX epoch).
*
* @return the verificationCode at time = 0 (the UNIX epoch).
*/
public int getVerificationCode() {
return verificationCode;
}
}