001: /*************************************************************************
002: * *
003: * EJBCA: The OpenSource Certificate Authority *
004: * *
005: * This software is free software; you can redistribute it and/or *
006: * modify it under the terms of the GNU Lesser General Public *
007: * License as published by the Free Software Foundation; either *
008: * version 2.1 of the License, or any later version. *
009: * *
010: * See terms of license at gnu.org. *
011: * *
012: *************************************************************************/package org.ejbca.core.model.hardtoken.types;
013:
014: import org.ejbca.core.model.SecConst;
015:
016: /**
017: * SwedishEIDHardToken is a class defining data stored in database for a Swedish EID token.
018: *
019: * @version $Id: SwedishEIDHardToken.java,v 1.4 2007/04/13 06:15:20 herrvendil Exp $
020: */
021: public class SwedishEIDHardToken extends HardToken {
022: /**
023: * Determines if a de-serialized file is compatible with this class.
024: *
025: * Maintainers must change this value if and only if the new version
026: * of this class is not compatible with old versions. See Sun docs
027: * for <a href=http://java.sun.com/products/jdk/1.1/docs/guide
028: * /serialization/spec/version.doc.html> details. </a>
029: *
030: */
031: private static final long serialVersionUID = 5695294040446656470L;
032:
033: // Public Constants
034: public static final int THIS_TOKENTYPE = SecConst.TOKEN_SWEDISHEID;
035:
036: public static final String INITIALAUTHENCPIN = "INITIALAUTHENCPIN";
037: public static final String AUTHENCPUK = "AUTHENCPUK";
038: public static final String INITIALSIGNATUREPIN = "INITIALSIGNATUREPIN";
039: public static final String SIGNATUREPUK = "SIGNATUREPUK";
040:
041: public static final String[] FIELDSWITHPUK = new String[] {
042: INITIALAUTHENCPIN, AUTHENCPUK, EMPTYROW_FIELD,
043: INITIALSIGNATUREPIN, SIGNATUREPUK };
044: public static final int[] DATATYPESWITHPUK = new int[] { STRING,
045: STRING, EMPTYROW, STRING, STRING };
046: public static final String[] FIELDTEXTSWITHPUK = new String[] {
047: INITIALAUTHENCPIN, AUTHENCPUK, EMPTYROW_FIELD,
048: INITIALSIGNATUREPIN, SIGNATUREPUK };
049:
050: public static final String[] FIELDSWITHOUTPUK = new String[] {};
051: public static final int[] DATATYPESWITHOUTPUK = new int[] {};
052: public static final String[] FIELDTEXTSWITHOUTPUK = new String[] {};
053:
054: // Public Methods
055: /** Constructor to use. */
056: public SwedishEIDHardToken(String initialauthencpin,
057: String authencpuk, String initialsignaturepin,
058: String signaturepuk, int hardtokenprofileid) {
059: super (true);
060: setInitialAuthEncPIN(initialauthencpin);
061: setAuthEncPUK(authencpuk);
062: setInitialSignaturePIN(initialsignaturepin);
063: setSignaturePUK(signaturepuk);
064: setTokenProfileId(hardtokenprofileid);
065:
066: data.put(TOKENTYPE, new Integer(THIS_TOKENTYPE));
067: }
068:
069: /** Constructor only to be used internally. */
070: public SwedishEIDHardToken(boolean includePUK) {
071: super (includePUK);
072: data.put(TOKENTYPE, new Integer(THIS_TOKENTYPE));
073: if (!includePUK) {
074: setInitialAuthEncPIN("");
075: setAuthEncPUK("");
076: setInitialSignaturePIN("");
077: setSignaturePUK("");
078: }
079: }
080:
081: // Public Methods.
082: public String getInitialAuthEncPIN() {
083: return (String) data.get(INITIALAUTHENCPIN);
084: }
085:
086: public void setInitialAuthEncPIN(String initialbasicpin) {
087: data.put(INITIALAUTHENCPIN, initialbasicpin);
088: }
089:
090: public String getAuthEncPUK() {
091: return (String) data.get(AUTHENCPUK);
092: }
093:
094: public void setAuthEncPUK(String basicpuk) {
095: data.put(AUTHENCPUK, basicpuk);
096: }
097:
098: public String getInitialSignaturePIN() {
099: return (String) data.get(INITIALSIGNATUREPIN);
100: }
101:
102: public void setInitialSignaturePIN(String initialsignaturepin) {
103: data.put(INITIALSIGNATUREPIN, initialsignaturepin);
104: }
105:
106: public String getSignaturePUK() {
107: return (String) data.get(SIGNATUREPUK);
108: }
109:
110: public void setSignaturePUK(String signaturepuk) {
111: data.put(SIGNATUREPUK, signaturepuk);
112: }
113:
114: public int[] getDataTypes(boolean includePUK) {
115: if (includePUK) {
116: return DATATYPESWITHPUK;
117: }
118: return DATATYPESWITHOUTPUK;
119: }
120:
121: public String[] getFieldTexts(boolean includePUK) {
122: if (includePUK) {
123: return FIELDTEXTSWITHPUK;
124: }
125: return FIELDTEXTSWITHOUTPUK;
126: }
127:
128: public String[] getFields(boolean includePUK) {
129: if (includePUK) {
130: return FIELDSWITHPUK;
131: }
132: return FIELDSWITHOUTPUK;
133: }
134:
135: // Private fields.
136: }
|