package eu.tpmusielak.securephoto.verification.geo;
import eu.tpmusielak.securephoto.verification.VerificationFactorData;
import java.io.Serializable;
import java.nio.ByteBuffer;
/**
* Created by IntelliJ IDEA.
* User: Tomasz P. Musielak
* Date: 30/03/12
* Time: 18:44
*/
public class CellularData implements VerificationFactorData, Serializable {
public final int cid; // Cell ID
public final int lac; // Location Area Code
public final int mcc; // Mobile Country Code
public final int mnc; // Mobile Network Code
public final String simSerialNumber;
public final byte[] dataHash;
public CellularData(int cid, int lac, int mcc, int mnc, String simSerialNumber) {
this.cid = cid;
this.lac = lac;
this.mcc = mcc;
this.mnc = mnc;
this.simSerialNumber = simSerialNumber;
dataHash = ByteBuffer.allocate(4 * 4).putInt(cid).putInt(lac).putInt(mcc).putInt(mnc).array();
}
@Override
public byte[] getHash() {
return dataHash;
}
@Override
public String toString() {
final String format = "Cellular Data:\n" +
" SIM Serial: %s\n" +
" Cell ID: %d\n" +
" Location Area Code: %d\n" +
" Mobile Country Code: %d\n" +
" Mobile Network Code: %d";
return String.format(format, simSerialNumber, cid, lac, mcc, mnc);
}
}