blob: ac48ba80efb1c3c6b3d390ae72cdc48e5d6d219b (
plain) (
tree)
|
|
package org.uic.barcode.dynamicFrame;
import org.uic.ticket.EncodingFormatException;
import org.uic.ticket.api.utils.UicEncoderUtils;
import net.gcdc.asn1.datatypes.Asn1Optional;
import net.gcdc.asn1.datatypes.CharacterRestriction;
import net.gcdc.asn1.datatypes.IntRange;
import net.gcdc.asn1.datatypes.RestrictedString;
import net.gcdc.asn1.datatypes.Sequence;
import net.gcdc.asn1.datatypesimpl.OctetString;
import net.gcdc.asn1.uper.UperEncoder;
/**
* The Class SignedDataType.
*/
@Sequence
public class Level1DataType {
/**
* The security provider
* numeric codes 1 ...32000
*
* */
@IntRange(minValue=1,maxValue=32000)
@Asn1Optional public Long securityProviderNum;
/** The security provider alphanumeric codes. */
@RestrictedString(CharacterRestriction.IA5String)
@Asn1Optional public String securityProviderIA5;
/** The key id. */
@IntRange(minValue=1,maxValue=99999)
@Asn1Optional public Long keyId;
/** The data. */
public SequenceOfDataType data;
/**
* The key generator algorithms
* Object Identifier of the Algorithm
* Number notation:
*
* e.g.:
* -- DSA SHA224 2.16.840.1.101.3.4.3.1
* -- DSA SHA248 2.16.840.1.101.3.4.3.2
* -- ECC 256 1.2.840.10045.3.1.7
*
*
*/
@RestrictedString(CharacterRestriction.ObjectIdentifier)
@Asn1Optional public String level1KeyAlg;
@RestrictedString(CharacterRestriction.ObjectIdentifier)
@Asn1Optional public String level2KeyAlg;
/**
* The signing algorithm
* Object Identifier of the Algorithms
* Number notation:
*
* e.g.:
* -- DSA SHA224 2.16.840.1.101.3.4.3.1
* -- DSA SHA248 2.16.840.1.101.3.4.3.2
* -- ECC 256 1.2.840.10045.3.1.7
*
*
*/
@RestrictedString(CharacterRestriction.ObjectIdentifier)
@Asn1Optional public String level1SigningAlg;
@RestrictedString(CharacterRestriction.ObjectIdentifier)
@Asn1Optional public String level2SigningAlg;
/** The level 2 public key*/
@Asn1Optional public OctetString level2publicKey;
/**
* Gets the security provider num.
*
* @return the security provider num
*/
public Long getSecurityProviderNum() {
return securityProviderNum;
}
/**
* Sets the security provider num.
*
* in case the security provider code is encoded in IA5 this will return null
*
* @param securityProviderNum the new security provider num
*/
public void setSecurityProviderNum(Long securityProviderNum) {
this.securityProviderNum = securityProviderNum;
}
/**
* Gets the security provider IA5.
*
* in case the security provider code is encoded numerically this will return null
*
* @return the security provider IA5
*/
public String getSecurityProviderIA5() {
return securityProviderIA5;
}
/**
* Sets the security provider
*
* The security provider code must use the IA5 Alphabet .
*
* @param securityProvider the new security provider
* @throws EncodingFormatException the encoding format exception
*/
public void setSecurityProvider(String securityProvider) throws EncodingFormatException {
this.securityProviderNum = UicEncoderUtils.getNum(securityProvider);
this.securityProviderIA5 = UicEncoderUtils.getIA5NonNum(securityProvider);
}
/**
* Gets the security provider.
*
* @return the security provider
*/
public String getSecurityProvider() {
return UicEncoderUtils.mapToString(this.securityProviderNum, this.securityProviderIA5);
}
/**
* Sets the security provider IA 5.
*
* @param securityProviderIA5 the new security provider IA 5
*/
public void setSecurityProviderIA5(String securityProviderIA5) {
this.securityProviderIA5 = securityProviderIA5;
}
public Long getKeyId() {
return keyId;
}
public void setKeyId(Long keyId) {
this.keyId = keyId;
}
public SequenceOfDataType getData() {
return data;
}
public void setData(SequenceOfDataType data) {
this.data = data;
}
public String getLevel2KeyAlg() {
return level2KeyAlg;
}
public void setLevel2KeyAlg(String level2KeyAlg) {
this.level2KeyAlg = level2KeyAlg;
}
public String getLevel1SigningAlg() {
return level1SigningAlg;
}
public void setLevel1SigningAlg(String level1SigningAlg) {
this.level1SigningAlg = level1SigningAlg;
}
public String getLevel2SigningAlg() {
return level2SigningAlg;
}
public void setLevel2SigningAlg(String level2SigningAlg) {
this.level2SigningAlg = level2SigningAlg;
}
public OctetString getLevel2publicKey() {
return level2publicKey;
}
public void setLevel2publicKey(OctetString level2publicKey) {
this.level2publicKey = level2publicKey;
}
public String getLevel1KeyAlg() {
return level1KeyAlg;
}
public void setLevel1KeyAlg(String level1KeyAlg) {
this.level1KeyAlg = level1KeyAlg;
}
/**
* Gets the data for signature.
*
* The byte array containing the ASN.1 PER UNALIGNED encoded data of the DataBlock
*
*
* @return the data for signature
*/
public byte[] encode() {
return UperEncoder.encode(this);
}
}
|